Il post descrive i passaggi per creare un filtro basato sulle proprietà per eliminare (sopprimere) un particolare messaggio o reindirizzare i messaggi del programma a un particolare file di registro.
La sintassi
Il sistema per scrivere un filtro basato sulle proprietà è mostrato di seguito:
:[Available Properties], [compare-operations], [customized expression] [path/log file]
Dalla pagina man di rsyslog.conf
L'azione di scarto (~)
Se l'azione di eliminazione viene eseguita, il messaggio ricevuto viene immediatamente eliminato. Scarta è solo il singolo carattere tilde senza ulteriori parametri.
Esempio:
*.* ~ # discards everything.
Riavvia rsyslog
È necessario riavviare il servizio rsyslog dopo aver aggiornato rsyslog.conf
# service rsyslog restart # CentOS/RHEL 6 # systemctl restart rsyslog # CentOS/RHEL 7
Esempio 1:scarta (sopprimi) un messaggio particolare
Hai un messaggio come mostrato di seguito che vuoi eliminare o sopprimere:
June 4 22:20:21 geeklab app: [804617.902850] this is a test message to discard
Aggiungi la regola come mostrato di seguito al file /etc/rsyslog.conf:
# vi /etc/rsyslog.conf :msg, contains, "test message to discard" ~
Riavvia il servizio rsyslog dopo aver aggiornato il file rsyslog.conf.
# service rsyslog restart # CentOS/RHEL 6 # systemctl restart rsyslog # CentOS/RHEL 7
Esempio 2:reindirizzare i messaggi del programma a un particolare file di registro ma non ai messaggi
Hai un messaggio come mostrato di seguito che vuoi reindirizzare a un file particolare, /var/log/custom_app.log in questo esempio:
June 4 22:20:21 geeklab appname: [804617.902850] this is a test message to discard
Aggiungi la regola come mostrato di seguito al file /etc/rsyslog.conf:
:programname, isequal, "appname" /var/log/custom_app.log :programname, isequal, "appname" ~
Riavvia il servizio rsyslog dopo aver aggiornato il file rsyslog.conf.
# service rsyslog restart # CentOS/RHEL 6 # systemctl restart rsyslog # CentOS/RHEL 7