navigation
Home
admin
|
TP - rsyslogd
June 20th, 2017
|
| Rappels |  |
Niveaux d'alerte
0 Emerg (emergency)
1 Alert
2 Crit (critical)
3 Err (error)
4 Warning
5 Notice
6 Info (informational)
7 Debug
8 none
Catégories (facilities)
Comme il n'est pas possible de disposer d'un codage pour chaque programme générant des logs, les programmes ont été groupés en catégories :
0 kern : kernel messages
1 user : user-level messages
2 mail : mail system
3 daemon : system daemons
4 auth : security/authorization messages
5 syslog : messages generated internally by syslogd
6 lpr line : printer subsystem
7 news : network news subsystem
8 uucp : UUCP subsystem
9 cron : clock daemon
10 security : security/authorization messages
11 ftp FTP : daemon
12 ntp NTP : subsystem
13 logaudit : log audit
14 logalert : log alert
15 clock : clock daemon (note 2)
16 local0 : local use 0 (local0)
[...]
23 local7 : local use 7 (local7)
Exemples
Redirection vers /var/log/syslog de tous les messages quelles que soient leur sévérité et leur catégorie.
Redirection vers /var/log/critical des messages ayant, au minimum, le niveau d'alerte "crit"
*.crit -/var/log/critical
Redirection vers /var/log/messages des messages qui n'appartiennent pas aux catégories mail, authpriv et cron
mail.none;authpriv.none;cron.none -/var/log/messages
Principales commandes
Arrêt, lancement, redémarrage...
/etc/init.d/rsyslog start |
/etc/init.d/rsyslog restart |
Surveillance des fichiers
Précisions
Le tiret ("-") devant les fichiers de log indique au système de ne pas écrire immédiatement dans les fichiers. Les données sont conservées en mémoire et écrites régulièrement des les fichiers.
Il y a donc moins d'écriture sur le disque
En cas de plantage du système les données sont perdues.
L'astérisk indique que l'on désire prendre en compte toutes les catégories ou tous les niveaux de priorité.
Le mot clé "none" indique que l'on ne désire pas prendre en compte la catégorie ou le niveau de priorité concerné.
La virgule permet de séparer des catégories :
uucp,news.crit -/var/log/spooler |
Le point virgule permet de séparer les sélecteurs :
*.info;mail.none;authpriv.none;cron.none -/var/log/messages |
Le signe égal ("=") indique que l'on désire prendre en compte le niveau de priorité concerné (sans inclure les niveaux en dessus, comme c'est le cas par défaut).
Le point d'exclamation indique que l'on ne désire pas prendre en compte le niveau de priorité concerné.
Le tilde ("~") indique la suppression des messages :
Les messages de cron seront supprimés.
Tests
La commande logger permet de générer des messages pour tester sa configuration :
# logger -p local1.err test
# tail -1f /var/log/app1/app1.err
Jun 3 15:33:46 alfa root: test |
Docs
http://www.rsyslog.com/doc
http://fr.wikipedia.org/wiki/Syslog
http://en.gentoo-wiki.com/wiki/Rsyslog
http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/ch-Viewing_and_Managing_Log_Files.html
| Exercice 1 |  |
Enoncé
Soit une application produisant des logs sur la facility local1.
Modifiez syslog pour récupérer ces logs dans le répertoire /var/log/app1
et dans des fichiers (l'extension concernant au niveau de sécurité minimum) :
/var/log/app1/app1.err
/var/log/app1/app1.log
/var/log/app1/app1.debug
Solution 1
# cat /etc/rsyslog.d/app1.conf
local1.debug /var/log/app1/app1.debug
local1.info /var/log/app1/app1.log
local1.err /var/log/app1/app1.err |
Solution 2
Répartition plus précise entre les fichiers pour éviter de doublonner les infos.
# cat /etc/rsyslog.d/app1.conf
local1.=debug /var/log/app1/app1.debug
local1.=info;local1.=notice;local1.=warning /var/log/app1/app1.log
local1.err /var/log/app1/app1.err |
| Exercice 2 |  |
Modifiez de nouveau syslog pour que les logs soient exportés vers un serveur de logs (à installer).
Solution
Config du serveur
On autorise les connexions entrantes.
Modifiez le fichier rsyslog.conf (les lignes en gras sont à décommenter) :
# cat /etc/rsyslog.conf
# /etc/rsyslog.conf Configuration file for rsyslog.
[...]
# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
# provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514
[...] |
Rajoutez le fichier de config fait précédemment :
# cat /etc/rsyslog.d/app1.conf
local1.=debug /var/log/app1/app1.debug
local1.=info;local1.=notice;local1.=warning /var/log/app1/app1.log
local1.err /var/log/app1/app1.err |
et relancez du daemon :
/etc/init.d/rsyslog restart |
Config du client
Modifiez votre fichier de config pour envoyer les infos vers le serveur de log :
# cat /etc/rsyslog.d/app1.conf
local1.* @mon_serveur |
et relancez du daemon :
/etc/init.d/rsyslog restart |
| rsyslogd server - TCP vs UDP |  |
In general, we suggest to use TCP syslog. It is way more reliable than UDP syslog and still pretty fast. The main reason is, that UDP might suffer of message loss. This happens when the syslog server must receive large bursts of messages. If the system buffer for UDP is full, all other messages will be dropped. With TCP, this will not happen. But sometimes it might be good to have a UDP server configured as well. That is, because some devices (like routers) are not able to send TCP syslog by design. In that case, you would need both syslog server types to have everything covered. If you need both syslog server types configured, please make sure they run on proper ports. By default UDP syslog is received on port 514. TCP syslog needs a different port because often the RPC service is using this port as well.
http://www.rsyslog.com/tag/tcp/
Can TCP and UDP sockets use the same port?
Yes, you can use the same port number for both TCP and UDP.
Many protocols already do this, for example DNS works on udp/53 and tcp/53.
Its like living in two different apartment buildings but the same room number...
http://stackoverflow.com/questions/6437383/can-tcp-and-udp-sockets-use-the-same-port
answers.yahoo.com/question/index?qid=20110817054531AAqtR1E
Quelle est la différence entre @ et @@ ?
# Provides UDP forwarding. The IP is the server's IP address
*.* @192.168.1.1:514
# Provides TCP forwarding. But the current server runs on UDP
# *.* @@192.168.1.1:514 |
|
|
Contact
|
|---|
Pour m'envoyer un mail, Pour me laisser un commentaire :richard.brunooo chez gmail.com |  |
|
|