2.7 KiB
2.7 KiB
Bash-Logging-Tool
Ein einfaches Bash-Script zum Logging in anderen Scripten. Es unterstützt verschiedene Log-Levels und schreibt sowohl auf die Konsole als auch in eine Logdatei.
Features
- Mehrere Log-Levels: INFO, WARN, ERROR, START, END
- Duales Logging: Ausgabe auf Konsole und in eine Logdatei
- Automatische Verzeichniserstellung: Erstellt das Log-Verzeichnis, falls nicht vorhanden
- Zeitstempel: Jeder Eintrag wird mit Datum und Uhrzeit versehen
- Flexible Logdatei: Standard- oder benutzerdefinierter Pfad
Installation
- Speichere das Script als
logger.shin deinem Projektverzeichnis. - Binde es in deinem Script mit
sourceein:source /pfad/zu/logger.sh
Verwendung
1. Initialisierung
Setze die Logdatei (optional, Standard: $HOME/log.txt):
log_init "/pfad/zur/logdatei.log" # Benutzerdefinierter Pfad
# oder
log_init # Nutzt den Standardpfad ($HOME/log.txt)
2. Logging-Funktionen
| Funktion | Beschreibung | Beispiel |
|---|---|---|
log_info |
Informationsmeldung loggen | log_info "Das ist eine Info." |
log_warn |
Warnmeldung loggen | log_warn "Achtung, etwas ist ungewöhnlich!" |
log_error |
Fehlermeldung loggen | log_error "Ein Fehler ist aufgetreten!" |
log_start |
Script-Start markieren | log_start "Backup-Prozess" |
log_end |
Script-Ende markieren | log_end "Backup-Prozess" |
3. Beispiel
#!/bin/bash
source logger.sh
log_init "$HOME/mein_script.log"
log_start "Datenverarbeitung"
log_info "Starte Datenimport..."
# ... dein Code ...
log_warn "Datenformat unvollständig, aber fortsetzbar."
# ... dein Code ...
log_error "Fehler beim Schreiben der Datei!"
log_end "Datenverarbeitung"
Konfiguration
- Standard-Logdatei:
$HOME/log.txt - Voreingestellter Pfad im Script:
$HOME/Gitea/logger/log.txt(kann in Zeile 2 derlogger.shangepasst werden)
Beispiel-Ausgabe
In der Konsole:
2025-08-16 14:30:00 [INFO] Das ist eine Info.
2025-08-16 14:30:05 [WARN] Achtung, etwas ist ungewöhnlich!
In der Logdatei:
2025-08-16 14:30:00 [START] --- Backup-Prozess gestartet ---
2025-08-16 14:30:00 [START] --- Script: ./mein_script.sh ---
2025-08-16 14:30:00 [INFO] Starte Datenimport...
2025-08-16 14:30:05 [WARN] Datenformat unvollständig, aber fortsetzbar.
2025-08-16 14:30:10 [ERROR] Fehler beim Schreiben der Datei!
2025-08-16 14:30:15 [END] --- Backup-Prozess abgeschlossen ---