指标图表101 - 时序图

avatar

file

前言

本系列是对 www.datadoghq.com/blog/timese… 的翻译,介绍可视化领域的一些实用理念。

正文

这是关于可视化监控数据系列文章的第一篇。本篇文章聚焦于时间序列图表。

可观测性不仅仅是拥有监控数据——这些数据必须易于获取和解释。为数据选择合适的可视化表达是提供系统健康和性能的可读性表示的重要部分。没有一刀切的解决方案:使用不同的图表类型可以从相同的指标中看到不同的内容。

为了帮助你有效地可视化你的指标,本篇文章探讨了四种不同的时间序列图,这些图在x轴上表示时间,在y轴上表示指标值:

  • 线性图表
  • 堆叠面积图
  • 柱状图
  • 热图

对于每种图表类型,我们将解释其工作原理、何时使用它,以及何时使用其他类型。

线性图表

file 线性图是将指标数据转换为可视化的最简单方法,但通常它们被默认使用,当事实上有其他图表更为合适时也是如此。例如,来自数百个主机的剧烈波动的指标容易变得像钢丝绒一样缠绕不清。从这样的图表中几乎不可能得出任何有用的结论。

何时使用线性图表

情形目的示例
不同范围报告的相同指标一目了然地找到异常值集群中每个主机的空闲CPUfile
追踪单一来源或聚合的单一指标清楚地传达关键指标随时间的演变所有Web服务器的中值响应时间file
来自特定基础设施切片的未聚合值特别有价值的指标找到个体偏离不可接受范围每个数据库节点的磁盘利用率file
共享相同单位的相关指标找到系统内的相关性同一台机器上的磁盘读写延迟file
有明确可接受领域的指标轻松找到不可接受的降级处理Web请求的延迟file

何时使用其他类型

情形示例使用其他类型...
来自大量来源的高度可变指标所有主机的CPU使用率file使用热图使噪音数据更具可解释性file
更适合作为聚合结果而非独立数据点的指标数十个Web服务器每秒请求数file使用堆叠面积图对标记组进行聚合file
通常为零的指标跟踪相对稀少的S3访问错误的指标file使用柱状图避免跳跃性插值file

堆叠面积图

file 面积图类似于线性图,只不过指标值用二维区域带表示,而不是线条。多个时间序列可以简单地通过堆叠这些区域带相加,但过多的区域带会使图表难以理解。如果每个带状只有一两个像素高,所传达的信息是微不足道的。

何时使用堆叠面积图

情形目的示例
来自不同范围的相同指标,堆叠显示一目了然地查看总和及其每部分的贡献每个可用区的负载均衡器请求数file
相同单位的补充指标相加查看有限资源的利用情况CPU利用率指标(用户、系统、空闲等)file

何时使用其他类型

情形示例使用其他类型...
来自大量主机的未聚合指标,使得切片过薄,毫无意义数百个应用服务器的吞吐量指标file使用线性图或实体颜色面积图跟踪总的聚合值file 热图跟踪主机级数据file
不能合理相加的指标多个服务器的系统负载file使用线性图,或对于大量主机使用热图file

柱状图

file 在柱状图中,每个柱代表一个时间间隔内的指标汇总值。这个特性使柱状图非常适合表示计数。与表示瞬时值的量表(gauge)指标不同,计数指标只有在与时间间隔配对时才有意义(例如,过去五分钟内有13个服务器错误)。

柱状图不需要插值来连接一个间隔到下一个,使得它们尤其适合表示稀疏的指标。像面积图一样,柱状图天然能够容纳指标的堆叠和求和。

何时使用柱状图

情形目的示例
稀疏指标(如跟踪罕见事件的指标)传达指标值,不出现跳跃或误导性插值Cassandra内部队列中的被阻塞任务file
代表计数的指标(而不是量表)传达总数和相应的时间间隔按数据中心(4小时间隔)失败的作业file

何时使用其他类型

情形示例使用其他类型...
不能合理相加的指标每个负载均衡器的平均延迟file使用线性图隔离每个主机的时间序列file
来自大量来源的未聚合指标,使得切片过薄,毫无意义数十个Cassandra节点的已完成任务file使用实体颜色柱形图跟踪总的聚合指标值file 热图跟踪主机级数据file

热图

file 热图显示特定时间切片内的指标值分布。具体地说,每列代表特定时间切片内的值分布。每个单元格的阴影对应在特定时间内报告特定值的实体数量。

热图本质上是分布图,但热图显示的是随时间变化的分布,而分布图是某一窗口时间的快照。分布图将在系列文章的第二部分中介绍。

何时使用热图

情形目的示例
单个由大量组报告的指标传达总体趋势每个主机的Web延迟file
看到群组成员的瞬时变化每个主机收到的请求数file

何时使用其他类型

情形示例使用其他类型...
来自少量个体来源的指标少量RDS实例的CPU利用率file使用线性图隔离每个主机的时间序列file
更重要的是单个值的指标每个Cassandra列族的磁盘利用率file使用面积图对标记集的值进行求和file

结论

通过了解每种时间序列图的理想用途和局限性,可以更清楚地展示指标中的可操作信息,从而提供对系统的可观测性。

在系列文章的下一篇中,我们将探讨其他方法来绘图和监控指标,包括变化图、排序列表、分布图和其他可视化方式。