ncc.zabbix_fbsd_templates
ncc.zabbix_fbsd_templates/src/aw.fbsd-mon-helper/bin/lounch.sh
+ Мониторим не только сами активные сетевые сервисы, но и их зависимости, #1 + Версия, для отслеживания состояния набора скиптов через zabbix, #3 + Возможность мониторинга дополнительных пакетов, задаётся в конфиге, #2 + Не позволяем запиститься с отсутствующей директорией состояний, #4
| awgur@0 | 1 #!/bin/sh |
| awgur@0 | 2 export PATH="/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin" |
| awgur@0 | 3 BIN_ROOT="$(dirname "$(readlink -f "$0")")" |
| awgur@0 | 4 APP_ROOT="$(dirname "$BIN_ROOT")" |
| awgur@0 | 5 STATE_ROOT="$APP_ROOT/var" |
| awgur@0 | 6 |
| awgur@10 | 7 if ! [ -d "$STATE_ROOT" ]; then |
| awgur@10 | 8 echo "NO STATE ROOT DIR: ${STATE_ROOT}" >&2 |
| awgur@10 | 9 exit 1 |
| awgur@10 | 10 fi |
| awgur@10 | 11 |
| awgur@10 | 12 |
| awgur@0 | 13 cat /dev/null > "$STATE_ROOT/status" |
| awgur@0 | 14 |
| awgur@0 | 15 . "$APP_ROOT/lib/log.sh" |
| awgur@0 | 16 |
| awgur@0 | 17 |
| awgur@0 | 18 if ! [ -f "$APP_ROOT/config.sh" ] ; then |
| awgur@0 | 19 echo "UNCONFIGURED!!!!" >&2 |
| awgur@0 | 20 exit 1 |
| awgur@0 | 21 fi |
| awgur@0 | 22 |
| awgur@0 | 23 TMP_ROOT="$(mktemp -dq aw-fbsd-monitoring-XXXXXXXXXXXX)" |
| awgur@0 | 24 _err_status=$? |
| awgur@0 | 25 if [ ${_err_status} -ne 0 ] ; then |
| awgur@0 | 26 log_err -s "Cannot make TMP_ROOT, error status ${_err_status}" |
| awgur@0 | 27 exit 1 |
| awgur@0 | 28 fi |
| awgur@0 | 29 |
| awgur@10 | 30 USER_MON_PKG_LIST="$TMP_ROOT/user_pkg_mon" |
| awgur@10 | 31 touch "${USER_MON_PKG_LIST}" |
| awgur@0 | 32 |
| awgur@0 | 33 my_exit () { |
| awgur@0 | 34 if [ -d "$TMP_ROOT" ] ; then |
| awgur@0 | 35 rm -frv "$TMP_ROOT" 2>&1 | log |
| awgur@0 | 36 fi |
| awgur@0 | 37 } |
| awgur@0 | 38 |
| awgur@0 | 39 trap my_exit 0 |
| awgur@0 | 40 |
| awgur@10 | 41 . "$APP_ROOT/lib/common.sh" |
| awgur@0 | 42 . "$APP_ROOT/config.sh" |
| awgur@0 | 43 . "$APP_ROOT/lib/fbsd_up.sh" |
| awgur@0 | 44 . "$APP_ROOT/lib/pkg.sh" |
| awgur@0 | 45 |
| awgur@0 | 46 log "Start process, but sleep some..." |
| awgur@0 | 47 sleep_some |
| awgur@0 | 48 |
| awgur@0 | 49 { |
| awgur@0 | 50 fbsd_up_do |
| awgur@0 | 51 pkg_do |
| awgur@0 | 52 } 2>&1 | log_err -s 2>&1 | to_status |