当普罗米修斯警报管理器发出警报时,特别是当我的磁盘已满时,我想知道磁盘的大小以及磁盘上剩余的空间。我正在尝试向警报描述中添加模板查询,我有以下警报规则
- alert: Disk_space_80_percent_full
expr: |
100 - ((node_filesystem_avail{device=~"/dev/nvme.+|/dev/xvd.+"} * 100 ) / node_filesystem_size{device=~"/dev/nvme.+|/dev/xvd.+"}) > 80
for: 5m
labels:
alert_policy: "warning"
alert_receiver: "slack"
annotations:
summary: "Disk space is above 80% full"
description: |
"
available = {{ printf `node_filesystem_avail{instance="%s",device=~"/dev/nvme.+|/dev/xvd.+"}` $labels.instance | query | first }}
disk size = {{ printf `node_filesystem_size{instance="%s",device=~"/dev/nvme.+|/dev/xvd.+"}` $labels.instance | query | first }}
"
然而,这并没有给我想要的结果。它返回的是看起来像元组的东西
{
map[
_name__:node_filesystem_size
device:/dev/nvme0n1p1
env:dev
fstype:ext4
instance:<redacted>
mountpoint:/
]
1.040835129344e+12
}
我真正想要的是最后一个值
1.040835129344e+12
如何重构查询以仅显示该值。