I file di configurazione di Rsyslog si trovano in: /etc/rsyslog.d/*.conf
Rsyslog legge i file conf in sequenza, quindi è importante nominare il file di configurazione in modo che la configurazione specifica venga caricata prima che accada qualsiasi altra cosa. Quindi, dai un nome al tuo file iniziando con zero iniziali, ad es 00-my-file.conf
. È meglio creare un nuovo file in modo che gli aggiornamenti e così via non sovrascrivano la configurazione locale.
Esempio:
if $programname == 'programname' and $msg contains 'a text string' and $syslogseverity <= '6' then /var/log/custom/bind.log
O se vuoi semplicemente scartare alcune voci:
if $programname == 'programname' then ~
Nel tuo caso: (UDP)
if $programname == 'programname' then @remote.syslog.server
& ~
Oppure (TCP)
if $programname == 'programname' then @@remote.syslog.server
& ~
Il & ~
mezzo per interrompere ulteriormente l'elaborazione delle voci corrispondenti (solo riga precedente!).
Alcune informazioni più generali:
Inoltre, assicurati sempre che i filtri siano sulla stessa riga:
# 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
& ~
Filtri utili:
$hostname
$programname
$msg
$syslogseverity
operatori:
== (equals)
contains
and
or
Maggiori informazioni: http://wiki.rsyslog.com/index.php/Configuration_Samples