Marvin Pascale

[B.Log]

05 Dicembre 2021

MongoDB logs

Continua la serie su MongoDB e Percona server per MongoDB (PSMDB) con una veloce guida sulla gestione dei log.

mongodb.log

Come impostazione di default di MongoDB che Percona registrano gli eventi nel log /var/log/mongodb/mongod.log e vanno avanti ad oltranza (o a finire dello spazio disco) ma questa inesorabile traggedia può esere sventata con l’ausilio di un vecchio amico: logrotate.

Forziamo la rotation del log

In caso di necessità, per forzare mongod a ruotare il log basta inviare un segnale SIGUSR1

# kill -SIGUSR1 ${pidof mongod)

oppure da shell mongo

# mongo
> use admin
> db.adminCommand( { logRotate : 1 } )

Gestiamo il tutto con logrotate

Per una gestione migliore e automatica è meglio utilizzare logrotate.

Creiamo il file di configurazione /etc/logrotate.d/mongod

/var/log/mongodb/mongod.log {
  daily
  size 100M
  rotate 30
  missingok
  compress
  delaycompress
  notifempty
  create 640 mongod mongod
  sharedscripts
  postrotate
    /bin/kill -SIGUSR1 `cat /var/run/mongodb/mongod.pid 2>/dev/null` >/dev/null 2>&1
  endscript
}

Con cadenza giornaliera, se il file di log supera i 100 MB verrà forzata la rotazione e verranno compressi e conservati gli ultimi 30 file.


Le opinioni in quanto tali sono opinabili e nulla ti vieta di approfondire l’argomento.

Risorse: