常用PromQL语句


以下是一些在运维监控中可能会用到的PromQL语句:

1. 查询CPU使用率:

100 - (avg by(instance) (irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)

这个语句用于计算每个实例的CPU使用率。它首先获取每个实例的CPU空闲时间,然后计算5分钟内的平均空闲时间速率,最后用100减去空闲时间速率乘以100得到CPU使用率。

2. 查询内存使用率:

(node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes) / node_memory_MemTotal_bytes * 100

这个语句用于计算内存使用率。它首先获取总内存和可用内存,然后用总内存减去可用内存得到已使用的内存量,最后将已使用的内存量除以总内存并乘以100得到内存使用率。

3. 查询磁盘使用率:

(node_filesystem_size_bytes{fstype!~"tmpfs|overlay"} - node_filesystem_avail_bytes{fstype!~"tmpfs|overlay"}) / node_filesystem_size_bytes{fstype!~"tmpfs|overlay"} * 100

这个语句用于计算磁盘使用率。它首先获取非临时文件系统(tmpfs和overlay)的总大小和可用大小,然后用总大小减去可用大小得到已使用的磁盘空间量,最后将已使用的磁盘空间量除以总大小并乘以100得到磁盘使用率。

4. 查询网络带宽使用率:

sum(rate(node_network_receive_bytes_total[5m])) / sum(rate(node_network_transmit_bytes_total[5m])) * 100

这个语句用于计算网络带宽使用率。它首先获取5分钟内接收和发送的字节数,然后计算接收和发送速率,最后将接收速率除以发送速率并乘以100得到网络带宽使用率。

5. 查询数据库连接数:

sum(rate(node_database_connections{state="active"}[5m]))

这个语句用于计算数据库的活动连接数。它首先获取5分钟内活动连接的数量,然后计算速率,最后得到活动连接数。

6. 查询HTTP请求响应时间:

histogram_quantile(0.95, sum(rate(http_request_duration_seconds_bucket[5m])) by (le)) / 1000

这个语句用于计算HTTP请求的95%分位数响应时间。它首先获取5分钟内每个响应时间的桶中的请求数量,然后计算速率,最后得到95%分位数响应时间。

7. 查询日志错误数量:

sum(rate(log_messages_total{level="error"}[5m]))

这个语句用于计算5分钟内的错误日志数量。它首先获取5分钟内错误级别的日志数量,然后计算速率,最后得到错误日志数量。

8. 查询系统负载:

node_load1 / count(count without (cpu, mode) (node_cpu_seconds_total{mode="idle"}))

这个语句用于计算系统负载。它首先获取CPU空闲时间,然后用总CPU数量除以空闲CPU数量得到系统负载。

9. 查询磁盘I/O使用率:

sum(rate(node_disk_io_time_seconds_total[5m])) / sum(rate(node_disk_io_time_weighted_seconds_total[5m])) * 100

这个语句用于计算磁盘I/O使用率。它首先获取5分钟内的磁盘I/O时间和加权时间,然后计算速率,最后将I/O时间速率除以加权时间速率并乘以100得到磁盘I/O使用率。

10. 查询网络流量:

sum(rate(node_network_receive_bytes_total[5m])) + sum(rate(node_network_transmit_bytes_total[5m]))

这个语句用于计算5分钟内的网络流量。它首先获取接收和发送的字节数,然后计算速率,最后将接收速率和发送速率相加得到网络流量。

11. 查询数据库慢查询数量:

sum(rate(node_database_slow_queries_total[5m]))

这个语句用于计算5分钟内的慢查询数量。它首先获取5分钟内慢查询的数量,然后计算速率,最后得到慢查询数量。

12. 查询HTTP请求错误率:

sum(rate(http_requests_total{status_code=~"5.."}[5m])) / sum(rate(http_requests_total[5m])) * 100

这个语句用于计算HTTP请求的错误率。它首先获取5分钟内状态码为5xx的请求数量和总请求数量,然后计算速率,最后将错误请求速率除以总请求速率并乘以100得到错误率。

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SmallFatMan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值