Prometheus 教程

Prometheus 简单使用

启动 Prometheus

如果你要使用新创建的配置文件启动 Prometheus,请切换到包含 Prometheus 二进制文件的目录并运行如下命令:

./prometheus --config.file=prometheus.yml

如果不出意外,Prometheus 就会启动成功。你可以使用浏览器访问 http://localhost:9090 地址,会看见如下界面:

Prometheus 简单使用

请稍等,给 Prometheus 大约 30 秒的时间,让它从自己的 HTTP 指标端点收集有关自身的指标数据。

您还可以通过导航至其自身的指标端点 http://localhost:9090/metrics 来验证 Prometheus 是否正在提供有关自身的指标数据。如果 Prometheus 启动无误,你将会看见如下界面:

Prometheus 简单使用

上图中就是 Prometheus 提供的关于自身健康状态的监控数据。

使用表达式浏览器

上面已经将 Prometheus 正常启动,且看见了它的指标数据,但是,这些指标数据都是文本形式提供,不方便我们查看。下面让我们试着查看 Prometheus 收集到的一些有关自身的数据。

此时,需要用到 Prometheus 内置的表达式浏览器,请访问 http://localhost:9090/graph 并选择 "Table" 选项卡:

Prometheus 简单使用

然后,在搜索图标输入框中输入“promhttp_metric_handler_requests_total”,点击“Execute”按钮,获取 promhttp_metric_handler_requests_total(Prometheus 服务器提供的 /metrics 请求总数)的指标数据:

Prometheus 简单使用

从上图可知,它返回多个不同的时间序列(以及每个序列记录的最新值),所有指标名称均为 promhttp_metric_handler_requests_total,但标签各不相同。这些标签表示不同的请求状态。如果我们只对 HTTP 代码为 200 的请求感兴趣,就可以使用此查询来检索该信息:

promhttp_metric_handler_requests_total{code="200"}

效果如下图:

Prometheus 简单使用

如果要计算返回时间序列的数量,可以这样写:

count(promhttp_metric_handler_requests_total)

效果如下图:

Prometheus 简单使用

有关表达式语言的更多信息,请参见表达式语言文档

使用图形界面

上面展示了如何通过表达式浏览器查看单个指标数据,如果要绘制表达式图表,请访问 http://localhost:9090/graph 并使用 "Graph" 选项卡。

例如:输入以下表达式,以绘制自抓取 Prometheus 中每秒返回状态代码 200 的 HTTP 请求率:

rate(promhttp_metric_handler_requests_total{code="200"}[1m])

效果如下图:

Prometheus 简单使用

监控其他目标

上面示例仅仅从 Prometheus 收集指标数据,这并不能很好地体现 Prometheus 的功能。要想更好地了解 Prometheus 的功能,我们建议浏览有关其他 Exporter 程序的文档。例如使用 node exporter 监控 Linux 或 macOS 主机指标指南就是一个很好的开始。

访问 https://prometheus.io/docs/instrumenting/exporters/ 地址查看 Prometheus 官方提供的 Exporter,包含 MySQL、Redis、RabbitMQ、Linux、Windows 等等。关于什么是 Exporter,以及如何使用 Exporter 将在后续章节细说。

说说我的看法
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号