我正在尝试从一个有点黑盒子的应用程序中传输一些日志消息给我。它与commons-logging-1.0.4.jar一起打包,并在其下使用log4j。我正在尝试流式传输其中一个记录器,以便我可以在电锯中查看它。我可以毫无问题地将日志消息定向到文件,但是当我配置套接字appender时,我从未在链锯日志中看到接受的连接。我可以在运行链锯的主机上telnet到端口4560,然后将看到该连接被接受。我无法弄清楚错误配置的内容,并开始怀疑这个功能是否不适用于commons-logging。以下是log4j.xml配置中的配置代码段。是否存在我不理解的错误配置?
<appender name="SOCKET" class="org.apache.logging.log4j.core.appender.SocketAppender">
<param name="RemoteHost" value="ljgaer"/>
<param name="Port" value="4560"/>
</appender>
<appender name="FILE2" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="/tmp/test.log" />
<param name="MaxFileSize" value="50MB" />
<param name="MaxBackupIndex" value="10" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="###########MSG%n%m%n" />
</layout>
</appender>
<!-- Change level to ALL to turn on xml logging. -->
<logger name="XMLLogger" additivity="false">
<level value="ALL" />
<appender-ref ref="SOCKET" />
<appender-ref ref="FILE2" />
</logger>
答案 0 :(得分:0)
关闭套接字appender的软件包名称是错误的。
应该是
org.apache.log4j.net.SocketAppender