如何在构建队列超过特定长度时发送警告电子邮件?

时间:2016-04-04 22:03:10

标签: jenkins

我在整个生态系统中管理一个拥有几百个项目的Jenkins服务器。许多项目依赖于上游服务器,遗憾的是,它们并不总是响应。当我在这些服务器上有延迟时,我的构建队列可以达到10或更多。是否有插件或设置在构建队列超过特定长度时发送警告电子邮件?

1 个答案:

答案 0 :(得分:3)

我无法找到执行此操作的插件,但您可以查询Jenkins以获取详细信息:Jenkins command to get number of builds in queue

如果你有一个Jenkins奴隶可用,你可以设置一个每15分钟运行一次的作业,然后点击每个其他Jenkins服务器进行API调用以获得构建队列计数(如果你只有一个主服务器,这很容易许多奴隶。)

如果你想完全不在Jenkins之外(不要在混合中添加另一个作业),你可以编写一个脚本来轮询Jenkins API以获取信息。然后,您可以使用cron(或Windows计划任务)在15分钟(或其他一些相关时间步长)计时器下运行该脚本。不可否认,你必须投入一些资源来完成这项工作。

看起来您可以使用python来获取构建队列并检查返回列表的长度。 get_queue_info()

我自己并没有使用Jenkins API,所以我不确定该脚本需要什么,但是一旦你深入了解它就应该很简单。