web-dev-qa-db-fra.com

Est-il possible d'exécuter une vérification logrotate manuellement?

Est-il possible d'exécuter manuellement une itération de logrotate sans la planifier à intervalles réguliers?

491
Vladimir

Oui: logrotate --force $CONFIG_FILE

667
pilcrow

logrotate -d [your_config_file] appelle le mode de débogage, vous donnant une description détaillée de ce qui se produira, mais en laissant les fichiers journaux intacts.

501
sandover

Si vous souhaitez forcer l'exécution d'un seul répertoire ou des fichiers journaux d'un démon, vous pouvez généralement trouver la configuration dans /etc/logrotate.d et ils fonctionneront de manière autonome.

N'oubliez pas que la configuration globale spécifiée dans /etc/logrotate.conf ne s'appliquera pas. Par conséquent, vous devez vous assurer de spécifier toutes les options souhaitées dans le fichier /etc/logrotate.d/[servicename] config.

Vous pouvez l'essayer avec -d pour voir ce qui se passerait:

logrotate -df /etc/logrotate.d/nginx

Ensuite, vous pouvez exécuter (en utilisant nginx comme exemple):

logrotate -f /etc/logrotate.d/nginx

Et les seuls journaux nginx seront soumis à une rotation.

110
trisweb

Vous voudrez peut-être l'exécuter en mode verbose + force.

logrotate -vf /etc/logrotate.conf

58
vivekv

La façon d’exécuter tout logrotate est la suivante:

logrotate -f /etc/logrotate.conf

qui exécutera le fichier logrotate principal, qui comprend également les autres configurations logrotate

34
Allen Hancock

Émettez la commande suivante, la manière d'exécuter logrotate spécifié:

logrotate -vf /etc/logrotate.d/custom

Les options:

-v: montre le processus

-f: forçage de l'exécution

personnalisé: paramètre de journal défini par l'utilisateur

par exemple: mongodb-log

# mongodb-log rotate

/data/var/log/mongodb/mongod.log {
    daily
    dateext
    rotate 30
    copytruncate
    missingok
}
21
wangc

editez /var/lib/logrotate.status pour réinitialiser la date de la dernière rotation du fichier journal que vous souhaitez tester.

Puis lancez logrotate YOUR_CONFIG_FILE.

Vous pouvez également utiliser l’option --force, mais l’édition de logrotate.status vous donne plus de précision sur ce qui est tourné et ce qui ne l’est pas.

4
Ben Aveling

Création d'un script shell pour résoudre le problème.

http://www.ict.griffith.edu.au/anthony/software/#logrotate_one

Ce script n'exécutera que le fichier de sous-configuration logrotate unique se trouvant dans "/etc/logrotate.d", mais inclura les paramètres globaux à partir du fichier de configuration globale "/etc/logrotate.conf". Vous pouvez également utiliser d'autres otpions pour le tester ...

Par exemple...

  logrotate_one -d syslog
1
anthony