|
|
- #!/bin/bash -fu
-
- #
- # Hook to write file report instead of sending email
- #
-
- CONFIG_HOST="$1"
- CONFIG_PATH="$2"
- CONFIG_TASK="$3"
- CONFIG_DATE="$4"
- CONFIG_FILE="$5"
-
- HOOK_NAME="$6"
- HOOK_TYPE="$7"
- HOOK_TASK="$8"
- HOOK_CTID="$9"
-
- # ---
-
- source "$CONFIG_FILE"
-
- if [[ "$CONFIG_TASK" == "openvz-diff-backup" ]]; then
- LOG_FILE="$CONFIG_PATH/var/log/ovzdb.log"
- else
- LOG_FILE="$CONFIG_PATH/var/log/ovzdb_${CONFIG_TASK}.log"
- fi
-
- # ---
-
- if [[ -n "${!LOG_FILE[@]}" ]] && [[ -f "$LOG_FILE" ]]; then
- # --- Set report file
-
- REPORT_FILE="$SERVER_TMP_DIR/${CALLER_TASK}_${HOOK_TASK}_${HOOK_CTID}_error-report.flag"
-
- # --- Splash
-
- echo "
- ######################################
- # Error report - openvz-diff-backups #
- ######################################
-
- Oops, something went wrong. *Read this report or a kitten will die*.
-
- (please, do not panic and fill a bug report if necessary)" >> "$REPORT_FILE"
-
- # --- Create report
-
- echo -e "\n# --- $LOG_FILE\n" >> "$REPORT_FILE"
-
- if [[ -s "$LOG_FILE" ]]; then
- tac "$LOG_FILE" | grep -B 8192 -P -m 1 "\s*Info\s*\-\s*openvz\-diff\-backups\s*\d\.\d\.\d" | tac >> "$REPORT_FILE"
- fi
-
- echo -e "\n# --- /var/log/vzctl.log\n" >> "$REPORT_FILE"
-
- if [[ -s "/var/log/vzctl.log" ]]; then
- tail -n 50 "/var/log/vzctl.log" >> "$REPORT_FILE"
- fi
-
- echo -e "\n# --- /var/log/kern.log\n" >> "$REPORT_FILE"
-
- if [[ -s "/var/log/kern.log" ]]; then
- tail -n 50 "/var/log/kern.log" >> "$REPORT_FILE"
- fi
-
-
- # --- Exit
-
- exit 0
- fi
|