首页 > 解决方案 > 通过 ITRS Geneos 进行 Rundeck 监控

问题描述

在 Rundeck 设置了各种工作。想要使用 ITRS Geneos 进行监控。我们尝试使用execution 和scheduled_execution 表编写查询,但是scheduled_execution 在调度方面有很多差异,例如它也可以有1-5 个,而MON-FRI 也可以用于相同的调度,这使得它变得困难。

我们要监控的内容: 1. 是否有任何失败的执行 2. 是否有任何作业的运行时间超过其平均执行时间 3. 作业的运行时间是否超过其预定时间,即作业是否计划每 5 分钟运行一次 -如果它运行超过 5 分钟,我们应该收到警报。

请注意 - 我知道我们可以直接通过 rundeck 使用电子邮件警报来执行此操作,但希望使用 ITRS Geneos,因此寻找一些可能有帮助的查询或 API 参考。

请建议是否有任何解决方案。谢谢。

标签: monitoringrundeckgeneositrs

解决方案


为了获取您需要的信息,有几个替代默认电子邮件通知的方法。

您可以在作业定义中设置Webhook 通知,这会将数据 POST 到 webhook URL。

您可以查询 Rundeck 的 API 以收集基于特定或所有项目的信息,或者查询特定执行以将查询结果缩小到特定作业。上市执行将提供以下信息,您可以将其用于您需要的监控目的:

[status] 执行失败 [date-started] 和 [date-ended] 执行。此外,如果已知,相关作业的平均持续时间将被指示为(以毫秒为单位)平均持续时间。

或者,您可以获取有关执行状态的详细信息,这将提供有关执行的总体信息,例如开始和结束时间以及当前状态,以及更详细的节点/工作流程步骤级别的信息作为奖励。

通过 API 收集的上述信息也可以通过RD CLI收集。

此外,还可以开发创建通知插件(在 java 或 groovy 中)以用于作业定义,可以在以下情况下触发:

onstart - 作业开始 onsuccess - 作业完成且没有错误 onfailure - 作业失败或中止 onavgduration - 执行超过作业的平均持续时间 onretryablefailure - 作业失败但将重试

这是向 ITRS 或其他监控工具提供信息的绝佳选择,而不是直接查询 API/RD CLI 以获取信息。

希望这可以帮助!


推荐阅读