GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come impedire che i registri diventino troppo grandi?

Ho un cronjob che esegue alcuni script Python e generano un enorme file di registro. Come posso evitare che diventino così grandi? Sarebbe perfetto se il file fosse cancellato una volta raggiunta una certa dimensione. Perché ogni pochi giorni, il file ora è di 50 MB, ma diventa molto più grande e impiega un'eternità per scaricare e analizzare un bug su una connessione Internet lenta. Voglio solo vedere le ultime 1000 righe per vedere dove lo script è andato storto.

So che potrei programmare qualcosa per farlo, ma mi chiedevo solo se Linux avesse qualcosa che non sapevo. Immagino che i file di registro di grandi dimensioni siano un problema comune. Grazie.

Risposta accettata:

Di solito dovresti registrare solo l'attività che ti interessa e dovresti configurare il programma in modo che sia meno dettagliato, se possibile.

Come suggerito, utilizzando logrotate è il solito modo di gestire i file di registro. Ma invece di aggiungere contenuto a /etc/logrotate.conf dovresti aggiungere il tuo lavoro a /etc/logrotate.d/ , altrimenti dovresti esaminare più differenze di file di configurazione durante gli aggiornamenti di rilascio.

Ecco un esempio che ho creato per uno script php:

/var/log/some-php-app/*.log {
        daily
        rotate 10
        delaycompress
        compress
        notifempty
        missingok
}
  • /var/log/some-php-app/*.log – È il percorso in cui si trovano i file di registro e il relativo nome. Come puoi vedere, puoi anche utilizzare i caratteri jolly per applicare la regola a più di un file di log.
  • ogni giorno – Ruota i file di registro ogni giorno. Alternative:oraria, settimanale, mensile, annuale, maxsize, maxage
  • ruota conta – I file vengono conteggiati a rotazione prima di essere rimossi o spediti all'indirizzo specificato in una direttiva di posta.
  • compressione del ritardo – Rimanda la compressione del file di registro precedente al ciclo di rotazione successivo.
  • comprimi – Comprime le vecchie versioni dei file di registro con gzip. Puoi usare zless invece di less per visualizzare i file.
  • notificato – Non ruota il registro se è vuoto.
  • manca bene – Passa al processo di rotazione successivo senza emettere un messaggio di errore, quando il file di registro è mancante.

Dai un'occhiata alla manpage di logrotate per ulteriori opzioni.


Ubuntu
  1. Come disconnettersi istantaneamente da Ubuntu da un terminale

  2. Come leggere una variabile da un file?

  3. Come creare un file .img da .iso su Ubuntu?

  4. Come installare Ubuntu dal file ISO?

  5. Come accedere all'account amministratore da un account non amministratore?

Come visualizzare e leggere i file di registro di Linux

Come prevenire il timeout di SSH

Come visualizzare i dati da un file di testo in Linux

Come impedire a PHP-FPM di consumare troppa RAM in Linux

Come impedire a /var/log/kern.log.1 di consumare tutto lo spazio su disco?

Come accedere ai file di Windows da Ubuntu?