Domanda

Ho un server Apache con un file di registro degli accessi che supera i 600 MB.Ciò rende davvero difficile cercare il file o analizzarlo.
Quali software o moduli sono disponibili per Apache che creeranno una copia giornaliera del mio file di accesso per renderlo più gestibile?

È stato utile?

Soluzione

Hai guardato? logrotate - questo è probabilmente il metodo più semplice, più ampiamente disponibile e ben compreso per raggiungere questo obiettivo.È altamente configurabile e probabilmente farà il 90% di ciò di cui hai bisogno.

Altri suggerimenti

Sono un grande fan di Cronologo.Basta installarlo e convogliare i registri attraverso di esso.Per la rotazione giornaliera dei log, qualcosa del genere funzionerebbe:

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

Abbastanza pratico e, una volta installato, più semplice (secondo la mia esperienza) di logrotate.

Il comando vero e proprio per Windows, che è abbastanza difficile da trovare online, è:

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

Dove il bit "internet_access" è il nome che scegli per i tuoi file, 86400 è il numero di secondi in un giorno.Devi modificare il percorso Apache nella directory pertinente in cui hai installato Apache.

logrotate

logrotate è probabilmente la soluzione migliore.Utilizzare il file /etc/logrotate.conf per modificare le impostazioni per tutti i tuoi registri.Il tuo furgone cambia weekly A daily quindi i tronchi vengono ruotati ogni giorno.Inoltre, potresti voler aggiungere compress quindi gli archivi sono compressi.Se non ti interessano i vecchi registri, puoi impostare la rotazione rotate 4 a qualcosa di più basso.

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

Questa configurazione ruoterà il file di registro ogni volta che raggiunge una dimensione di 5 megabyte.

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

Questo sarebbe il modo migliore per reindirizzare i log di Apache.Non è necessario compilare la mod con httpd.

rotatelog.exe o cronolog.exe su sistema operativo Windows.Sono utilizzati nel comando pipe in http.conf mod_log_rota Modulo aggiuntivo per Apache solo per la rotazione del registro di accesso Logrotate solo per OS UNIX.

Ho un modulo che fa questo per te senza la necessità di tubi esterni, ecc.:

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

Ho provato ad aggiungerlo alla raccolta dei moduli Apache ma sembra che non funzioni più da un po' di tempo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top