![47ce58b9173ceece0c7fac9d3712e61c.png](https://img-blog.csdnimg.cn/img_convert/47ce58b9173ceece0c7fac9d3712e61c.png)
这个是我一直不想写的,嫌麻烦。还有就是这么多大神,我还差得远,不过是为了通过输出更好的理解这些知识。
介绍
Prometheus 是一个时序数据库,可以存储它通过 exporters 抓取回来的监控数据。那这些数据怎么去查询呢?比如MySQL有SQL语句,那Prometheus有啥呢?PromQL (Prometheus Query Language) ,这是Prometheus开发的数据查询DSL语言,日常的可视化以及告警规则都要用到它。这个很重要,一定得好好学一下。
举个例子
浏览器打开Prometheus的web界面,http://localhost:9090/graph
。可以看到有个输入框, 就是输 PromQL语句的地方,下方有个 Execute 按钮。
先拿Nginx的指标举个例子,Nginx如何监控,请查看我之前的文章Prometheus监控nginx
查看一台Nginx的活跃连接数,即active指标,如何看呢?
在服务器上查看完整的指标语句是:
[wonders@node1 ~]$ curl http://172.18.11.192:9145/metrics
# HELP nginx_http_connections Number of HTTP connections
# TYPE nginx_http_connections gauge
nginx_http_connections{state="active"} 1349
nginx_http_connections{state="reading"} 0
nginx_http_connections{state="waiting"} 1341
nginx_http_connections{state="writing"} 5
......
那我只想看 active 怎么办呢?在输 PromQL 语句的地方输入
nginx_http_connections{state="active"}
会输出所有Nginx机器的 active