web-dev-qa-db-fra.com

rsyslog filtrer par tag

Je voudrais créer un fichier de configuration rsyslogd qui filtre le syslog pour une balise spécifique et génère cette balise dans un fichier spécifique.

Je crée un fichier de règles sous /etc/rsyslog.d

# Log kernel generated UFW log messages to file
:syslogtag, isequal, "ABC" /var/log/ABC.log

# Uncomment the following to stop logging anything that matches the last rule.
# Doing this will stop logging kernel generated UFW log messages to the file
# normally containing kern.* messages (eg, /var/log/kern.log)
#& ~

Le fichier est créé, mais les messages avec la balise ABC vont toujours dans le fichier syslog. Comment puis-je le faire correctement?

4
Mellowcandle

Votre fichier de règles devrait ressembler à ceci:

:syslogtag, isequal, "ABC:" /var/log/ABC.log

Le syslogtag contient un : et doit être placé entre "".

De plus, le nom du fichier doit être avant 50-default.conf dans l'ordre alphabétique (par exemple 30-ABC.conf).

Notez que le fichier /var/log/ABC.log devrait être accessible en écriture à l'utilisateur 'syslog'.

Source: comment classer les messages rsyslog par balises .

4
Radu Rădeanu