运行 Hudson 的 Centos 冻结,检查哪些日志可以找出原因?

运行 Hudson 的 Centos 冻结,检查哪些日志可以找出原因?

首先,有一个 Centos 5.4(64 位),资源充足,安装了 Hudson(http://wiki.hudson-ci.org/display/HUDSON/Meet+Hudson) 一切正常。几天或几周后(不记得是哪几天),整个服务器会随机冻结,需要硬重启。除了 Hudson 所需的资源外,服务器上没有运行任何其他东西。

新工作:新安装的 Centos 5.5(64 位)。大约一个月后,系统又开始冻结。没有明显原因。

我们在各处运行着相同的服务器,提供从 Tomcat 到 Jboss 到基本 Apache 的所有内容,而且从未出现过冻结或崩溃的情况。

看来 Hudson 是问题所在 —— 我们只是无法弄清楚它与典型配置有何不同。

所以有两个问题:

  1. 有没有哪位 Hudson 专家愿意参与讨论?
  2. 故障排除:应该查看哪些日志?我们在哪里可以找到“X 导致系统崩溃”等条目?

答案1

我发现最好的方法是通过网络或串行连接保存某种实时日志。有时,即使内核无法将关键消息保存到文件中,它也可以将其打印到已登录的 shell 中,因此只需打开远程 shell 即可。您还可以 tail -f 某些日志文件,或者更好的是 cat /proc/kmsg 并查看通过 ssh 发送的实时内核消息。另一个更可靠的选择是将物理串行端口设置为控制台。我让所有服务器都支持串行控制台,并且可以使用 HyperTerminal 等串行终端仿真器或更好的串行端口上的 PuTTY 记录整个启动过程。添加启动选项 console=ttyS0 会将所有内核消息发送到 COM1,与保持网络连接相比,这需要的工作量要少得多。即使没有连接器,大多数主板通常仍会在板上有一个用于 COM1 的接头。

相关内容