1

我不知道如何使用 terraform 从 Cloudwatch Log Insights 部署查询。这支持吗?如果没有,是在路上吗?

具体来说,参考如下查询语法:

FIELDS @message
| PARSE @message "[*] *" as loggingType, loggingMessage
| FILTER loggingType = "ERROR"
| DISPLAY loggingMessage

如此处所述:https ://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html

如何使用资源创建 Cloudwatch 日志过滤器?

4

2 回答 2

0

aws_cloudwatch_query_definition在 AWS 提供商的 v3.35.0 中添加了对的支持。(请参阅 ydaetskcor 的问题链接,现已解决。)

这是文档

于 2021-08-17T03:39:47.950 回答
0

找到了答案。您显然无法部署“已保存的查询”——事实上,我不清楚是否可以调用 UI 中“已保存”的查询。但是有一种方法可以使用Cloudwatch Dashboards来部署它们。

要在新的 Cloudwatch 仪表板中部署查询,请使用aws_cloudwatch_dashboard资源并使用仪表板正文定义仪表板,如下所示。

{
    "widgets": [
        {
            "type": "log",
            "x": 0,
            "y": 0,
            "width": 24,
            "height": 6,
            "properties": {
                "query": "SOURCE 'LogGroup-15028' | SOURCE 'LogGroup-15037' | SOURCE\n'LogGroup-42841' | FIELDS @message\n| PARSE @message \"[*] *\" as loggingType, loggingMessage\n| FILTER loggingType = \"ERROR\"\n| DISPLAY loggingMessage",
                "region": "us-west-2",
                "stacked": false,
                "view": "table"
            }
        }
    ]
}

笔记:

  • 请记住通过在特殊字符前加上反斜杠来转义任何双引号或反斜杠。
  • 要进一步改进仪表板并添加新查询,您可以手动创建 Cloudwatch 仪表板,添加查询和/或指标图,然后使用“查看/编辑源...”选项来抓取仪表板源文本。
于 2020-05-18T01:20:39.300 回答