【发布时间】:2014-09-23 06:48:25
【问题描述】:
我正在尝试使用来自 http://people.apache.org/~sdeboy 的 Chainsaw v2 我不想使用零配置。只是一个简单的 socketAppender/SocketReceiver 组合。
我正在使用具有以下配置的 log4j2
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN" >
<Appenders>
<Console name="CONSOLE" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
</Console>
<Socket name="SharathZeroConf" host="localhost" port="4445">
</Socket>
</Appenders>
<Loggers>
<Root level="debug">
<AppenderRef ref="SharathZeroConf" />
<AppenderRef ref="CONSOLE" />
</Root>
</Loggers>
</Configuration>
在 ChainSaw 上,我选择了端口 4445 的“从网络接收事件”选项。
但是电锯没有记录任何东西。
我已经使用内置的socketserver验证了log4j端的appender配置是正确的
java -cp ~/.m2/reposiry/org/apache/logging/log4j/log4j-api/2.0.2/log4j-api-2.0.2.jar org.apache.logging.log4j.core.net.server.TcpSocketServer 4445
所以错误必须在电锯侧。任何指针@Scott?
【问题讨论】:
-
看了下电锯的源码,看来电锯还是用log4j 1.x,对log4j2的支持非常有限。特别是,它将来自套接字的传入日志事件转换为 log4j 1.x
org.apache.log4j.spi.LoggingEvent而发送的 log4j2 事件实际上是org.apache.logging.log4j.core.LogEvent对象
标签: sockets log4j2 apache-chainsaw