Les fichiers de configuration de Rsyslog se trouvent dans: /etc/rsyslog.d/*.conf
Rsyslog lit les fichiers de conf de manière séquentielle, il est donc important que vous nommiez votre fichier de configuration afin que la configuration spécifique soit chargée avant toute autre chose. Donc, nommez votre fichier en commençant par les premiers zéro, c.-à-d.00-my-file.conf
. Il est préférable de créer un nouveau fichier pour que les mises à jour, etc. ne remplacent pas votre configuration locale.
Exemple:
if $programname == 'programname' and $msg contains 'a text string' and $syslogseverity <= '6' then /var/log/custom/bind.log
Ou si vous souhaitez simplement supprimer certaines entrées:
if $programname == 'programname' then ~
Dans votre cas: (UDP)
if $programname == 'programname' then @remote.syslog.server
& ~
Ou (TCP)
if $programname == 'programname' then @@remote.syslog.server
& ~
Le & ~
moyen d'arrêter le traitement des entrées correspondantes (ligne précédente uniquement!).
Quelques informations plus générales:
Assurez-vous également que les filtres sont sur la même ligne:
# Example: Log mail server control messages to mail-queue.log
if $hostname == 'titus'\
and $programname == 'smtp.queue.'\
and $syslogseverity <= '6' then /var/log/titus/mail-queue.log
& ~
Filtres utiles:
$hostname
$programname
$msg
$syslogseverity
Les opérateurs:
== (equals)
contains
and
or
Plus d'informations: http://wiki.rsyslog.com/index.php/Configuration_Samples