以前一直用的是Log4cpp的接口来实现日志管理,其实它是支持配置文件加载的,相较于下代码要方便且灵活。直接上完善的config文件
# property configurator test file
# typedef enum {EMERG = 0,
# FATAL = 0,
# ALERT = 100,
# CRIT = 200,
# ERROR = 300,
# WARN = 400,
# NOTICE = 500,
# INFO = 600,
# DEBUG = 700,
# NOTSET = 800
# } PriorityLevel;
#ConversionPattern的参数含义:
# %d 输出日志时间点的日期或时间,可以在其后指定格式,如上%d{%Y-%m-%d %H:%M:%S.%l},输出类似:2017-02-14 09:25:00.953
# %p 优先级,即DEBUG,INFO,WARN,ERROR,FATAL
# %c 输出日志信息所属的类目,通常就是所在类的全名
# %m 输出log的具体信息
# %n 回车换行
# %t 输出线程ID
#log4cpp.rootCategory=DEBUG,rootRollingFileAppender,rootDailyRollingFileAppender,rootConsoleAppender
log4cpp.rootCategory=DEBUG,rootDailyRollingFileAppender,rootConsoleAppender,rootSyslogAppender
#print to file RollingFileAppender
#log4cpp.appender.rootRollingFileAppender=RollingFileAppender
#log4cpp.appender.rootRollingFileAppender.fileName=RollingFile.log
#log4cpp.appender.rootRollingFileAppender.maxFileSize=1024*1024
#log4cpp.appender.rootRollingFileAppender.maxBackupIndex=2
#log4cpp.appender.rootRollingFileAppender.layout=PatternLayout
#log4cpp.appender.rootRollingFileAppender.layout.ConversionPattern=[%t] %d{%Y-%m-%d %H:%M:%S.%l} [%p] %m%n
#print to file - daily
log4cpp.appender.rootDailyRollingFileAppender=DailyRollingFileAppender
log4cpp.appender.rootDailyRollingFileAppender.fileName=./ObjectIdentifyLog/DailyRollingFile.log
log4cpp.appender.rootDailyRollingFileAppender.threshold=DEBUG
log4cpp.appender.rootDailyRollingFileAppender.layout=PatternLayout
log4cpp.appender.rootDailyRollingFileAppender.layout.ConversionPattern=[%t] %d{%Y-%m-%d %H:%M:%S.%l} [%p] %m%n
#print to console
log4cpp.appender.rootConsoleAppender=ConsoleAppender
log4cpp.appender.rootConsoleAppender.threshold=INFO
log4cpp.appender.rootConsoleAppender.layout=PatternLayout
#log4cpp.appender.rootConsoleAppender.layout.ConversionPattern=[%t] %d{%Y-%m-%d %H:%M:%S.%l} [%p] - %m%n
log4cpp.appender.rootConsoleAppender.layout.ConversionPattern=[%t] %d{%Y-%m-%d %H:%M:%S.%l} [%p] %m%n
#print to syslog
log4cpp.appender.rootSyslogAppender=SyslogAppender
log4cpp.appender.rootSyslogAppender.syslogName=RemoteSyslogAppender
log4cpp.appender.rootSyslogAppender.syslogHost=127.0.0.1
log4cpp.appender.rootSyslogAppender.threshold=DEBUG
log4cpp.appender.rootSyslogAppender.portNumber=514
log4cpp.appender.rootSyslogAppender.layout=PatternLayout
log4cpp.appender.rootSyslogAppender.layout.ConversionPattern=[%t] %d{%Y-%m-%d %H:%M:%S.%l} [%p] %m%n
最后一个 SyslogAppender就是配置syslog所需要的信息,一定要在log4cpp.rootCategory那里再依次添加一个rootSyslogAppender信息。