logrotate nous fait des fichier totolog.1, totolog.2, etc. ce qui est intéressant mais pas forcement très clair, d'autant plus quand les fichiers ont des durées de rotation différentes. Pour repérer ses petits entre les différents fichiers de logs ce n'est pas forcement le plus évident (je trouve).
Or une solution est possible avec syslog-ng :
mettre directement les fichiers dans des répertoires type
AAAA/MM/JJ
(ou mieux HOSTS/.... si on fait un serveur de log ;))
Comment ça se fait ? Le plus simplement du monde : dans les définition des destinations, on utilise les variable $HOSTS $YEAR ...
exemple pour auth.log
destination authlog {
file("/var/log/HOSTS/$HOST/$YEAR/$MONTH/$DAY/auth.log");
};
Bien entendu on peux utilise ce style de log avec le style normal en créant deux fichiers de destination par exemple.
L'un des ennui de cette méthode est le nombre important de fichier créé (remarque : il ne crée les fichiers que si il doit écrire dedans :
supposons que j'aie une destination toto qui est écrite que très peu de fois ; mettons 3 fois par mois; ce fichier ne seras crée que les jours (si on utilise $DAY) ou on aura du écrire dedans : pas de fichier vide .)
Tout commentaire est apprécié :)
# Client de log
Posté par pvincent . Évalué à 1.
Je trouve que c'est bien, mais ce qui m'embête c'est de lire les logs.
Avez-vous des astuces pour faciliter la lecture du style :
* tail -f $dernier_fichier_encours
* join des 2 dernières semaines
* grep sur +sieurs fichiers, etc...
J'imagine qu'il faut se palucher quelques scripts maisons...
# syslog-ng & mysql
Posté par nanard . Évalué à 0.
de faire des requetes, et de demander l'affichage par la date voulue.
Allez tous vous faire spéculer.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.