1
我正在制作一个直接与系统日志数据一起工作的实用程序。它目前使用log4j将信息写入控制台。我需要一些机制将预定义格式的系统日志数据发送到另一台机器。这些数据不是当前实用程序如何操作的日志..它仍然记录到stdout用于其他目的。黑客Log4j发送自定义系统日志消息
我注意到了SyslogAppender
,它看起来很有前途。我宁愿直接控制log4j,而不是使用log4j.properties文件。这可能吗?
我正在制作一个直接与系统日志数据一起工作的实用程序。它目前使用log4j将信息写入控制台。我需要一些机制将预定义格式的系统日志数据发送到另一台机器。这些数据不是当前实用程序如何操作的日志..它仍然记录到stdout用于其他目的。黑客Log4j发送自定义系统日志消息
我注意到了SyslogAppender
,它看起来很有前途。我宁愿直接控制log4j,而不是使用log4j.properties文件。这可能吗?
您可以在log4j中添加appender到记录器。
喜欢的东西:
Logger root = Logger.getRootLogger();
SyslogAppender syslogAppender = new SyslogAppender();
syslogAppender.setSyslogHost(<host ip:port>);
syslogAppender.setThreshold(<required Level>);
syslogAppender.setLayout(new PatternLayout(<required pattern>));
root.addAppender(syslogAppender);
有对SyslogAppender更多的选项,参考javadocs细节。
(我在StackOverflow上的第一个答案,要温柔!:))