我想在我的 java 项目中实现 log4j。我将 jar 放在 lib 文件夹中并配置 log4j.properties 文件。日志成功显示在控制台中,但我无法在我的 kubuntu 的 SYSLOG 应用程序 (KSYSLOG) 中看到该日志。这是我的属性文件:
log4j.rootLogger=INFO, stdout, SYSLOG, file
# Redirect log messages to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
# Redirect log messages to a SYSLOG
log4j.appender.SYSLOG=org.apache.log4j.net.SyslogAppender
log4j.appender.SYSLOG.syslogHost=127.0.0.1
log4j.appender.SYSLOG.layout=org.apache.log4j.PatternLayout
log4j.appender.SYSLOG.layout.conversionPattern=%d{ISO8601} %-5p [%t] %c{2} %x - %m%n
log4j.appender.SYSLOG.Facility=LOCAL1
# Redirect log messages to a log file, support file rolling.
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=/var/log/ log4j-application.log
log4j.appender.file.MaxFileSize=5MB
log4j.appender.file.MaxBackupIndex=10
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
此属性文件中有什么不正确或我做错了什么?
最佳答案
我在这个线程中找到了解决方案 Writing log data to syslog using log4j
我们必须添加
$ModLoad imudp
$UDPServerRun 514
到 rsyslog.conf 并重启 rsyslog
关于java - Log4j 不发送日志到 linux SYSLOG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31391241/