Rainbow702 发表于 2013-2-4 13:27:53

log4j写syslog

 之前一直以为log4j只能将日志写在本地,没想到它竟然也可以将日志写到远程服务器(须是LINUX服务器),现将自已的调查结果记录下来,以便以后查看。
1) 修改syslog的配置文件/etc/syslog.conf
   在最后加上如下内容(注意中间的空白必须是 TAB 键,不能是空格,数量不限,切记!请参见下面给出的参考文档一)
  
local6.*/var/log/log4j.log 
2) 编辑/etc/sysconfig/syslog。
   在SYSLOGD_OPTIONS中追加"-r"。
# Options to syslogd # -m 0 disables 'MARK' messages. # -r enables logging from remote machines # -x disables DNS lookups on messages recieved with -r # See syslogd(8) for more details SYSLOGD_OPTIONS="-r -m 0" 
3) 重新启动Syslog服务
/etc/init.d/syslog stop/etc/init.d/syslog start4) 为了测试你的配置对不对,你可以用以下语句进行测试一下(就不解释该语句了)
 
# /usr/bin/logger –p local6.info “This space intentionally left blank” 
5) 配置log4j
log4j.logger.REPORTER.OPERATIONHISTORY=INFO, A5log4j.additivity.REPORTER.OPERATIONHISTORY=falselog4j.appender.A5=org.apache.log4j.net.SyslogAppenderlog4j.appender.A5.SyslogHost=此处为你的服务器名或IPlog4j.appender.A5.Facility=local6log4j.appender.A5.layout=org.apache.log4j.PatternLayoutlog4j.appender.A5.layout.ConversionPattern=%m%n 
参考文档:
http://allenzhang.iteye.com/blog/1198317
http://arthurln.iteye.com/blog/338180
http://www.precision-guesswork.com/sage-guide/syslog-overview.html
页: [1]
查看完整版本: log4j写syslog