Grafana 教程

状态时间线( State timeline)

状态时间线(State timeline)显示离散状态随时间的变化,每个字段或系列都以其独特的水平带呈现。状态区域可以有值或无值显示。这种可视化方式适用于字符串或布尔状态,但也可用于时间序列。与时间序列一起使用时,阈值用于将数值转化为离散的状态区域。如下图:

76d673c04a1c36942ad41918241de598_state_timeline_strings.png

一个示例

该示例使用 mysql 作为数据源,假如我们有如下表格数据:

image.png

该表对应的 SQL 语句如下:

CREATE TABLE `state_timeline_data` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `time` bigint(20) NOT NULL,
  `value1` int(11) DEFAULT NULL,
  `value2` int(11) DEFAULT NULL,
  `value3` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
);

对应的数据 SQL 语句如下:

INSERT INTO `grafana`.`state_timeline_data` (`time`, `value1`, `value2`, `value3`) VALUES (1683393600, 3, 1, 5),
(1683213600, 4, 3, 4),(1683453600, 3, 5, 2),(1683093600, 3, 3, 2),(1683093600, 5, 2, 5),(1683513600, 5, 2, 2),
(1683333600, 3, 3, 5),(1683333600, 5, 3, 5),(1683153600, 5, 3, 1),(1683333600, 3, 3, 1),(1683273600, 3, 1, 5),
(1683333600, 5, 3, 4),(1683333600, 5, 5, 5),(1683453600, 5, 4, 2),(1683033600, 1, 2, 4),(1683393600, 3, 5, 4),
(1683093600, 4, 1, 1),(1683273600, 2, 1, 4),(1683333600, 3, 1, 5),(1683153600, 3, 4, 1),(1683093600, 1, 4, 3),
(1683333600, 3, 2, 5),(1683393600, 1, 4, 2),(1683153600, 3, 1, 4),(1683453600, 5, 4, 3),(1682973600, 5, 2, 5),
(1683273600, 4, 4, 3),(1683273600, 1, 2, 2),(1683153600, 5, 2, 2),(1683513600, 5, 1, 3);

打开 Grafana,创建状态时间线(state timeline),将下面 SQL 作为图表的数据来源:

select `time`, `value1`, `value2`, `value3` from `grafana`.`state_timeline_data` order by time desc

最后,点击“image.png”按钮,查询数据,渲染状态时间线图表,效果如下图:

image.png

更多关于状态时间线的配置继续向下阅读……

State timeline options(状态时间线选项)

image.png

使用这些选项来完善状态时间线的可视化效果。

Merge equal consecutive values(合并相同的连续值)

控制 Grafana 是否合并相邻的相同值。

Show values(显示值)

image.png

控制是否在状态区域内显示值。如果有足够的空间,会自动显示值。

  • Auto 自动计算显示

  • Always 总是显示

  • Never 从不显示

image.png

Align values(对齐值)

image.png

控制状态区域内值的对齐方式。取值:

  • Left 居左显示

  • Center 居中显示

  • Right 居右显示

image.png

Row height(行高)

控制行与行之间的空间大小。1 = 无空格 = 0.5 = 50% 空格。

image.png

Line width(行宽)

控制状态区域的行宽。

Fill opacity(填充不透明度)

控制状态区域的不透明度。

Connect null values(连接空值)

image.png

image.png

选择空值(即数据中的间隙)在图表中的显示方式。空值可以连接成一条连续的线,也可以设置一个阈值,超过该阈值,数据中的空隙就不再连接。取值如下:

  • Never 数据中存在间隙的时间序列数据点永不连接。

  • Always 数据中有间隙的时间序列数据点始终相连。

  • Threshold 指定一个阈值,超过该阈值,数据中的间隙不再连接。当数据中已连接的间隙大小已知和/或在已知范围内,且超出此范围的间隙不应再连接时,这可能很有用。

Disconnect values(断开值的连接)

image.png

image.png

选择是否设置一个阈值,超过该阈值,数据中的值就会断开连接。取值如下:

  • Never 数据中的时间序列数据点永远不会断开连接。

  • Threshold 指定一个阈值,超过该阈值,数据中的值将断开连接。当数据中的所需值具有已知大小和/或在已知范围内,且超出此范围的值不应再连接时,这一点非常有用。

Value mappings(值映射)

要为布尔值或字符串值指定颜色,可以使用值映射。

d727af244ff756e76ec11ba18987b751_value_mappings_side_editor.png

Time series data with thresholds(带阈值的时间序列数据)

可视化还可用于时间序列数据。在这种情况下,阈值用于将时间序列转化为离散的彩色状态区域。

852aaf5deb43a6d7a4b2ca695e6c06d1_state_timeline_time_series.png

Legend options(图例选项)

启用图例选项后,可以显示值映射或阈值括号。要在图例中显示值映射,必须将颜色方案中的 "Color scheme" 设置为 "Single color" 或 "Classic palette"。要在图例中显示阈值括号,则需将色彩方案设置为 "From thresholds"。

Legend mode(图例模式)

使用这些设置可定义图例在可视化中的显示方式。取值如下:

  • List - 以列表形式显示图例,这是图例的默认显示模式。

  • Table - 以表格形式显示图例。

  • Hidden - 隐藏图例。

Legend placement(图例放置)

选择显示图例的位置。

  • Bottom - 图表下方。

  • Right - 图表右侧。

Legend values(图例值)

选择要在图例中显示的标准计算值,可以有多个。

说说我的看法
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号