J'ai un serveur Tomcat qui crée des journaux d'accès via une valve ( org.apache.catalina.valves.FastCommonAccessLogValve ). Cette valve se charge de faire tourner le fichier journal d'accès, mais pas de les compresser ou de les supprimer après un certain temps.
Pour l'instant, j'ai un travail cron qui utilise find [...] -mtime +30 [...]
pour compresser et supprimer les journaux. Je préfère utiliser logrotate, afin que la rotation des journaux soit centralisée pour tous les journaux. Je n'aime pas avoir une solution séparée juste pour Tomcat.
J'ai essayé de lire la documentation logrotate, mais je suis toujours un peu perdu. Puis-je utiliser logrotate uniquement pour compresser et nettoyer les fichiers journaux? Comment ferais-je ça?
Ou pour contourner le problème, existe-t-il une vanne de journal d'accès Tomcat qui compressera et nettoiera les fichiers journaux?
Merci pour votre aide!
Réponses:
Assez simple que j'ai vu fonctionne comme ça.
Créez un fichier dans /etc/logrotate.d appelé tomcat contenant les éléments suivants: -
Cela s'exécute quotidiennement , comprime le fichier et en vaut 7 jours ( tournez 7 ). copytruncate signifie qu'il copiera puis tronquera le fichier d'origine afin qu'il ne soit pas nécessaire de redémarrer tomcat. manquant ok ne fera pas d'erreur s'il n'est pas là.
La valve access.log peut être modifiée pour ne pas tourner en ajoutant rotatable = false: -
la source
Script de TimP modifié - Ajout de la suppression des très anciens fichiers, ajout de l'analyse des anciens fichiers compressés.
la source
Je ne souhaitais pas changer la configuration de Tomcat, j'ai donc créé un script qui a compressé les fichiers tournés
la source
C'est étonnamment simple. Dites simplement à logrotate quels fichiers vous souhaitez spécifiquement faire pivoter.
nocreate
indique à logrotate de ne pas recréer un fichier vide après avoir déplacé l'ancien (si vous faites pivoter des fichiers dans un sous-dossier).la source
Pour la compression local_access_log.YYYY-MM-DD.txt, j'ai écrit ce script après avoir vu ce post: -
la source
Une solution simple fournie ici. Cela inclut également l'option de téléchargement s3.
https://yottabrain.org/tomcat/tomcat-log-backup/
la source