Rechercher : dans
Par :

Syslog.conf date dans le nom de fichier log

Dernière réponse le 7 oct 2008 à 17:18:03 sbouli, le 3 oct 2008 à 10:10:32 
 Signaler ce message aux modérateurs

Bonjour,

Je cherche un moyen de paramétrer mon syslog pour que les log mail ne soit plus au format :
mail.log
mais plutot
mail.2008_10_03.log ou 2008_10_03.mail.log
ou peut importe mais avec la date du jour de log dans le nom .....


Est-ce possible ??

Cordialement,

Stéphane

Meilleures réponses pour « syslog.conf date dans le nom de fichier log » dans :
[Mozilla Thunderbird] Fichier winmail.dat VoirSymptôme : Un correspondant vous envoie un mail avec une pièce jointe, mais celle-ci n'apparait pas dans le mail : il n'y a qu'un fichier winmail.dat attaché. Explication : Ce problème survient lorsque votre correspondant vous expédie un mail...
[Excel] Chemin et nom de stockage de feuille de calcul VoirIndiquer automatiquement le chemin d'accès (path) et le nom de stockage de toute feuille de calcul Noter dans une cellule (A& par exemple) la formule : =cellule("nomfichier";A1) A chaque sauvegarde et/ou déplacement de fichier dans votre...
Fichier bat de sauvegarde sous Excel avec increment date VoirProblème J'utilise un fichier à longueur de journée et j'aurai voulu faire un petit fichier type .BAT pour lancer une sauvegarde automatique avec un increment de date. Le fichier de base que j'utilise : D:_SAUVEREQUETTES ER14.xls Je...
Fichier DAT VoirFormat DAT Un fichier DAT Un fichier .dat est un fichier de données (.DAT signifie data). En général, il s'agit d'un fichier binaire, créé par un programme et utilisable uniquement par ce programme, ce qui signifie qu'il n'est pas censé être ouvert...
Oracle - Les fichiers d'une base Oracle VoirLes fichiers physiques d'une base Oracle Les fichiers physiques d'une base Oracle permettent de stocker de manière persistante les données manipulées par Oracle, tandis que la mémoire sert à optimiser la vitesse de fonctionnement de la base de...
Perl - Les fichiers VoirLa notion de filehandle On appelle filehandle (traduisez descripteur de fichier), dans un programme Perl, le nom permettant de manipuler une connexion d'entrée-sortie (les entrées-sorties standards vues précédemment sont connues par les filehandles...

1

asevere, le 3 oct 2008 à 10:49:29
  • +2

C'est possible dans une certaines mesure avec logrotate...

Grosso-modo, tu peux demander une rotation des logs chaque jour, et changer le suffix (par defaut: .1 .2 .3 etc.) par une date.

Dans ce cas, seul le fichier du jour n'aura pas de date.

Jettes un oeil du coté de la commande man 8 logrotate ou reviens ici si tu veux plus d'info, des exemple de configuration, etc.

A plus
Une belette, un lapin !?
C'est pas normal!

Répondre à asevere

2

sbouli, le 3 oct 2008 à 10:59:03

Bonjour,

Merci pour cette réponse, cependant rien ne figure sur cette option dans http://www.delafond.org/traducmanfr/man/man8/logrotate.8.htm­l

La seule référence au suffix est dans l'option extension.

Par ailleur, quelle date logrotate va-t-il utiliser ? s'il change la date à chaque rotation de log, ça ne sert à rien, j'ai besoin d'avoir la date fixe du début de log (pour le moment j'ouvre le fichier et je regarde la date de la première ligne mais c'est SUPER lour pour les gz).

Merci pour votre aide.

Stéphane

Répondre à sbouli

3

asevere, le 3 oct 2008 à 11:28:30
  • +2

Re,

http://linux.die.net/man/8/logrotate voir la ligne dateext

Après sur la date prise, à toi de faire des tests, s'il fait la rotation tout les matins à 6 heures par exemple, dans le fichier mail.20081003.gz tu auras les logs du 02 10 2008 à 6h01 au 03 10 2008 à 6h00, mais tu peux demander a ce que logrotate s'execute à 0h00 tout les jours (dans /etc/crontab, la ligne qui charge les script de /etc/cron.daily, tu as plusieurs solutions, ajouter une ligne dans ce fichier pour logrotate et supprimer logrotate de /etc/cron.daily, executer /etc/cron.daily/* a minuit, etc.)

Une belette, un lapin !?
C'est pas normal!

Répondre à asevere

4

sbouli, le 3 oct 2008 à 11:59:09

Ce serait effectivement parfais. cependant, j'ai lancé manuellement plusieurs fois le logrotate (avec -f) et je n'ai pas d'heure dans les noms des fichiers de logs ... voici mon logrotate.d/postfix


/var/log/mail/* {
    compress
    daily
    dateext
    rotate 10
    maxage 10
    olddir /var/log/mail/archives
    delaycompress
    notifempty
    sharedscripts
    create 644 root root
    postrotate
        /etc/init.d/sysklogd restart > /dev/null
    endscript
}

Répondre à sbouli

5

dubcek, le 3 oct 2008 à 12:02:11

Hello
ou par un script dand cron à 0h01 qui change le nom du fichier log et redémarre syslogd
sed -i s/mail.log/mail.$(date).log/ /etc/syslog.conf
pkill -HUP syslogd

Répondre à dubcek

6

 sbouli, le 7 oct 2008 à 17:18:03

En fait ça a fonctionné, il fallait juste etre patient, le lancemen avec -f ne fonctionnait pas lui et par contre, il faut "purger" manuellement les fichiers antérieurs ...

Stéphane

Répondre à sbouli