log4j socketappender在使用commons日志记录时不生成消息

时间:2016-04-27 22:16:41

标签: java logging log4j apache-commons-logging

我正在尝试从一个有点黑盒子的应用程序中传输一些日志消息给我。它与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>

1 个答案:

答案 0 :(得分:0)

关闭套接字appender的软件包名称是错误的。

应该是

org.apache.log4j.net.SocketAppender

相关问题