Comment puis-je obtenir log4j pour supprimer les anciens rotation des fichiers de log?
Comment puis-je obtenir log4j pour supprimer les anciens rotation des fichiers de log? Je sais que je peux mettre en place automatisé des emplois (cron d'UNIX et de la tâche planifiée de Windows), mais je veux de la croix-plate-forme, et je veux que dans notre application de configuration de la journalisation dans le cadre de notre application, plutôt que de séparer le code de l'extérieur dans les OS des langages de script. Notre application n'est pas écrit dans les OS, les langages de script, et je ne veux pas faire de cette partie en eux.
Vous devez vous connecter pour publier un commentaire.
RollingFileAppender fait cela. Vous avez juste besoin de mettre en maxBackupIndex à la valeur la plus élevée pour le fichier de sauvegarde.
Journaux de rotation pour une raison, de sorte que vous ne gardez donc de nombreux fichiers journaux autour de. Dans log4j.xml vous pouvez ajouter ceci à votre nœud:
La valeur indique la log4j.xml de ne garder que 20 rotation des fichiers journaux autour de. Vous pouvez le limiter à 5 si vous voulez ou même 1. Si votre application n'est pas en enregistrement de la quantité de données, et vous avez 20 fichiers journaux couvrant les 8 derniers mois, mais vous avez seulement besoin d'une valeur de semaines de journaux, alors je pense que vous avez besoin d'ajuster votre log4j.xml "MaxBackupIndex" et "MaxFileSize" params.
Alternativement, si vous utilisez un fichier de propriétés (au lieu du xml) et que vous souhaitez économiser 15 fichiers (par exemple)
Il n'y a pas de valeur par défaut pour le contrôle de la suppression des anciens fichiers journaux créés par DailyRollingFileAppender. Mais vous pouvez écrire vos propres Appender qui supprime les anciens fichiers journaux de la même manière que le réglage de maxBackupIndex fait pour RollingFileAppender.
Instructions simples trouvé ici
De Un: