如何将Apache mod_jk日志与Tomcat实例日志相关联以进行故障排除?

在我的Apache mod_jk日志中,我使用如下格式的条目:

[Wed Oct 26 10:59:43 2011] [3732:2460] [error] jk_ajp_common.c (1618): (myJbossServer) Tomcat is down or network problems. Part of the response has already been sent to the client 

RedHat的故障排除指南说 ,

请注意,通过这些消息,消息的[11159:3086420192]部分充当有问题的连接/请求的标识符。 因此,从日志中的错误点追溯可以帮助澄清导致错误的连接/请求周围的活动。

我该怎么做呢? 我在JBoss日志中找不到标识符。 我没有看到JBoss日志中的任何标识符,错误,是的,跟踪号码,没有。 我需要在哪里寻找跟踪这个标识符? 我真的不是在寻找解决scheme,只是如何使用Apache mod_jk和Jboss之间的标识符和检查。

编辑:我问我在哪里可以findmyJBossServer日志中的标识符[3732:2460]。

其实它在你面前,失败的工人是括号内的那个,叫做myJbossServer。

检查你的worker.properties,你会发现它是IP或主机名。

大约在那个时候,希望你能从JBoss /操作系统中得到提示(如果你遇到CPU /内存/ ECC的问题,那么sar会非常方便)。

实际上,你让我对方括号之间的数字感到好奇。 我试图search文档,但无法find它是什么。 检查源代码,但带来了这个:

 int jk_log(jk_logger_t *l, const char *file, int line, const char *funcname, int level, const char *fmt, ...) { ... if (line) { /* line==0 only used for request log item */ /* Log [pid:threadid] for all levels except REQUEST. * This information helps to correlate lines from different logs. * Performance is no issue, because with production log levels * we only call it often, if we have a lot of errors */ rc = snprintf(buf + used, usable_size - used, "[%" JK_PID_T_FMT ":%" JK_PTHREAD_T_FMT "] ", getpid(), jk_gettid()); 

看看你粘贴的RedHat文件,PID:TOD标识可以帮助你匹配你所看到的mod_jk.log,而不是交叉引用mod_jk.log和JBoss。 如果你想交叉引用这两个日志,那么你应该find一些其他的方法,在Apache / mod_jk中设置一个自定义标题,并在JBoss日志中打印这是我现在想的第一个方法。 或者至less你可以在失败的时候检查请求。