У меня есть шаблон журналов, которые содержат производительность и статистические данные.Я настроил LogStash для разбора этих данных в формате CSV, чтобы сохранить значения в ES.
<1>,www1,3,BISTATS,SCAN,330,712.6,2035,17.3,221.4,656.3
Я использую следующий фильтр LogSTash и получаю желаемые результаты ..
grok {
match => { "Message" => "\A<%{POSINT:priority}>,%{DATA:pan_host},%{DATA:pan_serial_number},%{DATA:pan_type},%{GREEDYDATA:message}\z" }
overwrite => [ "Message" ]
}
csv {
separator => ","
columns => ["pan_scan","pf01","pf02","pf03","kk04","uy05","xd06"]
}
В настоящее время это работает хорошо для меня, пока порядок столбцов не испорчен.
Однако я хочу сделать этот файл журнала более значимым и иметь каждое имя столбца в исходном журнале.пример-- <1>,www1,30000,BISTATS,SCAN,pf01=330,pf02=712.6,pf03=2035,kk04=17.3,uy05=221.4,xd06=656.3
Таким образом, я могу продолжать вставлять или добавлять ключи / значения в середине процесса, не повреждая данные.(С использованием LogStash5.3)