Comment puis-je abréger/raccourcir les noms de packages dans le journal généré à l'aide de log4j. c'est-à-dire au lieu de com.longpackage.anotherpackage.lastpackage.MyClass
Je voudrais c.l.a.l.MyClass
. J'ai vu cela dans Artifactory logs, mais je ne sais pas comment y parvenir en utilisant log4j.
Il s'avère que cela est possible en utilisant log4j après tout (testé en utilisant v1.2.16 ), grâce à Tomasz Nurkiewicz pour m'avoir indiqué LogBack . La fonctionnalité, ConversionWord, est disponible en utilisant la disposition EnhancedPatternLayout .
Du javadoc
... For example, for the category name "alpha.beta.gamma" the pattern %c{2} will output the last two elements ("beta.gamma"), %c{-2} will remove two elements leaving "gamma", %c{1.} will output "a.b.gamma" ...
J'utilise JBoss et j'ai dû mettre à niveau log4j et utiliser la disposition ci-dessus.
Utilisations artificielles Logback :
Projets connus pour s'appuyer sur la déconnexion:
[...]
Artifactory
qui a cette belle fonctionnalité appelée Conversion Word :
|Conversion specifier | Logger name | Result |
|---------------------|:--------------------------:| -------------------------:|
|%logger | mainPackage.sub.sample.Bar | mainPackage.sub.sample.Bar|
|%logger{0} | mainPackage.sub.sample.Bar | Bar |
|%logger{5} | mainPackage.sub.sample.Bar | m.s.s.Bar |
|%logger{10} | mainPackage.sub.sample.Bar | m.s.s.Bar |
|%logger{15} | mainPackage.sub.sample.Bar | m.s.sample.Bar |
|%logger{16} | mainPackage.sub.sample.Bar | m.sub.sample.Bar |
|%logger{26} | mainPackage.sub.sample.Bar | mainPackage.sub.sample.Bar|
* Les tables me manquent dans SO markdown sooo much ...