En Java Comment créer votre propre niveau de journalisation à l'aide de Log4j (Configuration de Log4j 2)

Publié: 2017-07-26
En Java Comment créer votre propre niveau de journalisation à l'aide de Log4j 2

Si vous devez ajouter votre propre niveau de journalisation dans Log4j, vous pouvez le faire comme suit. Vous devrez créer votre propre classe qui s'étendra de Level , Custom Log Levels with Apache Log4j 2.

Log4j est un logging framework simple et flexible. La journalisation fournit au développeur un contexte détaillé pour les échecs d'application. Avec log4j, il est possible d'activer la journalisation au moment de l'exécution sans modifier le binaire de l'application.

Le package log4j est conçu pour que ces instructions puissent rester dans le code livré sans entraîner de coût de performances élevé.

Comment créer votre propre niveau de journalisation dans Log4j (configuration de Log4j)

Log4j permet aux demandes de journalisation d'imprimer vers plusieurs destinations. En langage log4j, une destination de sortie est appelée un appender . Ils varient de la console, des fichiers, des composants GUI, des serveurs de socket distants à JMS.

Fichier Jar dont vous avez besoin.

Voici une dépendance Maven :

Mettre à jour Log4j vers la dernière version

CVE-2021-44228 : Apache Log4j2 <=2.14.1 Les fonctionnalités JNDI utilisées dans la configuration, les messages de journal et les paramètres ne protègent pas contre LDAP contrôlé par l'attaquant et d'autres points de terminaison liés à JNDI.

Depuis log4j 2.16.0, ce comportement a été désactivé par défaut.

Vous devez placer le fichier log4j.xml sous le dossier /resources :

Fichier log4j.xml dans le dossier des ressources

Voici un exemple de code Java pour :

  • Journalisation Log4j pour les niveaux de journalisation personnalisés en Java
  • Créer votre propre niveau de journalisation dans log4j
  • exemple d'enregistreur personnalisé log4j

CrunchifyLog4jLevel.java

Un autre doit lire:

  • Comment démarrer le serveur Stop Apache Tomcat via la ligne de commande ? (Configuration en tant que service Windows)
  • Créer et déployer un service Web simple et un client de service Web dans Eclipse

Voici un contenu du fichier log4j.xml

CrunchifyLog4jLevelTest.java

Exécutez le programme de test et vous devriez voir le type de résultat ci-dessous dans Eclipse's Console .

La valeur int que vous spécifiez pour votre niveau de journalisation est importante. Ici, j'ai défini le niveau de journalisation " CRUNCHIFY " qui doit être supérieur au niveau DEBUG mais inférieur au niveau TRACE fourni par log4j.

Ainsi, chaque fois que vous avez défini un niveau de priorité sur DEBUG sur la catégorie (dans votre fichier log4j.xml ), les journaux de niveau CRUNCHIFY ne parviendront PAS au fichier journal.