《LOG4J2官方文档》Chainsaw 可以自动处理你的日志文件(通知appender的配置)

对于所有的基于文件的appender和基于socket的appender,log4j提供通知appender 配置的详细信息的功能。例如,基于文件的appender,文件地址和格式化输出日志信息都包含在了log4j的通知里面。Chainsaw和其他外部系统能发现这些通知并聪明地利用这些通知去处理日志文件。

这种通知暴露的机制和通知格式是特定于每个通知者实现的,一个与特定通知者实现协作的外部系统必须明白,如何定位通知的配置和通知的格式。例如,一个数据库通知者可能在数据库表中存储了配置的详细信息,一个外部系统可以读取这个数据库表,发现文件位置和格式。

log4j提供了一种通知者实现——一个“multicastdns”通知者,运用http://jmdns.sourceforge.net的库通过ip多路传送,它可以通知appender的 配置的详细信息。Chainsaw能发现log4j的多路局域网产生的通知者并且在Chainsaw的zeroconf标签中显示(jmdns库要在Chainsaw的路径中)。在Chainsaw的zeroconf标签中双击通知入口,通知者就可以解析和跟踪日志文件了。现在Chainsaw只支持FileAppender 的通知。

通知一个输出appender配置,你需要如下步骤:

  • 你可以在 http://jmdns.sourceforge.net 网站上找到JmDns库,把它加到应用路径中
  • 在配置文件中设置advertise的配置属性为”multicastdns”
  • 设置appender的advertise属性为true
  • 如果通知FileAppender-based 的配置,要设置appender的属性”advertiseURI”为一个合适的 URI

基于FileAppender的配置需要额外的指定在appender的 ‘advertiseURI’ 属性。advertiseURI’ 属性给Chainsaw提供了怎样访问文件的信息。例如,通过制定 的Commons VFS (http://commons.apache.org/proper/commons-vfs/) sftp:// URI 的ssh/sftp, 一个文件可能被chainsaw远程访问,当通过web服务器访问文件时,一个http:// URI 可能会被用到,或者用本地运行的Chainsaw实例访问一个文件时,制定一个 file:// URI 。

请注意,为了用”multicastdns”来通知,你必须在你的应用路径加上Jmdns的库(你可以在http://jmdns.sourceforge.net找到)

  1. <?xml version=“1.0” encoding=“UTF-8″?>
  2. <Configuration advertiser=“multicastdns”>
  3. </Configuration>
  4. <Appenders>
  5. <File name=“File1″ fileName=“output.log” bufferedIO=“false” advertiseURI=“file://path/to/output.log” advertise=“true”>
  6. </File>
  7. </Appenders>

转载自 并发编程网 - ifeve.com

时间: 2024-09-28 13:17:43

《LOG4J2官方文档》Chainsaw 可以自动处理你的日志文件(通知appender的配置)的相关文章

《Log4j2官方文档》自动加载配置

Log4j可以在初始化的时候执行自动配置.当Log4j启动的时候,会首先定位所有的ConfigurationFactory的配置然后会根据权重进行从高到低的排序.目前的版本,Log4j包含了四种类型的ConfigurationFactory的实现,JSON,YAML,properties,XML. 1:Log4j将会检查 log4j.configurationFile的系统属性,如果已经设置了对应的属性,将会使用ConfigurationFactory对应的属性去加载配置. 2:如果没有设置对应

《Log4j2官方文档》从Log4j 1.x迁移

从Log4j 1.x迁移 使用Log4j 1.x桥接 转换到Log4j 2的最简单方法,也许就是把log4j 1.x的jar文件替换为Log4j 2的log4j-1.2-api.jar.然而,要让这个方式可以使用,应用必须满足以下要求: 不能访问Log4j 1.x的内部实现的方法和类,例如Appenders, LoggerRepository或者Category的callAppenders方法. 不能以编程方式配置Log4j. 不能通过调用类DOMConfigurator或PropertyCon

《Log4j2官方文档》Appenders配置

appender可以配置为具体的appender插件,或者是一个其type属性为appender插件名称的appender元素.此外,每个appender必须有一个name属性,其值在appenders集合内是唯一的.name属性的值将用在上一节loggers里指定的appender中. 大多数appender也支持自定义配置layout(可以配置为具体的layout插件,或者是一个其type属性为layout插件名称的layout元素).各个appender也会包含它们正常工作所需的其他属性或

《Log4j 2 官方文档》多余性(Additivity)

如果我们希望输出com.foo.Bar的TRACE等级的日志,而不像影响其他日志的输出.简单的改变日志等级是不能达到我们想要的目的:但是修改也很简单,只要我们添加一个新的Logger定义就可以达到目标. <Logger name="com.foo.Bar" level="TRACE"/> <Root level="ERROR"> <AppenderRef ref="STDOUT"> <

jQuery 1.4官方文档详细讲述新特性功能

为了庆祝jQuery的四周岁生日, jQuery的团队荣幸的发布了jQuery Javascript库的最新主要版本! 这个版本包含了大量的编程,测试,和记录文档的工作,我们为此感到很骄傲. 我要以个人的名义感谢 Brandon Aaron, Ben Alman, Louis-Rémi Babe, Ariel Flesler, Paul Irish, Robert Kati?, Yehuda Katz, Dave Methvin, Justin Meyer, Karl Swedberg, and

TestNG官方文档中文版(9)-重复失败测试,junit测试,jdk1.4支持

5.10 - Rerunning failed tests 套件中的测试失败时,每次testNG都会在输出目录中创建一个名为testng-failed.xml 的文件.这个xml文件包含只重新运行这些失败的测试方法的必要信息,容许只运行这些 失败的测试而不必运行全部测试.因此,一种典型的情况将是这样: java -classpath testng.jar;%CLASSPATH% org.testng.TestNG -d test-outputs testng.xml java -classpat

TestNG官方文档中文版(6)-参数

5.5 - Parameters 测试方法不要求是无参数的.你可以在每个测试方法上使用任意数量的参数,并指示 testNG传递正确的参数. 有两种方式用于设置参数:使用testng.xml或者编程式. 5.5.1 - Parameters from testng.xml 如果你要为你的参数使用简单值,你可以在你的testng.xml中明确指定: @Parameters({ "first-name" }) @Test public void testSingleString(String

TestNG官方文档中文版(3)-testng.xml

TestNG的官方文档的中文翻译版第3章,原文请见 http://testng.org/doc/documentation-main.html 3 - testng.xml 调用TestNG由几种不同方法: * 使用testng.xml文件 * 使用ant * 从命令行 这节描述testng.xml的格式(文档的后面会讲到ant和命令行). 当前testng.xml的DTD文件可以从官方找到:http://testng.org/testng-1.0.dtd.( 为了方便使用,你可能更喜欢浏览HT

TestNG官方文档中文版(2)-annotation

TestNG的官方文档的中文翻译版第二章,原文请见 http://testng.org/doc/documentation-main.html 2 - Annotation 这里是TestNG中用到的annotation的快速预览,还有它们的属性. @BeforeSuite: 被注释的方法将在所有测试运行前运行 @AfterSuite: 被注释的方法将在所有测试运行后运行 @BeforeTest: 被注释的方法将在测试运行前运行 @AfterTest: 被注释的方法将在测试运行后运行 @Befo