Попытка использовать фильтры logstash grok (oniguruma regex) для фильтрации некоторых журналов.Для записи в журнале, которая выглядит следующим образом:
2019-03-24 17:57:14,202 p=19455 u=root | TASK [this is the task name msg=Debug message] ************************
Я написал этот фильтр:
%{DATE:date}\s%{TIME:time}\sp=(?<id>[\d]+)\su=(?<user>[\w]+)\s\|\s*TASK\s*\[(?<task>[^=]*)
Сложность для меня заключается в том, что мне нужно точно подобрать метку «задачи»это: «это имя задачи».В настоящее время "задача" соответствует "" это имя задачи msg ". И, конечно, это только пример, а сами слова меняются от примера к примеру.
Это журнал журнала, который дляпо какой-то причине смешивается имя задачи и сами задачи в одной строке журнала и используются только пробелы для их разделения. Во всех случаях я знаю, что имя задачи завершено и детали задачи отображаются из-за символа "=".
Поэтому мне нужно будет сопоставить, пока не будет найдено "=", а затем отменить слово за ним, в данном случае это "msg" (в зависимости от задачи это слово также может измениться).
Есть идеи, как этого добиться? Спасибо!