log4j2输出到mongodb

来源:互联网 发布:union类似软件 编辑:程序博客网 时间:2024/05/13 09:22
摘要: log4j2输出到mongodb

以log4j2 v2.7版本为例,低版本可能不支持。

参见:

http://logging.apache.org/log4j/2.x/manual/appenders.html#NoSQLAppender

https://logging.apache.org/log4j/2.x/runtime-dependencies.html

https://logging.apache.org/log4j/2.x/log4j-nosql/index.html

http://www.cnblogs.com/autfish/p/5557568.html

 

转载地址:http://blog.csdn.net/z69183787/article/details/53611830


maven:

[html] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. <dependency>  
  2.     <groupId>org.mongodb</groupId>  
  3.     <artifactId>mongo-java-driver</artifactId> <!--必需 -->  
  4.     <version>2.12.3</version>  
  5. </dependency>  
  6. <dependency>  
  7.     <groupId>org.apache.logging.log4j</groupId>  
  8.     <artifactId>log4j-api</artifactId>  
  9.     <version>2.7</version>  
  10. </dependency>  
  11. <dependency>  
  12.     <groupId>org.apache.logging.log4j</groupId>  
  13.     <artifactId>log4j-core</artifactId>  
  14.     <version>2.7</version>  
  15. </dependency>  
  16. <dependency>  
  17.     <groupId>org.apache.logging.log4j</groupId>  
  18.     <artifactId>log4j-nosql</artifactId> <!-- 必需,否则报错 -->  
  19.     <version>2.7</version>  
  20. </dependency>  


log4j2.xml:

[html] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <Configuration status="off" monitorInterval="30">  
  3.     <Appenders>  
  4.         <NoSql name="mongoAppender" bufferSize="10"> <!--建议bufferSize配置,减少频繁写操作。 -->  
  5.             <MongoDb databaseName="sl0" collectionName="log4j2" server="127.0.0.1" port="27017"/>  
  6.         </NoSql>  
  7.         <Console name="STDOUT" target="SYSTEM_OUT">  
  8.             <PatternLayout pattern="%m%n"/>  
  9.         </Console>  
  10.     </Appenders>  
  11.     <Loggers>  
  12.         <Logger name="mongologger" level="debug">  
  13.             <appender-ref ref="mongoAppender"/>  
  14.         </Logger>  
  15.   
  16.         <Logger name="org" level="debug">  
  17.             <appender-ref ref="mongoAppender"/>  
  18.             <appender-ref ref="STDOUT" />  
  19.         </Logger>  
  20.         <Root level="debug">  
  21.             <appender-ref ref="STDOUT" />  
  22.         </Root>  
  23.     </Loggers>  
  24. </Configuration>  


unit:

[java] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. package org.sl;  
  2.   
  3. import org.apache.logging.log4j.LogManager;  
  4. import org.apache.logging.log4j.Logger;  
  5. import org.junit.Test;  
  6.   
  7. public class Test2 {  
  8. //都会输出到mongo中,见log4j2.xml配置  
  9.     static Logger clzlogger = LogManager.getLogger(Test2.class);   
  10.     static Logger mongologger = LogManager.getLogger("mongologger");  
  11.   
  12.     @Test  
  13.     public void t1(){  
  14.         mongologger.info("mongologger");  
  15.         clzlogger.info("clzlogger");  
  16.     }  
  17. }  
0 0
原创粉丝点击