Je cherche à imprimer un journal d'une manière personnalisée.Comment imprimer des champs personnalisés dans un fichier journal à partir d'une application Java à l'aide de la technique JSON log4j2?
Par exemple,
actuellement nous avons la structure suivante du journal sous forme de JSON,
{
"timeMillis" : 1488791217953,
"thread" : "restartedMain",
"level" : "DEBUG",
"loggerName" : "org.springframework.jdbc.datasource.DriverManagerDataSource",
"message" : "hello world",
"endOfBatch" : false,
"loggerFqcn" : "org.apache.commons.logging.impl.SLF4JLocationAwareLog",
"threadId" : 17,
"threadPriority" : 5
}
Maintenant, je trouve que, il y avait deux champs sont toujours portés disparus qui sont importants pour moi d'avoir dans un journal,
JSON attendu serait de même:
{
"timeMillis" : 1488791217953,
"thread" : "restartedMain",
"level" : "DEBUG",
..................
"file" : "p1.pck.HelloWorld.java",
"line" : "190",
"application-id" : "101",
"logged in user id " : "199",
"etc" : "etc"
..................
"threadPriority" : 5
}
REMARQUE: le fichier de configuration du journal log4j2.yml
a la suite de la configuration
JsonLayout:
propertiesAsList: true