Шаблон Logstash Grok, чтобы вырезать разделить строку и удалить последнюю часть - PullRequest
0 голосов
/ 14 марта 2019

Ниже приведено поле, в котором указан путь к файлу журнала, который мне нужно разделить с помощью разделителя '/' и удалить имя файла журнала в тексте.

"source" : "/var/log/test/testapp/c.log"

Мне нужна только эта часть

"newfield" : "/var/log/test/testapp"

1 Ответ

1 голос
/ 14 марта 2019

Если вы проведете небольшое исследование, вы обнаружите, что это тривиальный вопрос, и он не так сложен. Вы можете использовать grok-patterns, чтобы сопоставить интересные части и отличить ту, которую вы хотите получить, от той, которую вы не хотите.

Шаблон, подобный этому, будет соответствовать ожидаемому, имея newfield по вашему желанию:

%{GREEDYDATA:newfield}(/%{DATA}.log)

В любом случае, вы можете протестировать свои шаблоны Grok с помощью этого инструмента , и здесь у вас есть несколько полезных grok-pattern . Я рекомендую вам взглянуть на эти ресурсы.

...