fix: source emqx_vars in node_dump tool

This commit is contained in:
William Yang 2021-11-17 11:45:48 +01:00
parent b1fcab24cc
commit 8f01a8de8c
1 changed files with 14 additions and 15 deletions

View File

@ -1,18 +1,17 @@
#!/bin/sh
set -eu
BASE_DIR=$(dirname "$0")
ROOT_DIR="$(cd "$(dirname "$(readlink "$0" || echo "$0")")"/..; pwd -P)"
LOG_DIR="$(dirname "$(emqx eval 'hd([ File || #{module := logger_disk_log_h, config := #{file:= File} } <- logger:get_handler_config() ])' | xargs)")"
echo "Running node dump in ${ROOT_DIR}"
# shellcheck disable=SC1090
. "$ROOT_DIR"/releases/emqx_vars
cd "${ROOT_DIR}"
DUMP="$LOG_DIR/node_dump_$(date +"%Y%m%d_%H%M%S").tar.gz"
CONF_DUMP="$LOG_DIR/conf.dump"
SYSINFO="$LOG_DIR/sysinfo.txt"
DUMP="$RUNNER_LOG_DIR/node_dump_$(date +"%Y%m%d_%H%M%S").tar.gz"
CONF_DUMP="$RUNNER_LOG_DIR/conf.dump"
SYSINFO="$RUNNER_LOG_DIR/sysinfo.txt"
LOG_MAX_AGE_DAYS=3
@ -47,29 +46,29 @@ done
# Collect system info:
{
collect "$BASE_DIR"/emqx_ctl broker
collect "$BASE_DIR"/emqx eval "'emqx_node_dump:sys_info()'"
collect "$RUNNER_BIN_DIR"/emqx_ctl broker
collect "$RUNNER_BIN_DIR"/emqx eval "'emqx_node_dump:sys_info()'"
collect uname -a
collect uptime
collect free
collect netstat -tnl
collect "$BASE_DIR"/emqx_ctl plugins list
collect "$BASE_DIR"/emqx_ctl modules list
collect "$RUNNER_BIN_DIR"/emqx_ctl plugins list
collect "$RUNNER_BIN_DIR"/emqx_ctl modules list
collect "$BASE_DIR"/emqx_ctl vm all
collect "$BASE_DIR"/emqx_ctl listeners
collect "$RUNNER_BIN_DIR"/emqx_ctl vm all
collect "$RUNNER_BIN_DIR"/emqx_ctl listeners
} > "${SYSINFO}"
# Collect information about the configuration:
{
collect "$BASE_DIR"/emqx eval "'emqx_node_dump:app_env_dump()'"
collect "$RUNNER_BIN_DIR"/emqx eval "'emqx_node_dump:app_env_dump()'"
} > "${CONF_DUMP}"
# Pack files
{
find "$LOG_DIR" -mtime -"${LOG_MAX_AGE_DAYS}" \( -name '*.log.*' -or -name 'run_erl.log*' \)
find "$RUNNER_LOG_DIR" -mtime -"${LOG_MAX_AGE_DAYS}" \( -name '*.log.*' -or -name 'run_erl.log*' \)
echo "${SYSINFO}"
echo "${CONF_DUMP}"
} | tar czf "${DUMP}" -T -