Для журналов, отправляемых в AWS cloudwatch-logs, я хочу создать метрический фильтр, отделяющий числовое поле от шаблона сопоставления журналов.Таким образом, согласно документации существует [w1=word_pattern1||word_pattern2, w2, ...]
подобное выражение для получения полей (на основе разделителя / разделителя пробелов).Но у моих журналов есть некоторые другие разделители, такие как :
или ,
.Так есть ли способ синтаксического анализа таких полей с использованием некоторого шаблона регулярных выражений.
образец журнала журнала: date-time:action:filename:status
например
2018-11-02 12:23:00:delete-file:filename-20180709:done
или как
2018-11-02 12:23:00, deleting-file filename-20180709 done
Я могу проанализировать строку журнала для кода файла с помощью регулярного выражения grok, например:
(?<date>[\w-]+ [\w:]+), (?<action>\w+-\w+) filename-(?<file-code>\d{8}) \w+
, но я не могу найти эквивалент для метрического фильтра.Возможно ли это?