本文主要是介绍常用PromQL语句,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
常用PromQL语句
- 1. 查询CPU使用率:
- 2. 查询内存使用率:
- 3. 查询磁盘使用率:
- 4. 查询网络带宽使用率:
- 5. 查询数据库连接数:
- 6. 查询HTTP请求响应时间:
- 7. 查询日志错误数量:
- 8. 查询系统负载:
- 9. 查询磁盘I/O使用率:
- 10. 查询网络流量:
- 11. 查询数据库慢查询数量:
- 12. 查询HTTP请求错误率:
以下是一些在运维监控中可能会用到的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得到错误率。
这篇关于常用PromQL语句的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!