Prometheus提供了一组管理API来促进自动化和集成。
如果prometheus设置了用户名密码请在 curl 后面加上 -u admin
健康检查
curl -u admin -X GET http://localhost:9090/-/healthy
curl -u admin -I http://localhost:9090/-/healthy
此端点始终返回200,应该用于检查Prometheus的健康状况。
就绪检查
curl -u admin -X GET http://localhost:9090/-/ready
curl -u admin -I http://localhost:9090/-/ready
当Prometheus准备好服务流量(即响应查询)时,此端点返回200。
重新加载
curl -u admin -X PUT http://localhost:9090/-/reload
curl -u admin -X POST http://localhost:9090/-/reload
此端点触发Prometheus配置和规则文件的重新加载。默认情况下它是禁用的,可以通过–web.enable-lifecycle 配置。
或者,可以通过向Prometheus进程发送SIGHUP来触发配置重新加载。
例如:kill SIGSPEC or SIGNUM <进程号>
停止运行
curl -u admin -X PUT http://localhost:9090/-/quit
curl -u admin -X POST http://localhost:9090/-/quit
这个端点触发了普罗米修斯的正常关机。默认情况下它是禁用的,可以通过–web.enable-lifecycle配置。
或者,可以通过向Prometheus进程发送SIGTERM来触发配置重新加载。
例如: kill SIGTERM <进程号>
说明:
“kill SIGSPEC”、“kill SIGHUP” 和 “kill SIGNUM” 是在类Unix操作系统中使用的命令,用于向进程发送信号。这里是这三个示例之间的区别:
-
“kill SIGSPEC”:在这种情况下,“SIGSPEC” 是一个特定的信号名称,比如 “SIGTERM” 或 “SIGKILL”。使用信号名称可以向进程发送特定的信号。例如,“kill SIGTERM” 发送终止信号给进程,请求其优雅地退出。
-
“kill SIGHUP”: “SIGHUP” 是一个特定的信号名称,代表"挂起"。在历史上,当控制终端关闭时,该信号被发送给进程。现在,它常常被用于指示守护进程或后台进程重新加载其配置文件。
-
“kill SIGNUM”: “SIGNUM” 代表信号编号,比如 1 表示 “SIGHUP”,9 表示 “SIGKILL”,15 表示 “SIGTERM”。使用信号编号可以直接指定信号,而无需引用其名称。