Compare commits
4 Commits
b0f487d2ca
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| f340c572a3 | |||
| 0d9c0e7f3f | |||
| 41eaadfa33 | |||
| 629f8e48b4 |
43
logger.sh
43
logger.sh
@ -1,15 +1,37 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Die Variable GIT_PFAD muss in der .bashrc-Datei für jeden Nutzer gesetzt werden!
|
||||
GIT_PFAD="$HOME/Gitea"
|
||||
DEFAULT_LOG_FILE="$HOME/log.txt"
|
||||
ACTIVE_LOG_FILE="$GIT_PFAD/logger/Logs/log.log"
|
||||
|
||||
# Die tatsächlich genutzte Logdatei kann mit log_init "dateiname" gesetzt werden.
|
||||
# Funktion zur Anzeige der Hilfe
|
||||
show_help() {
|
||||
echo "Verwendung: $0 [Optionen]"
|
||||
echo "Optionen:"
|
||||
echo " -f, --file Log-Datei angeben (Standard: $ACTIVE_LOG_FILE)"
|
||||
echo " -m, --message Log-Nachricht angeben"
|
||||
echo " -l, --level Log-Level angeben (INFO, WARN, ERROR, START, END)"
|
||||
echo " -h, --help Diese Hilfe anzeigen"
|
||||
exit 0
|
||||
}
|
||||
|
||||
# Kommandozeilenargumente parsen
|
||||
while [[ "$#" -gt 0 ]]; do
|
||||
case $1 in
|
||||
-f|--file) ACTIVE_LOG_FILE="$2"; shift ;;
|
||||
-m|--message) MESSAGE="$2"; shift ;;
|
||||
-l|--level) LEVEL="$2"; shift ;;
|
||||
-h|--help) show_help ;;
|
||||
*) echo "Unbekannte Option: $1"; show_help; exit 1 ;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
# Die tatsächlich genutzte Logdatei kann mit log_init "dateiname" gesetzt werden.
|
||||
log_init() {
|
||||
ACTIVE_LOG_FILE="$1" #{1:-$DEFAULT_LOG_FILE}"
|
||||
ACTIVE_LOG_FILE="$1"
|
||||
echo "Logdatei: $ACTIVE_LOG_FILE"
|
||||
# mkdir -p "$(dirname "${ACTIVE_LOG_FILE}")"
|
||||
if [ ! -f "$ACTIVE_LOG_FILE" ]; then
|
||||
echo "Fehler: Logdatei '$ACTIVE_LOG_FILE' existiert nicht!" >&2
|
||||
exit 1
|
||||
@ -42,3 +64,18 @@ log_end() {
|
||||
echo "" >> $ACTIVE_LOG_FILE
|
||||
echo "" >> $ACTIVE_LOG_FILE
|
||||
}
|
||||
|
||||
# Hauptlogik für Kommandozeilenaufruf
|
||||
if [ -n "$MESSAGE" ]; then
|
||||
case "$LEVEL" in
|
||||
INFO) log_info "$MESSAGE" ;;
|
||||
WARN) log_warn "$MESSAGE" ;;
|
||||
ERROR) log_error "$MESSAGE" ;;
|
||||
START) log_start "$MESSAGE" ;;
|
||||
END) log_end "$MESSAGE" ;;
|
||||
*)
|
||||
echo "Fehler: Ungültiger Log-Level '$LEVEL'. Erlaubt sind INFO, WARN, ERROR, START, END." >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
@ -7,6 +7,7 @@
|
||||
copytruncate
|
||||
dateext
|
||||
postrotate
|
||||
echo "$(date) Logrotate (log.txt) hat stattgefunden! ERR: $?" >>/root/Logs/log.log
|
||||
echo "$(date) Logrotate ($1) hat stattgefunden! ERR: $?" >>$1
|
||||
echo "$(date) Logrotate ($1) hat stattgefunden! " >>/home/alf/Gitea/logger/Logs/logrotate.log
|
||||
endscript
|
||||
}
|
||||
|
||||
@ -1 +1,3 @@
|
||||
GIT_PFAD="$HOME/Dokumente/Gitea"
|
||||
logrotate -v --log=$GIT_PFAD/logger/Logs/logrotate.log -s="$GIT_PFAD/logger/logrotate.status" $GIT_PFAD/logger/logrotate.cfg
|
||||
echo "$(date) Logrotate hat stattgefunden!" >>$GIT_PFAD/logger/Logs/logrotate.log
|
||||
Reference in New Issue
Block a user