Schnipsel du jour: chronic
Mit chronic
habe ich eine nützliche kleine Entdeckung für mich gemacht, die ich unbedingt mit euch teilen möchte.
Auf einem meiner Serverlein habe ich Backup per restic
eingerichtet. Ohne weitere Konfiguration schickt der Cronjob pflichtgetreu jedes Mal eine E-Mail. Das ist unnötig, so lange alles gut läuft – aber über ein fehlgeschlagenes Backup würde ich natürlich gerne informiert werden. Ich war zu faul, das Ganze in einen Wrapper zu packen, und überlegte, ob das nicht auch irgendwie einfacher ginge.
Und an der Stelle kommt chronic
ins Spiel – denn das ist genau das, wozu es gedacht ist.
chronic - runs a command quietly unless it fails
Unter Debian ist es im Paket moreutils
enthalten.
apt install moreutils
Statt also in der crontab
mit >/dev/null 2>&1
zu hantieren (was ich ohnehin nicht leiden kann) habe ich nun eine, die ungefähr so aussieht:
MAILTO="me@example.com"
RESTIC="/usr/bin/restic -r /path/to/resticrepo -p /path/to/.repo_password --verbose=2"
# m h dom mon dow command
1 */8 * * * chronic $RESTIC backup /home/me /etc /root
47 2 * * 4 chronic $RESTIC forget --keep-last 12 --keep-daily 7 --keep-weekly 5 --keep-monthly 12 --prune
7 4 * * 0 chronic $RESTIC check
So lasse ich mir offen, an welcher Stelle ich es nutzen möchte und wo gegebenenfalls nicht. Die Jobs selbst können nun auf recht verbose geschaltet werden – denn ich erhalte ja nur dann Output, wenn etwas schief geht (AKA exit nonzero
oder Crash). Dann erhalte ich aber auch einen hinreichend aussagekräftigen Output, mit dem ich direkt arbeiten kann! Mittels chronic -ve
kann ich, wenn nötig, debuggen.
Perfekt für mich.
Manchmal sind es Kleinigkeiten 🙂
Hintergrundbild: In mein Kaleidoskop hinein fotografiert, 1500x 1000px, Bild genauer anschauen – © Marianne Spiller – Alle Rechte vorbehalten
Du nutzt etwas ähnliches, aber besser, magst die von mir eingesetzte Software nicht, findest das alles gänzlich überflüssig und würdest es sowieso ganz anders machen? Das ist wunderbar – du solltest unbedingt einen eigenen Artikel in deinem Blog dazu schreiben!
Habe ich jedoch etwas missverständlich formuliert, gar ganz ausgelassen oder mich vertippt?
Artikel in diesem Bereich kannst du überarbeiten und ergänzen!
→ Hier geht es zum öffentlichen Repository... ←