Follow

!

J'ai besoin d'aide pour config un logrotate. Pls "RTFM" et autre liens de blog en réponse, s'abstenir. J'ai besoin de faire ça en 5 minutes top chorno donc j'aimerais une réponse très simple.

J'ai mon serveur Jenkins qui blinde /var/log. J'aimerais que lograte supprime les log plus vieux qu'une semaine et laisse les logs s'accumuler sur 1G max avant de faire le ménage. Comment je fais ça ?

Ping @dada @greenman

/chemin/vers/le/fichier.log
{
size 1G
weekly
missingok
notifempty
compress
delaycompress
}

Là dedans, t'as le "weekly" le "size" qui peuvent t'intéresser.

@AugierLe42e @greenman

@dada @greenman @framasky Je mets ça dans quel fichier ? (Déso, hein, j'ai vraiment pas le temps de chercher 😅)

@AugierLe42e @dada @greenman
Si t’as déjà un fichier pour jenkins dans /etc/logrotate.d, tu remplace par ça, sinon tu crées /etc/logrotate.d/jenkins.log

@AugierLe42e @dada @greenman
Attention, ça ne fonctionnera que lors des lancements de logrotate, soit une fois par jour. Tu peux mettre un logrotate -f /etc/logrotate.d/jenkins en cron si tu veux que ça surveille plus souvent.

@AugierLe42e @framasky @dada

Bon ben, tant pis je r'tourne travailler ^^
Y avait ptet la réponse sur mon wiki, mais bon ;)

@greenman @framasky @dada Attends, attends, part pas. J'ai utilisé la conf de @dada mais y'a un truc qui déconne. Quand j'exécute la conf, le fichier de log /var/log/jenkins/jenkins.log est renommé en var/log/jenkins/jenkins.log.1 puis j'ai une erreur "error: error unlinking log file /var/log/jenkins/jenkins.log.1.gz: No such file or directory"

@AugierLe42e Le chemin que tu mets doit être le chemin vers le répertoire qui contient les logs, genre /var/log/jenkins/*.log !

@greenman @framasky

@AugierLe42e @greenman @dada Sans doute parce que ça a pas encore tourné. Retente et voie si ça dit la même chose

@framasky Mais si var/log/jenkins/jenkins.log est renommé en var/log/jenkins/jenkins.log.1, Jenkins peut plus écrire dedans, ça n'a pas de sens que ça fasse ça 🤔
@greenman @dada

@framasky Ouais mais du coup, c'est /var/log/jenkins/jenkins.log.1 qui va être logrotaté, pas /var/log/jenkins/jenkins.log
@greenman @dada

@AugierLe42e @framasky @greenman @dada j'aurais fait un copytruncate pour copier le contenu du fichier avant la rotation puis purge du fichier de log Jenkins.
Y'a un mode débug
logrotate -d chemin du fichier de configuration
C'est plus explicite sur le fonctionnement

@AugierLe42e @greenman @dada Euh… je m’amuse pas à logrotater avec les tailles de fichiers, mais je pense que si.

@greenman Nan c'est bon, j'ai trouvé. Du coup, j'ai mis un maxsize et un count. Comme ça, je sais que j'aurai des fichiers de log de 20Mo max et jamais plus de 5. Donc 100Mo max.
@dada @framasky

@AugierLe42e

Ah d'acc, c'est ce qu'on appelle une coupe claire ça! Par rapport au 1go dont tu parlais précédemment.
Ça te laisse une antériorité suffisante?

@dada @framasky

@greenman Les logs Jenkins sont pas super utiles. C'est pas une brique critique de mon infra.
@dada @framasky

@framasky perso je trouve que faire une rotation "temporelle" et une rotation par taille ne fonctionne pas bien. Je préfère l'un ou l'autre.
@AugierLe42e @greenman @dada

@AugierLe42e c'est parce que tu as pas mis le ☕ au bon endroit, c'est que ca vient de @dada @greenman @framasky

@AugierLe42e

Dans un truc comme /etc/logrotate.d/jenkins

Là, tu copies/colles les trucs avec le bon chemin, et tu peux le lancer avec logrotate -f /etc/logrotate.d/jenkins directement

@greenman @framasky

Sign in to participate in the conversation
Diaspodon

Diaspodon.fr est une instance majoritairement francophone et généraliste. Aucun contenu du fédiverse n'est filtré par une décision d'administrateur ou de modérateur.