事实证明,我的问题太过具体,对以后的任何人都没有用。因此,问题改写如下:
调试当 Jenkins 构建意外暂停或挂起时发生的情况。
还会添加答案。
原始问题和描述如下:
调试构建和构建后操作部分之间发生的事情
在过去一周左右的时间里,我们的构建作业出现了延迟。调试表明,延迟(10 到 15 分钟)是在构建和构建后操作之间的间隔中引入的自由式项目。
为了进行调试,我设置了一个具有一个 Windows 批处理操作的作业,以在“构建”部分中回显一行,并在“构建后”部分中回显一个 groovy 的后构建。
批处理很简单:echo Last entry in the Build Actions.
Groovy 类似简单:manager.listener.logger.println("First entry in Post-build Actions");
日志(带有时间戳)生成以下内容:
15:12:05 Last entry in the Build Actions.
15:26:08 First entry in Post-build Actions
我一直在查看詹金斯日志,但寻找确凿的证据却无功而返。
我如何监控两国之间发生的事情?
答案1
调试 Jenkins 并不是特别容易。
在这种情况下,最好的选择是创建快照堆栈跟踪。这可以通过 WEB UI 执行,方法是访问http://your.jenkins.server/threadDump。
..那么这“仅仅”是在生成的 6000++ 行堆栈跟踪中发现任何不正常情况的问题。
在以下页面上,Jenkins 社区记录了一些执行此类调试的进一步方法:https://wiki.jenkins.io/display/JENKINS/Obtaining+a+thread+dump