ad.backup.zfs
2026-05-17
ad.backup.zfs/lib/log.sh
.. init . По сути архивация имеющегося самопиского решания для памяти.
| awgur@0 | 1 #!/bin/sh |
| awgur@0 | 2 # devel.a0fs.net: zfsbackup.lib.log - v0.1 by awgur |
| awgur@0 | 3 # --- |
| awgur@0 | 4 # Файл содержит процедуры и функции организации логирования и обработки ошибок |
| awgur@0 | 5 |
| awgur@0 | 6 sys_log () { |
| awgur@0 | 7 # Процедура логирования, принимает аргументы logger, и всего лишь добавляет тег |
| awgur@0 | 8 # к логам |
| awgur@0 | 9 logger -t net.a0fs.zfsbackup "$@" |
| awgur@0 | 10 } |
| awgur@0 | 11 |
| awgur@0 | 12 log_err () { |
| awgur@0 | 13 # Организация логирования ошибок |
| awgur@0 | 14 sys_log -p user.err "$@" |
| awgur@0 | 15 } |
| awgur@0 | 16 |
| awgur@0 | 17 log () { |
| awgur@0 | 18 # Логирование с уровнеи "Информация" |
| awgur@0 | 19 sys_log -p user.info "$@" |
| awgur@0 | 20 } |
| awgur@0 | 21 |
| awgur@0 | 22 log_n () { |
| awgur@0 | 23 # Логирование с уровнем "Уведомление" |
| awgur@0 | 24 sys_log -p user.notice "$@" |
| awgur@0 | 25 } |
| awgur@0 | 26 |
| awgur@0 | 27 log_crit () { |
| awgur@0 | 28 # Логирование критической ошибки, не дающей возможность продолжать процесс |
| awgur@0 | 29 sys_log -p user.crit "$@" |
| awgur@0 | 30 } |
| awgur@0 | 31 |
| awgur@0 | 32 err () { |
| awgur@0 | 33 # Возбуждение исключения (выход из скрипта с выдачей сообщения в лог) |
| awgur@0 | 34 # Аргументы: |
| awgur@0 | 35 # [ret_code]: Код возврата скрипта |
| awgur@0 | 36 # message: Сообщение в журнал |
| awgur@0 | 37 local code="$1" |
| awgur@0 | 38 local msg="$2" |
| awgur@0 | 39 |
| awgur@0 | 40 if ! [ "$msg" ] ; then |
| awgur@0 | 41 msg="$code" |
| awgur@0 | 42 code=1 |
| awgur@0 | 43 fi |
| awgur@0 | 44 |
| awgur@0 | 45 log_crit "$msg" |
| awgur@0 | 46 exit "$code" |
| awgur@0 | 47 } |