Question

J'ai un serveur Apache doté d'un fichier journal d'accès dépassant 600 Mo.Cela rend très difficile la recherche ou l’analyse du fichier.
Quels logiciels ou modules pour Apache sont disponibles pour faire une copie quotidienne de mon fichier d'accès afin de le rendre plus gérable ?

Était-ce utile?

La solution

As-tu regardé logrotation - c'est probablement la méthode la plus simple, la plus largement disponible et la mieux comprise pour y parvenir.Il est hautement configurable et fera probablement 90 % de ce dont vous avez besoin.

Autres conseils

je suis un grand fan de Cronologue.Installez simplement et transférez vos journaux à travers celui-ci.Pour la rotation quotidienne des journaux, quelque chose comme ceci fonctionnerait :

ErrorLog  "|/usr/bin/cronolog /path/to/logs/%Y-%m-%d/error.log"
CustomLog "|/usr/bin/cronolog /path/to/logs/%Y-%m-%d/access.log" combined

Assez pratique, et une fois installé, plus facile (d'après mon expérience) que logrotate.

La commande actuelle pour Windows, qui est assez difficile à trouver en ligne, est la suivante :

CustomLog '|" "*Apache-Path/bin/rotatelogs.exe" 
    "**Apache-Path*/logs/backup/internet_access_%d-%m-%y.log" 86400' combined

Là où le bit "internet_access" est le nom que vous choisissez pour vos fichiers, le 86400 est le nombre de secondes dans une journée.Vous devez modifier le chemin Apache vers le répertoire approprié dans lequel vous avez installé Apache.

logrotation

logrotate est probablement la meilleure solution.Utiliser le fichier /etc/logrotate.conf pour modifier les paramètres de tous vos journaux.Tu changes de van weekly à daily les journaux sont donc tournés tous les jours.Vous souhaiterez peut-être également ajouter compress donc les archives sont compressées.Si vous ne vous souciez pas des anciens journaux, vous pouvez définir la rotation rotate 4 à quelque chose de plus bas.

CustomLog "|bin/rotatelogs /var/logs/logfile 5M" commun

Cette configuration fera tourner le fichier journal chaque fois qu'il atteint une taille de 5 mégaoctets.

ErrorLog "|bin/rotatelogs /var/logs/errorlog.%Y-%m-%d-%H_%M_%S 5M" 

Ce serait le meilleur moyen de rediriger les journaux Apache.Pas besoin de compiler le mod avec httpd.

rotatelog.exe ou cronolog.exe sur le système d'exploitation Windows.Ils sont utilisés dans la commande Pipe dans le module supplémentaire HTTP.conf MOD_LOG_ROTATE pour APACHE UNIQUEMENT pour l'accès à la rotation du journal Logrotate uniquement pour UNIX OS.

J'ai un module qui fait cela pour vous sans avoir besoin de tuyaux externes, etc. :

http://www.poptart.org/bin/view/Poptart/ModAutorotate

J'ai essayé de l'ajouter à la collection de modules Apache mais cela semble être en panne depuis un moment maintenant.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top