【问题标题】:AWS Cloudwatch metric filteringAWS Cloudwatch 指标过滤
【发布时间】:2016-02-29 20:13:13
【问题描述】:

在 AWS Cloudwatch 中,我想从我的日志数据中提取一个值。但是该值在消息字段中。无论如何我可以获取最后一个空格分隔的值并记录它吗?

即我的日志流:

{"timestamp": 145674445, "message": "Starting new HTTP connection (1): XXXX", "severity": "INFO", "module": "connectionpool", "stack": []}
{"timestamp": 145676445, "message": "Starting new HTTP connection (1): XXXX", "severity": "INFO", "module": "connectionpool", "stack": []}
{"timestamp": 145676445, "message": "deactivated campaign: XXXX05XXXX554aaXXXX9069d4XXXXe7, runtime: 2.63", "severity": "INFO", "module": "credentials", "stack": []}

对于最后一个日志,我想过滤类似

的模式
{($.message ="deactivated campaign:*, runtime: *")}

我希望能够让我记录的度量值是 2.63,或者最后一个空格分隔的字符串。

我正在为此使用 GUI,但无法找到解决方法。是否可以?

非常感谢您提前提供任何帮助!

【问题讨论】:

    标签: amazon-web-services logging amazon-cloudwatch cloudwatch


    【解决方案1】:

    http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/FilterAndPatternSyntax.html

    类似的东西(还没有测试过,但是类似的东西):

    metricFilter: { $.message = "deactivated campaign:*" } metricValue: $.runtime
    

    【讨论】:

    • 这不起作用,因为 runtime 不是 JSON 输入中的文件;它是 message 字段的子字段(因为没有更好的词)。
    猜你喜欢
    • 2023-02-15
    • 1970-01-01
    • 2021-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多