利用log4mongo-java+mongodb復制集搭建java日志系統 -开发者知识库

利用log4mongo-java+mongodb復制集搭建java日志系統 -开发者知识库,第1张

1、背景

在分布式系統當中,我們有各種各樣的WebService,這些服務可能分別部署在不同的服務器上,並且有各自的日志輸出。為了方便對這些日志進行統一管理和分析。我們可以將日志統一輸出到指定的數據庫系統中,而再由日志分析系統去管理。而這個存儲日志的數據庫目前最適合的還是mongodb,一是因為它輕便、簡單,與log4j整合方便,對系統的侵入性低。二是因為它與大型的關系型數據庫相比有不少優勢,比如查詢快速、存儲結構(json)利於擴展、免費等。

利用log4mongo-java+mongodb復制集搭建java日志系統 -开发者知识库,第2张

2、利用log4mongo-java mongodb搭建java日志系統

1)、安裝mongodb;

2)、下載mongo的java驅動文件,我們使用mongo-2.8.0.jar;

3)、下載log4j文件;

4)、下載log4mongo-java,我們下載的版本為log4mongo-java-0.7.0.jar;

5)、將相關jar文件都加入到測試工程的classpath中;

6)在工程中創建一個log4j.properties文件,我們采取的配置如下:

    log4j.rootLogger=debug, stdout, R, MongoDB

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%-d{MM-dd HH:mm:ss.SSS} %-5p - [%c{1}.%t] %m%n

log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=D:\log\client.log
log4j.appender.R.MaxFileSize=1000KB
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%-d{MM-dd HH:mm:ss.SSS} %-5p - [%c{1}.%t] %m%n
log4j.appender.MongoDB=org.log4mongo.MongoDbAppender
log4j.appender.MongoDB.databaseName=imooc
log4j.appender.MongoDB.collectionName=log
log4j.appender.MongoDB.hostname=172.25.132.21
log4j.appender.MongoDB.port=10001
7)、pom配置文件如下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>com.bestpay.learn</groupId>
<artifactId>log4mongo</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>

<name>log4mongo</name>
<url>http://maven.apache.org</url>

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<junit.version>3.8.1</junit.version>
<log4j.version>1.2.17</log4j.version>
<log4mongo.version>0.7.4</log4mongo.version>
<mongo-java-driver.version>2.8.0</mongo-java-driver.version>
</properties>

<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${log4j.version}</version>
</dependency>

<dependency>
<groupId>org.log4mongo</groupId>
<artifactId>log4mongo-java</artifactId>
<version>${log4mongo.version}</version>
</dependency>

<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>${mongo-java-driver.version}</version>
</dependency>

</dependencies>
</project>
8)、運行測試程序,然后在mongodb數據庫服務器上可以看到如下信息:

利用log4mongo-java+mongodb復制集搭建java日志系統 -开发者知识库,第3张

最佳答案:

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复