Le printemps des Profils, différents Log4j2 configs
Dans mon application.yml j'ai eu:
logging:
config: classpath:log4j2.debug.yml
Et quelques autres dans les différents profils. Quand je lance l'Application je reçois le texte suivant:
ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console.
Si je viens de mettre log4j2.xml à côté du profilé de ceux qu'il fonctionne. Donc, je pense que c'est une chose où je manque une dépendance ou il n'est pas possible avec log4j2?
Référence: L'Enregistrement De Démarrage Niveau dit qu'il devrait être possible, comme je l'ai essayer?
OriginalL'auteur Dennis Ich | 2016-02-22
Vous devez vous connecter pour publier un commentaire.
De mon côté, je suis en utilisant les propriétés de fichier au lieu d'un yaml. Je voulais journal deux fichiers: l'un qui enregistre le tout dans la console, et un autre qui enregistre dans un fichier. J'ai donc fait deux log4j2 fichiers de configuration: log4j2-dev.xml et log4j2-file.xml.
J'utilise deux Printemps profil: celui par défaut, et une autre nommée "dev". Pour passer le log4j2 fichier de configuration, j'ai créé un fichier de l'application.propriétés contenant:
Et j'ai un autre fichier de propriétés, application-dev.propriétés, qui est activé automatiquement lorsque le Printemps détecte les "dev" de profil. Il contient:
Quand je veux utiliser l'log4j2-dev.xml configuration, je viens d'ajouter "dev" comme valeur de "printemps".les profils.active=" dans l'application.les propriétés.
Vous pouvez prendre un coup d'oeil à la Feiyu Zhou de répondre à cette page. Il présente une solution à l'aide d'un fichier de configuration Yaml: Comment définir log4j2 chemin d'accès de l'application.propriétés?
Bien sûr, vous pouvez toujours supprimer l'attribut de l'exploitation forestière.config de l'application.les propriétés et les renommer log4j2-file.xml dans log4j2.xml. Il sera chargé par défaut par Log4j2 sans la nécessité d'être déclenchée par un Ressort de profil
OriginalL'auteur tlegrand
Voir aussi la Log4j 2 Configuration de la page de manuel:
Log4j2 va d'abord essayer de trouver un fichier appelé
log4j2-test.yaml
dans le classpath, puis la même chose pour JSON et XML, et enfin, recherchez un fichier appelélog4j2.yml
dans le classpath.Vous pouvez également spécifier l'emplacement du fichier de configuration de manière explicite.
OriginalL'auteur Remko Popma
Comme une alternative à l'utilisation de Printemps profils (ce qui vous oblige à définir explicitement les profils sont actifs), vous pouvez utiliser un Maven build profil pour basculer entre log4j2 fichiers de configuration.
application.yml
pom.xml
De cette façon, un log4j par défaut du fichier de config (log4j2.xml) peut être utilisée pour le construit.
Et un deuxième fichier de config (log4j2-local.xml) peut être utilisé pour le développement local/test chaque fois que le projet est construit avec la
local
profil (par exemple,mvn package -Plocal
).OriginalL'auteur George Andrews
Voici la solution qui a fonctionné pour moi avec spring boot 2 et log4j2.xml
Assurez-vous que vous avez des fichiers comme l'application locale.propriétés, application-dev.propriétés de différents envs et des profils.
Jamais garder log4j2.xml dans le répertoire src/main/resources dossier au lieu de cela, il doit être conservé sous le profil spécifique des dossiers créés dans src/main/resources comme
src/main/resources/local src/main/resources/dev etc...
puis faire des entrées comme
la journalisation.config: classpath:local/log4j2.xml en application locale.propriétés
et
la journalisation.config: classpath:dev/log4j2.xml dans l'application-dev.propriétés
également garder log4j2.xml dans chacun de ces dossiers avec le même nom de fichier log4j2.xml et une fois de plus ne jamais garder un sous src/main/resources depuis l'application va chercher par défaut, ce qui nous ne voulons pas. Ont une configuration différente dans chacune si ces différents xml spécifique à vos environnements et cela devrait fonctionner.. Également exécuter le printemps de démarrage avec le profil argument fourni..
Vous pouvez ensuite modifier le fichier journal des chemins d'accès basé sur les environnements comme ci-dessous...
OriginalL'auteur user1419261