Удобные консольные наработки на каждый день для разработчиков, девопсов и сисадминов.
Реклама: @Kone4noVasya
Канал на бирже: https://telega.in/c/bash_help
Post #1172
2.37K

⚙️ Логирование с временными метками в bash-скриптах
✔️Когда скрипт падает на проде в три ночи, первый вопрос: что именно произошло и в какой момент. Без логов остаётся только гадать.
➡️ Три функции вместо голого echo:
▶️Три уровня:
▶️
🖼️ Ссылка на источник
🔨 bash_help
✔️Когда скрипт падает на проде в три ночи, первый вопрос: что именно произошло и в какой момент. Без логов остаётся только гадать.
➡️ Три функции вместо голого echo:
#!/bin/bash
set -euo pipefail
LOG_FILE="/var/log/myscript.log"
log() { echo "[INFO] $(date '+%H:%M:%S') $1" | tee -a "$LOG_FILE"; }
warn() { echo "[WARN] $(date '+%H:%M:%S') $1" | tee -a "$LOG_FILE"; }
error(){ echo "[ERROR] $(date '+%H:%M:%S') $1" | tee -a "$LOG_FILE"; exit 1; }
log "Script started"
warn "Config file missing, using defaults"
error "Database connection failed" # здесь скрипт остановится
▶️Три уровня:
log для обычных событий, warn для подозрительного, error для критического с немедленным выходом.▶️
tee -a пишет одновременно в терминал и в файл. Флаг -a означает append, то есть каждый запуск дописывает в конец, а не перезаписывает лог с нуля.🖼️ Ссылка на источник
🔨 bash_help
- 👍 10
- 🔥 4

















