test.sh
#!/bin/bash
echo "Hello World"
test2.sh
#!/bin/bash
while true
do
sh test.sh >> /script_logs/test.log &
done
Je souhaite mettre en œuvre la lecture de Logrotate pour contrôler la taille du fichier journal, alors comment mettre en œuvre la logrotate, si la situation est comme ci-dessus?
que diriez-vous d'utiliser savelog
?
Il est disponible à Debian et Rh et à peu près toutes les autres distro Linux que je connais. C'est un script de shell/bin/sh shell, donc devrait fonctionner sur tout autre Unix aussi.
par exemple. Avant d'écrire quelque chose à test.log
Cours savelog -n -c 7 test.log
. Cela conservera les 7 versions non vides de test.log. Par défaut, il compressera des grumes tournées (mais cela peut être désactivé avec -l
).
Si vous en avez besoin, vous pouvez vérifier la taille de test.log
et seulement _ savelog
IT s'il est sur une certaine taille.
J'ai écrit un Logrotee ce week-end. Je ne voudrais probablement pas si j'ai lu @ jdebp's bonne réponse sur multilog
.
Je me suis concentré sur le poids léger et être capable de bzip2 ses morceaux de sortie comme:
verbosecommand | logrotee \
--compress "bzip2 {}" --compress-suffix .bz2 \
/var/log/verbosecommand.log
Il y a beaucoup à faire et à tester encore.
Comme je ne peux pas encore ajouter des commentaires à la réponse acceptée , A Busybox indice, où du
n'a pas une -b
drapeau:
du /var/log/file | tr -s '\t' ' ' | cut -d' ' -f1