经过讨论here我仍然无法配置我的程序/电锯
当我启动ChainSaw时,我选择
在我的程序中,我设置了配置:
PropertyConfigurator.configure("log4j.properties");
最后运行程序,然后单击Chainsaw中的Simple Receiver
log4j.properties version1
log4j.rootLogger=DEBUG, server
log4j.appender.server=org.apache.log4j.net.SocketAppender
log4j.appender.server.Port=4445
log4j.appender.server.RemoteHost=localhost
log4j.appender.server.ReconnectionDelay=10000
log4j.properties version2
log4j.rootCategory=DEBUG, zeroconf, chainsaw
# Socket Appender
log4j.appender.chainsaw=org.apache.log4j.net.SocketAppender
log4j.appender.chainsaw.remoteHost=localhost
log4j.appender.chainsaw.port=4445
log4j.appender.chainsaw.locationInfo=true
它们都不起作用。我该怎么办?
答案 0 :(得分:1)
尝试:
log4j.threshold=ALL
log4j.debug = true
log4j.rootLogger=DEBUG, chainsaw
# Socket Appender
log4j.appender.chainsaw=org.apache.log4j.net.SocketAppender
log4j.appender.chainsaw.RemoteHost=localhost
log4j.appender.chainsaw.Port=4445
log4j.appender.chainsaw.LocationInfo=true
这是电锯配置的一个很好的例子,也是必需的:
http://magnus-k-karlsson.blogspot.com/2010/02/viewingmonitoring-your-log4j-generated.html
答案 1 :(得分:0)
从2.4版开始,Log4j现在支持通过属性文件进行配置。请注意,属性语法与Log4j 1中使用的语法不同。
appender.server.type=Socket
appender.server.name=server
appender.server.port=4445
appender.server.host=localhost
appender.server.reconnectDelayMillis=10000
...
rootLogger.appenderRef.server.ref = server
您可能对reconnectionDelayMillis
有疑问。在logging-log4j-dev mailing list archives中,我发现:
文档 (https://logging.apache.org/log4j/2.x/manual/appenders.html#SyslogAppender) 仍将参数列为“ reconnectionDelayMillis”,但 代码现在显然正在寻找“ reconnectDelayMillis”。我要去 更改配置以使用新名称,但是我想指出 断开连接,这让我感到困惑。谢谢-山姆
这可能已经固定/统一,但是我没有在较新版本的log4j中进行检查。如果遇到任何问题,请尝试使用reconnectDelayMillis
。
更详细的示例可以在Configuration with Properties下找到。