prometheus 监控的部分常用promsql的写法

prometheus监控promsql的常用的几个的写法

监控CPU的使用率

100 - (avg by (instance) (irate(node_cpu{instance="10.3.51.200:9100", mode="idle"}[1m])) * 100)

CPU各个mode的占用率

avg by (instance, mode) (irate(node_cpu{instance="10.3.51.200:9100"}[1m])) * 100

user:cpu花了多少比率运行用户态空间,也就是用户进程占比。用户空间程序是不属于内核的任何进程。
system:CPU花了多少比率运行内核空间。所有进程和系统资源都有liunx内核处理。
iowait:读写磁盘的操作比CPU的运行时间慢,CPU负载处理数据,而数据一般在磁盘上需要读到内存中才能处理。当CPU发起读写操作后,需要等着磁盘驱动器将数据读入内存,从而导致CPU等待一段时间无事可做。CPU处于这种状态的等待时间就是iowait时间。
idle:CPU处于空闲状态的时间比例
irq&softirq:处理器为中断服务的时间。irq用于硬件中断,softirq用于软件中断。
Nice:用户空间进程的CPU的调度优先级,可以通过调整期优先级来调整用户空间的优先级。

机器一分钟的平均负载

node_load1{instance="10.3.51.200:9100"}

内存使用率

100 - ((node_memory_MemFree{instance="10.3.51.200:9100"}+node_memory_Cached{instance="10.3.51.200:9100"}+node_memory_Buffers{instance="10.3.51.200:9100"})/node_memory_MemTotal) * 100

带宽监控
上行带宽

sum by (instance) (irate(node_network_receive_bytes{instance="10.3.51.200:9100",device!~"bond.*?|lo"}[1m])/128)

下行带宽

sum by (instance) (irate(node_network_transmit_bytes{instance="10.3.51.200:9100",device!~"bond.*?|lo"}[1m])/128)

入包量

sum by (instance) (rate(node_network_receive_bytes{instance="10.3.51.200:9100",device!="lo"}[1m]))

出包量

sum by (instance) (rate(node_network_transmit_bytes{instance="10.3.51.200:9100",device!="lo"}[1m]))

磁盘使用率

100 - node_filesystem_free{instance="10.3.51.200:9100",fstype!~"rootfs|selinuxfs|autofs|rpc_pipefs|tmpfs|udev|none|devpts|sysfs|debugfs|fuse.*"} / node_filesystem_size{instance="10.3.51.200:9100",fstype!~"rootfs|selinuxfs|autofs|rpc_pipefs|tmpfs|udev|none|devpts|sysfs|debugfs|fuse.*"} * 100

平均请求数

rate(http_requests_total{instance="10.3.51.200:9100"}[1m])

你可能感兴趣的:(prometheus 监控的部分常用promsql的写法)