Java Log4j2 Syslog Appender不会发送消息

时间:2016-06-29 09:45:31

标签: java log4j2 syslog

我尝试使用Log4j2 Syslog Appender但没有发送消息。 我使用WireShark监控环境,没有检测到任何消息。 在Windows 7上运行。

当我使用Kiwi系统日志时,消息就可以了。

这是我的log4j2 XML配置文件:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn" name="MyApp" packages="">
  <Appenders>
    <Console name="Console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
    </Console>
           <Syslog name="RFC5424" format="RFC5424" host="localhost" port="514"
            protocol="UDP" appName="MyApp" includeMDC="true"
            facility="USER" enterpriseNumber="18060" newLine="true"
            messageId="Audit" mdcId="mdc" id="App"
            connectTimeoutMillis="1000" reconnectionDelayMillis="5000">
            <LoggerFields>
                <KeyValuePair key="thread" value="%t"/>
                <KeyValuePair key="priority" value="%p"/>
                <KeyValuePair key="category" value="%c"/>
                <KeyValuePair key="exception" value="%ex"/>
                <KeyValuePair key="message" value="%m"/>
            </LoggerFields>
        </Syslog>
      </Appenders>
  <Loggers>
    <Logger name="com.mycorp" level="info" />
        <Root level="info">
            <AppenderRef ref="RFC5424"/>
            <AppenderRef ref="Console"/>
        </Root>
  </Loggers>
</Configuration>

这是我的Java代码:

import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;
import java.io.*;
import java.sql.SQLException;

public class SyslogLogger
{
    private static final Logger LOG = LogManager.getLogger(SyslogLogger.class);

    public static void main (String[] args)throws IOException,SQLException
    {
        LOG.error("testing ERROR level");
    }
}

控制台appender工作正常,但系统日志没有。

请告知。

1 个答案:

答案 0 :(得分:0)

请尝试以下代码并进行检查:

<appender name="Console" class="org.apache.log4j.ConsoleAppender">
     <param name="Target" value="System.out"/>
     <layout class="org.apache.log4j.PatternLayout">
         <param name="ConversionPattern" value="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
     </layout>
</appender>