xxj*_*jnn 1 amazon-web-services aws-cloudwatch-log-insights
如何使用 AWS Cloudwatch Log Insights 的替换功能?
该文档没有给出工作示例。
给定包含路径的日志,例如/api/lumberjack/123/axe/456/fashion
我在尝试:
fields message
| parse message "path=* " as path
| fields replace(path, /[0123456789]+/, 'ID') as uniqpath
| stats count(*) by uniqpath
Run Code Online (Sandbox Code Playgroud)
我期望的结果如下:
uniqpath | count
/api/lumberjack/ID/axe/ID/fashion | 12
/api/lumberjack/ID/beardedness | 44
Run Code Online (Sandbox Code Playgroud)
但它却抱怨“无效的参数,收到:(路径)但预期:(str:字符串,searchValue:字符串,replaceValue:字符串)”
该replace函数接受字段作为第一个参数的输入。
不支持的是第二个论点。您正在传递一个不被识别为字符串的正则表达式。
我还没有找到将正则表达式转换为字符串的方法。但至少您可以传递path第一个参数的字段名称。我已经测试过它更改普通字符串的正则表达式。
询问:
fields @message
| parse @message "path=*" as path
| fields replace(path, 'lumberjack', 'ID') as uniqpath
| stats count(*) by uniqpath
Run Code Online (Sandbox Code Playgroud)
结果:
| 归档时间: |
|
| 查看次数: |
5660 次 |
| 最近记录: |