在Websphere中运行的Web应用程序正在使用log4j SysLogAppender将消息记录到位于同一台计算机中的syslog守护程序。 syslog守护程序的默认设置是LOG_FROM_REMOTE = NO。这是否意味着与syslog守护程序位于同一台计算机上的Web应用程序无法接受这些消息?
答案 0 :(得分:4)
如果LOG_FROM_REMOTE
设置为YES
,则会侦听指定的UDP端口。如果设置为NO
则不会。由于您将值设置为no,因此它不会侦听端口,也无法接收日志消息。
即使logappender和守护程序在同一台计算机上,它们也需要通过UDP端口进行通信。
答案 1 :(得分:1)
感谢jcasso的帮助。它有助于解决问题。只是为了帮助可能遇到同样问题的其他人,请检查/etc/default/syslog.conf中的LOG_FROM_REMOTE属性是否设置为YES。否则log4j日志将无法访问syslog。 syslog dameon侦听端口514(默认端口)上的UDP数据包。因此,在启用调试的情况下运行log4j将无法帮助log4j,无论数据包是否到达syslog。希望它有所帮助
答案 2 :(得分:0)
如果您使用syslog-ng,则需要取消注释(在/ etc / syslog-ng文件中)“udp();”在“source s_all {”部分中的行。