Files
logger/logger.sh
2025-08-20 18:44:28 +00:00

39 lines
1009 B
Bash
Executable File

#!/bin/bash
DEFAULT_LOG_FILE="$HOME/log.txt"
ACTIVE_LOG_FILE="$HOME/Gitea/logger/log.txt"
# Die tatsächlich genutzte Logdatei kann mit log_init "dateiname" gesetzt werden.
log_init() {
ACTIVE_LOG_FILE="${1:-$DEFAULT_LOG_FILE}"
mkdir -p "$(dirname "${ACTIVE_LOG_FILE}")"
_log_dual "START" "Log-Datei initialisiert: $ACTIVE_LOG_FILE"
}
_log_dual() {
local level="$1"
local message="$2"
local timestamp
timestamp="$(date '+%Y-%m-%d %H:%M:%S')"
local line="${timestamp} [${level}] ${message}"
echo "$line" # Konsole
echo "$line" >> "${ACTIVE_LOG_FILE}" # Logdatei
}
log_info() { _log_dual "INFO" "$1"; }
log_warn() { _log_dual "WARN" "$1"; }
log_error() { _log_dual "ERROR" "$1"; }
log_start() {
clear
_log_dual "START" "--- $1 gestartet ---"
_log_dual "START" "--- Script: $0 ---"
}
log_end() {
_log_dual "END" "--- $1 abgeschlossen ---"
echo "" >> $ACTIVE_LOG_FILE
echo "" >> $ACTIVE_LOG_FILE
echo "" >> $ACTIVE_LOG_FILE
}