api - Rundeck : 如何查看 Rundeck 健康状况?
问题描述
我们在生产 rundeck 中有一些工作,由于其他应用程序正在运行和限制 CPU,rundeck 有时会变慢,有时会延迟几乎死,但 rundeckd 进程仍将运行。我想设置 cron(我知道)来查询 rundeck 健康检查并报告它是否缓慢,直到我们将 rundeck 迁移到专用 VM。我发现rundeck3.3默认启用了api,我可以在浏览器中查询http://rundesckhost:4440/metrics/ping
哪个会返回pong
。显然http://rundeckhost:4440/metrics/healthcheck
显示json
{"dataSource.connection.time":{"healthy":true,"message":"Datasource connection healthy with timeout 5 seconds"},"quartz.scheduler.threadPool":{"healthy":true}}
我已经生成了管理员用户的 API 令牌,用于脚本目的的身份验证。我只想知道如何使用 API 与令牌卷曲以获得结果?我尝试了以下但无法获得所需的结果。
curl --location --request GET 'http://rundeckhost:4440/metrics/ping' \
--header 'Accept: application/json' \
--header 'X-Rundeck-Auth-Token: <generated token here>'
我的 ENV 规格:操作系统:Centos 8 | 爪哇:8 | Rundeck:3.3 社区版 | 脚本语言:curl、bash
解决方案
您的 ping API 调用错误,以下调用有效:
curl --location --request GET 'http://rundeckhost:4440/api/35/metrics/ping' \
--header 'Accept: application/json' \
--header 'X-Rundeck-Auth-Token: <your-token-here>'
以防万一,您也可以使用RD CLI工具,使用以下命令:
$ rd metrics ping
结果:
# [2020-07-31T09:09:37.200] Pinging server...
# [2020-07-31T09:09:37.503] pong
推荐阅读
- javascript - 限制所选复选框数量的功能不起作用(javascript)
- javascript - 在 vuex 模块操作中访问 vue 根实例
- r - 素食抗议()发现显着不同的数据集之间存在高度相关性?
- python - 如何发送带有标题/文本的电报 mediaGroup
- java - 使用 gson 获取原始格式的 Java json(仅用引号括起来的字符串)
- mysql - mysql更新语句使用3个表
- ios - 在 iOS 13 中将字体设置为粗体
- node.js - 为什么我无法使用 docker-sompose 运行命令安装 node_module
- python - 调试:CRAWLED(200)(参考:无)
- ios - UISearchBar iOS 13 语音听写按钮