Compare commits

...

4 Commits

Author SHA1 Message Date
alf
f340c572a3 logger.sh aktualisiert 2026-04-14 14:15:25 +00:00
alf
0d9c0e7f3f logger.sh aktualisiert 2025-09-19 20:21:51 +00:00
alf
41eaadfa33 logrotate.sh aktualisiert 2025-09-12 06:27:53 +00:00
alf
629f8e48b4 logrotate.cfg aktualisiert 2025-09-05 08:20:49 +00:00
3 changed files with 44 additions and 4 deletions

View File

@ -1,15 +1,37 @@
#!/bin/bash #!/bin/bash
# Die Variable GIT_PFAD muss in der .bashrc-Datei für jeden Nutzer gesetzt werden! # 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" DEFAULT_LOG_FILE="$HOME/log.txt"
ACTIVE_LOG_FILE="$GIT_PFAD/logger/Logs/log.log" 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() { log_init() {
ACTIVE_LOG_FILE="$1" #{1:-$DEFAULT_LOG_FILE}" ACTIVE_LOG_FILE="$1"
echo "Logdatei: $ACTIVE_LOG_FILE" echo "Logdatei: $ACTIVE_LOG_FILE"
# mkdir -p "$(dirname "${ACTIVE_LOG_FILE}")"
if [ ! -f "$ACTIVE_LOG_FILE" ]; then if [ ! -f "$ACTIVE_LOG_FILE" ]; then
echo "Fehler: Logdatei '$ACTIVE_LOG_FILE' existiert nicht!" >&2 echo "Fehler: Logdatei '$ACTIVE_LOG_FILE' existiert nicht!" >&2
exit 1 exit 1
@ -42,3 +64,18 @@ log_end() {
echo "" >> $ACTIVE_LOG_FILE echo "" >> $ACTIVE_LOG_FILE
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

View File

@ -7,6 +7,7 @@
copytruncate copytruncate
dateext dateext
postrotate 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 endscript
} }

View File

@ -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 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