GNU/Linux >> Tutoriels Linux >  >> Linux

Comprendre les actions rsyslog

Les actions spécifient quoi faire avec les messages filtrés par un sélecteur. Voici quelques-unes des actions disponibles.

Enregistrement des messages rsyslog dans les fichiers journaux

Pour enregistrer un message rsyslog dans un fichier journal, spécifiez le chemin absolu vers le fichier journal après le sélecteur. L'exemple suivant sélectionne tous les messages cron et l'action les enregistre dans /var/log/cron.log fichier journal :

cron.* /var/log/cron.log

Vous pouvez spécifier un périphérique tty ou /dev/console existant pour envoyer les messages rsyslog vers la sortie standard.

Envoi de messages rsyslog sur le réseau

Utilisez la syntaxe suivante pour transférer les messages rsyslog vers une machine distante :

@[zNUMBER]HOST:[PORT]

– Utilisez un seul signe arobase (@) pour spécifier UDP comme protocole de transport.
– Utilisez un double signe arobase (@@) pour spécifier TCP.
– Le champ zNUMBER facultatif active un niveau de compression zlib de 1 à 9.
– Le champ HOST spécifie l'hôte de réception.
– Le champ facultatif PORT spécifie le numéro de port sur l'hôte de réception.

Par exemple, pour transférer des messages vers 192.168.10.101 en utilisant le protocole UDP :

*.* @192.0.2.101

Pour transférer les messages vers le port 18 sur "host02.example.com" à l'aide du protocole TCP :

*.* @@host02example.com:18

Envoi de messages rsyslog à des utilisateurs spécifiques

Spécifiez le nom d'utilisateur auquel envoyer les messages rsyslog. Séparez les noms d'utilisateur par une virgule (,) pour spécifier plusieurs utilisateurs. Utilisez un astérisque (*) pour envoyer des messages à chaque utilisateur actuellement connecté. L'exemple suivant envoie tous les messages du noyau à l'utilisateur Joe :

kern.* joe

Exécuter un programme

Vous pouvez exécuter un programme pour les messages rsyslog sélectionnés. Pour spécifier un programme à exécuter, préfixez-le avec un caractère caret (^). Spécifiez un modèle qui formate le message reçu et le transmet à l'exécutable spécifié sous la forme d'un paramètre d'une ligne. L'exemple suivant traite tous les messages du noyau par le modèle knl et les transmet au programme knlprog.

kern.* ^knl-prog;knl

Écrire des messages rsyslog dans une base de données

Vous pouvez utiliser l'action d'écriture de base de données pour écrire des messages rsyslog sélectionnés directement dans une table de base de données. Le rédacteur de la base de données utilise la syntaxe suivante :

:PLUGIN:DB_HOST,DB_NAME,DB_USER,DB_PASSWORD;[TEMPLATE]

– Le champ PLUGIN spécifie le plug-in qui effectue l'écriture de la base de données.
– rsyslog prend en charge les bases de données MySQL et PostgreSQL.
– L'intégration MySQL nécessite rsyslogmysql progiciel.
– PostgreSQL nécessite le rsyslog-pgsql forfait. Vous devez également charger le ommysql module pour MySQL et ompgsql module pour PostgreSQL.

Supprimer les messages rsyslog

Utilisez le caractère tilde (~) pour supprimer les messages sélectionnés. La règle suivante supprime tous les messages d'actualité :

news.* ~

Vous pouvez spécifier plusieurs actions pour un sélecteur en spécifiant les actions suivantes sur une nouvelle ligne et en faisant précéder les actions d'une esperluette (&). Spécifiez le sélecteur sur la première ligne d'action. Voici un exemple de règle avec plusieurs actions :

kern.* joe
& ^knl-prog;knl
& @192.0.2.101

Dans l'exemple précédent, tous les messages du noyau sont :
– Envoyés à l'utilisateur joe
– Traités par le modèle knl et transmis à l'exécutable knl-prog
– Transmis à 192.0.2.101 en utilisant le protocole UDP

Comprendre les options de filtre rsyslog
Comprendre les modèles rsyslog
CentOS / RHEL 6,7 :Comment augmenter la verbosité des messages du journal système (rsyslogd)
CentOS / RedHat :Guide du débutant pour l'administration des fichiers journaux


Linux
  1. Installer un serveur de journal centralisé avec Rsyslog dans Debian 9

  2. Comprendre les Si ?

  3. Comprendre l'utilitaire logrotate

  4. Comprendre le fichier /etc/rsyslog.conf pour configurer la journalisation système

  5. Les messages auditd se remplissent /var/log/messages

Comprendre les autorisations de fichiers Linux

Comprendre les processus sous Linux

Linux - Comprendre la connexion Linux ?

Comprendre le bureau Linux ?

/etc/rsyslog.conf – Configurer un filtre pour supprimer ou rediriger les messages

Comprendre les mappages de ports Docker