在 AWS Log Insights 图中将空容器显示为零值
Display empty bin as a zero value in AWS Log Insights graph
通过 bin 进行此计数查询:
filter @message like / error /
| stats count() as exceptionCount by bin(30m)
我得到一个不连续的图,很难理解:
AWS Cloudwatch Log Insights 是否可以将空 bin 视为零计数以获得连续图?
在寻找我自己的答案时找到了你的问题。
我想出的最好办法是计算一个 'presence' 字段,然后使用总和在时间段中得到 0。
我使用了 strcontains,returns 匹配时为 1,不匹配时为 0。 https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html#CWL_QuerySyntax-operations-functions
我的看起来像这样:
fields @timestamp, @message
| fields strcontains(@message, 'Exit status 1') as is_exit_message
| stats sum(is_exit_message) as is_exit_message_count by bin(15m) as time_of_crash
| sort time_of_crash desc
那么,你的将是:
fields strcontains(@message, 'error') as is_error
| stats sum(is_error) as exceptionCount by bin(30m)
使用strcontains + sum
或parse + count
。
关键是没有使用filter
。您应该查询所有日志。
通过 bin 进行此计数查询:
filter @message like / error /
| stats count() as exceptionCount by bin(30m)
我得到一个不连续的图,很难理解:
AWS Cloudwatch Log Insights 是否可以将空 bin 视为零计数以获得连续图?
在寻找我自己的答案时找到了你的问题。
我想出的最好办法是计算一个 'presence' 字段,然后使用总和在时间段中得到 0。
我使用了 strcontains,returns 匹配时为 1,不匹配时为 0。 https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html#CWL_QuerySyntax-operations-functions
我的看起来像这样:
fields @timestamp, @message
| fields strcontains(@message, 'Exit status 1') as is_exit_message
| stats sum(is_exit_message) as is_exit_message_count by bin(15m) as time_of_crash
| sort time_of_crash desc
那么,你的将是:
fields strcontains(@message, 'error') as is_error
| stats sum(is_error) as exceptionCount by bin(30m)
使用strcontains + sum
或parse + count
。
关键是没有使用filter
。您应该查询所有日志。