1

如何将 Spring log4j 输出自定义到 Mongo 数据存储中?

我能够按照 Spring 的示例了解如何使用 MongoLog4j。日志被持久化到 mongodb 中,但我的转换模式中的任何内容都不受尊重。我的愿望是将行号存储在日志消息中。

这是我的 log4j 属性文件

log4j.rootCategory=INFO, stdout

log4j.appender.stdout=org.springframework.data.mongodb.log4j.MongoLog4jAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] [%L] - <%m>%n
log4j.appender.stdout.host = localhost 
log4j.appender.stdout.port = 27017
log4j.appender.stdout.database = prod
log4j.appender.stdout.collectionPattern = logs
log4j.appender.stdout.applicationId = horizon
log4j.appender.stdout.warnOrHigherWriteConcern = FSYNC_SAFE

log4j.category.org.springframework.batch=DEBUG
log4j.category.org.springframework.data.document.mongodb=DEBUG
log4j.category.org.springframework.transaction=INFO

以下是存储在 Mongo 中的内容。

{ "_id" : ObjectId("4f720482788d6140dacb0270"), "applicationId" : "test", "na
me" : "com.service.MongoTest", "level" : "DEBUG", "timestamp
" : ISODate("2012-03-27T18:18:42.981Z"), "properties" : { "applicationId" : "test" }, "message" : "Debug TEST3" }
4

1 回答 1

0

看Spring的源码,好像没有实现。相反,我发现了另一个实现了行号和自定义转换模式的项目。该项目是 http://log4mongo.org/

于 2012-04-02T19:25:31.653 回答