Nettoyage des fichiers journaux d'accès Tomcat localhost

Solr tourne sur Tomcat 8. Nous avons des problèmes dans nos différents environnements avec les fichiers localhost_access_log qui remplissent les serveurs. Ces fichiers sont créés par la Vanne d'Accès du Journal du serveur.XML configuré comme ceci -

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
   prefix="localhost_access_log" 
   suffix=".txt" pattern="%h %l %u %t &quot;%r&quot; %s %b" />

D'après ce que j'ai lu, il n'y a pas de moyen OOTB dans Tomcat pour nettoyer les vieux fichiers journaux. Que puis-je mettre en œuvre pour nettoyer les anciens fichiers journaux d'accès?

3
demandé sur John 2015-08-07 23:44:08

2 réponses

vous pouvez avoir une rotation de journal et ensuite choisir quels journaux fichiers à supprimer

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" rotatable="true" renameOnRotate="true" pattern="%h %l %u %t &quot;%r&quot; %s %b" />

comme la rotation est définie à true par défaut, vous devriez déjà l'avoir. Ensuite, vous pouvez par exemple supprimer les journaux de plus de 5 jours:

Pour supprimer les fichiers datant de plus de 10 jours, les commandes suivantes peuvent être utilisées.

Unix
find /path/to/httplogs/ -name "*.log" -type f -mtime +10 -exec rm -f {} \;

For Windows Server OS:
forfiles /p "C:\path\to\httplogs" /s /m *.log /d -10 /c "cmd /c del @PATH"
6
répondu Erwan C. 2017-11-09 13:04:37

vous pouvez désactiver log localhost_access en commentant la ligne de configuration.

ou

sous linux, défini quotidiennement cron job pour supprimer les vieux fichiers.

0 0 * * * /path/to/your/script/cleanup.sh

cleanup.sh

#This will remove files older than a week.
find /TOMCAT_HOME/logs -name "localhost_access_log*.txt" -type f -mtime +7 -exec rm -f {} \;
2
répondu Darshan Patel 2017-05-23 12:34:01