Installer et configurer rsyslog sur Gentoo / Calculate Linux
Table des matières
Rsyslog permet de transférr les messages des journaux d'événements sur un réseau IP. il implémente le protocole basique syslog - qui centralise les journaux d'événements, permettant de repérer plus rapidement et efficacement les défaillances d'ordinateurs présents sur un réseau. Il présente la particularité d'en étendre les fonctionnalités en permettant, notamment la rotation automatique des fichiers.
Pas besoin de stocker en base mysql => FLAGS par défaut OK
On active les journaux système au boot du serveur :
Et on lance le service :
On vérifie que le fichiers /var/log/messages se remplisse bien:
La configuration plus fine se fait dan le fichier /etc/rsyslog.conf.
C'est dans ce fichier qu'on va pouvoir personnaliser les niveaux de logs l'emplacement des fichiers de logs à créer en fonction de la nature des informations.
Pour chaque fichier journal, logrotate réalise 2 opération simultanées :
Comme d'habitude, on liste un coup les paquets avant d'installer :
Et on installe:
Le fichier de configuration principal est /etc/logrotate.conf, les autres fichiers de configurations sont dans le répertoire /etc/logrotate.d/.
Voici un extrait de mon fichier /etc/logrotate.conf :
Introduction
Rsyslog permet de transférr les messages des journaux d'événements sur un réseau IP. il implémente le protocole basique syslog - qui centralise les journaux d'événements, permettant de repérer plus rapidement et efficacement les défaillances d'ordinateurs présents sur un réseau. Il présente la particularité d'en étendre les fonctionnalités en permettant, notamment la rotation automatique des fichiers.
Installation
Code BASH :
emerge -p rsyslog [ebuild N ] app-admin/rsyslog-5.8.11 USE="ssl zlib -dbi -debug -doc -extras -kerberos -mysql -oracle -postgres -relp -snmp -static-libs -zeromq"
Pas besoin de stocker en base mysql => FLAGS par défaut OK
Code BASH :
emerge rsyslog
Configuration
Configuration de base
On active les journaux système au boot du serveur :
Code BASH :
rc-update add rsyslog default
Et on lance le service :
Code BASH :
/etc/init.d/rsyslog start
On vérifie que le fichiers /var/log/messages se remplisse bien:
Code BASH :
tailf /var/log/messages 2013-03-29T22:23:56.500621+01:00 oxygen kernel: IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready 2013-03-29T22:23:56.500625+01:00 oxygen kernel: usb 4-1: USB disconnect, device number 2 2013-03-29T22:23:56.500639+01:00 oxygen kernel: device-mapper: ioctl: 4.23.1-ioctl (2012-12-18) initialised: dm-devel@redhat.com 2013-03-29T22:23:56.500645+01:00 oxygen kernel: ip_tables: (C) 2000-2006 Netfilter Core Team 2013-03-29T22:23:56.500648+01:00 oxygen kernel: i2c /dev entries driver 2013-03-29T22:23:56.500652+01:00 oxygen kernel: NET: Registered protocol family 17
Configuration avancée
La configuration plus fine se fait dan le fichier /etc/rsyslog.conf.
C'est dans ce fichier qu'on va pouvoir personnaliser les niveaux de logs l'emplacement des fichiers de logs à créer en fonction de la nature des informations.
logrotate : limiter la taille des fichiers journaux
Pour chaque fichier journal, logrotate réalise 2 opération simultanées :
- la rotation : il archive le fichier journal sous un autre nom et supprime la plus ancienne archive
- la compression : il compresse éventuellement le fichier journal avant de l'archiver
Installer logrotate
Comme d'habitude, on liste un coup les paquets avant d'installer :
Code BASH :
emerge -p logrotate [ebuild N ] app-admin/logrotate-3.8.3 USE="acl (-selinux)"
Et on installe:
Code BASH :
emerge logrotate
Configurer logrotate
Le fichier de configuration principal est /etc/logrotate.conf, les autres fichiers de configurations sont dans le répertoire /etc/logrotate.d/.
Voici un extrait de mon fichier /etc/logrotate.conf :
Code BASH :
grep -v -E "(#|^$)" /etc/logrotate.conf weekly rotate 52 create dateext compress include /etc/logrotate.d notifempty nomail noolddir /var/log/wtmp { monthly create 0664 root utmp rotate 1 } /var/log/btmp { missingok monthly create 0600 root utmp rotate 1 }
- weekly : indique une rotation toutes les semaines
- rotate : indique le nombre de rotations après lesquelles les logs compressés sont supprimés
- compress : indique que les anciens logs sont compressés (avec gzip)
- notifempty : ne fait pas tourner les logs vides
- nomail : n'envoie pas de mails pour les vieux logs à supprimer
- noolddir: stocke les vieux log dans le même dossier que les logs.