使用正则表达式过滤器作为 aws cloudwatch 日志指标过滤器

v_s*_*ukt 6 regex logging parsing amazon-cloudwatchlogs

对于发送到 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
Run Code Online (Sandbox Code Playgroud)

或喜欢

2018-11-02 12:23:00, deleting-file filename-20180709 done
Run Code Online (Sandbox Code Playgroud)

我可以使用 grok regex 解析文件代码的日志行,例如:

(?<date>[\w-]+ [\w:]+), (?<action>\w+-\w+) filename-(?<file-code>\d{8}) \w+
Run Code Online (Sandbox Code Playgroud)

但我找不到公制过滤器的任何等效项。是否可以?

Dan*_*llo 5

我曾经在构建 CloudWatch Logs 的团队中工作。在撰写本文时,指标过滤器不支持正则表达式。