2012-03-30 10 views
1

Wie kann ich die Spring log4j Ausgabe in den Mongo Datastore anpassen?Spring Mongo Log4j anpassen

Ich konnte dem Beispiel von Spring folgen, wie man MongoLog4j benutzt. Die Protokolle werden in mongodb gespeichert, aber was auch immer in meinem Umwandlungsmuster ist, wird nicht respektiert. Ich möchte die Zeilennummer in der Protokollnachricht speichern.

Hier ist meine log4j-Eigenschaftsdatei

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 

Unten ist das, was in Mongo gespeichert wird.

{ "_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" } 

Antwort

0

Mit Blick auf den Quellcode von Spring scheint es nicht implementiert zu sein. Stattdessen habe ich ein anderes Projekt gefunden, in dem Zeilennummern und benutzerdefinierte Konvertierungsmuster implementiert sind. Das Projekt ist http://log4mongo.org/

Verwandte Themen