stats
使用 stats
创建日志数据的可视化效果,例如条形图、折线图和堆叠面积图。这可以帮助您更有效地识别日志数据中的模式。CloudWatch Logs Insights 为使用 stats
函数以及一个或多个聚合函数的查询生成可视化效果。
例如,Route 53 日志组中的以下查询返回按查询类型显示 Route 53 记录每小时分布的可视化结果。
stats count(*) by queryType, bin(1h)
所有此类查询都可以生成条形图。如果查询使用 bin()
函数,按一个字段对数据随时间的变化进行分组,您还可以查看折线图和堆叠面积图。
可视化时间序列数据
时间序列可视化适用于具有以下特征的查询:
-
此查询包含一个或多个聚合函数。有关更多信息,请参阅Aggregation Functions in the Stats Command。
-
此查询使用
bin()
函数按一个字段对数据分组。
这些查询可以生成折线图、堆叠面积图、条形图和饼图。
示例
有关完整的教程,请参阅教程:运行生成时间序列可视化的查询。
以下是更多适用于时间序列可视化的示例查询。
以下查询将生成 myfield1
字段的平均值的可视化(每 5 分钟创建一个数据点)。每个数据点都是前一个五分钟的日志中的 myfield1
值的平均值的聚合。
stats avg(myfield1) by bin(5m)
以下查询根据不同字段生成三个值的可视化(每 5 分钟创建一个数据点)。由于查询包含聚合函数并使用 bin()
作为分组字段,因此生成了可视化。
stats avg(myfield1), min(myfield2), max(myfield3) by bin(5m)
折线图和堆叠面积图限制
如果查询聚合日志条目信息但不使用 bin()
函数,则可以生成条形图。但是,这种查询无法生成折线图或堆叠面积图。有关这些查询类型的更多信息,请参阅可视化按字段分组的日志数据。
可视化按字段分组的日志数据
您可以为使用 stats
函数以及一个或多个聚合函数的查询生成条形图。有关更多信息,请参阅Aggregation Functions in the Stats Command。
要查看可视化,请运行查询。接下来,选择 Visualization(可视化)选项卡,选择 Line(折线图)旁边的箭头,然后选择 Bar(条形图)。在条形图中,可视化限制为最多 100 个条形。
示例
有关完整的教程,请参阅教程:运行生成按日志字段分组的可视化的查询。以下部分包括更多适用于按字段可视化的示例查询。
以下 VPC 流日志查询针对每个目标地址,查找每个会话所传输的平均字节数。
stats avg(bytes) by dstAddr
您还可以生成每个结果值包含多个条形图的图表。例如,以下 VPC 流日志查询针对每个目标地址,查找每个会话所传输的平均字节数和最大字节数。
stats avg(bytes), max(bytes) by dstAddr
以下查询为每个查询类型查找 Amazon Route 53 查询日志的数量。
stats count(*) by queryType
用于统计数据的函数
CloudWatch Logs Insights 支持统计聚合函数和统计非聚合函数。
在 stats
命令中使用统计聚合函数,并将其用作其他函数的参数。
函数 | 结果类型 | 描述 |
---|---|---|
|
number |
指定的字段中值的平均值。 |
|
number |
计算日志事件的数量。 |
|
number |
返回字段的唯一值的数量。如果字段具有非常高的基数(包含许多唯一值),则 |
|
LogFieldValue |
所查询的日志中此日志字段的值的最大值。 |
|
LogFieldValue |
所查询的日志中此日志字段的值的最小值。 |
|
LogFieldValue |
百分位数指示某个值在数据集中的相对位置。例如, |
|
number |
指定的字段中值的标准偏差。 |
|
number |
指定的字段中值的总和。 |
统计非聚合函数
在 stats
命令中使用非聚合函数并将其用作其他函数的参数。
函数 | 结果类型 | 描述 |
---|---|---|
|
LogField |
从查询的日志中具有最早时间戳的日志事件返回 |
|
LogField |
从查询的日志中具有最晚时间戳的日志事件返回 |
|
LogField |
返回在查询的日志中排在第一位的 |
|
LogField |
返回在查询的日志中排在最后一位的 |