From 8aa61a697c2fcef5db2605801bbb724aed5d478f Mon Sep 17 00:00:00 2001 From: kx1t Date: Wed, 8 May 2024 10:25:42 -0400 Subject: [PATCH] make LOGLEVEL interpretation consistent --- rootfs/etc/s6-overlay/scripts/adsbx-stats | 3 +-- rootfs/etc/s6-overlay/scripts/mlat-client | 25 +++++++++++++------ rootfs/etc/s6-overlay/scripts/mlathub | 17 +++++++++---- rootfs/etc/s6-overlay/scripts/readsb | 12 ++++++--- .../startup.d/01-print-container-version | 4 +-- .../s6-overlay/startup.d/99-prometheus-conf | 1 + 6 files changed, 41 insertions(+), 21 deletions(-) diff --git a/rootfs/etc/s6-overlay/scripts/adsbx-stats b/rootfs/etc/s6-overlay/scripts/adsbx-stats index ac71ea4..be21583 100755 --- a/rootfs/etc/s6-overlay/scripts/adsbx-stats +++ b/rootfs/etc/s6-overlay/scripts/adsbx-stats @@ -1,5 +1,5 @@ #!/command/with-contenv bash -# shellcheck shell=bash disable=SC2015,SC2016,SC1091,SC2001 +# shellcheck shell=bash disable=SC2015,SC2016,SC1091,SC2001,SC2154 #--------------------------------------------------------------------------------------------- # Copyright (C) 2023-2024, Ramon F. Kolb (kx1t) and contributors @@ -19,7 +19,6 @@ source /scripts/common source /scripts/interpret_ultrafeeder_config -s6wrap=(s6wrap --quiet --timestamps --prepend="$(basename "$0")" --args) # Check if ADSBExchange is configured if ! grep -i adsbexchange.com <<< "$ULTRAFEEDER_CONFIG" >/dev/null 2>&1; then diff --git a/rootfs/etc/s6-overlay/scripts/mlat-client b/rootfs/etc/s6-overlay/scripts/mlat-client index 4e48a84..16ed88c 100755 --- a/rootfs/etc/s6-overlay/scripts/mlat-client +++ b/rootfs/etc/s6-overlay/scripts/mlat-client @@ -22,12 +22,20 @@ trap 'pkill -P "$$" || true; s6wrap --quiet --timestamps --prepend=mlat-client - source /scripts/common source /scripts/interpret_ultrafeeder_config -s6wrap=(s6wrap --quiet --timestamps --prepend="$(basename "$0")") +s6wrap=(s6wrap --quiet --timestamps --prepend="$SCRIPT_NAME") "${s6wrap[@]}" --args echo "Started as an s6 service" MLAT_CMD="/usr/bin/mlat-client" +LOGLEVEL="${LOGLEVEL,,}" +LOGLEVEL="${LOGLEVEL:-verbose}" +chk_disabled "$LOGLEVEL" && LOGLEVEL="none" || true +if ! [[ "$LOGLEVEL" =~ ^(verbose|error|none)$ ]]; then + [[ -n "$LOGLEVEL" ]] && "${s6wrap[@]}" --args echo "[WARNING] LOGLEVEL set to an unknown value. Defaulting to \"verbose\"" || true + LOGLEVEL="verbose" +fi + RESTARTTIMER=15 declare -A pid_array @@ -215,13 +223,14 @@ do # ------------------------------------------------ # run this Mlat_client instance in the background: + #shellcheck disable=SC2069,SC2086 - if [[ -z "${LOGLEVEL}" ]] || [[ "${LOGLEVEL,,}" == "verbose" ]]; then - "${s6wrap[@]}" --prepend="$(basename "$0")][${servername}" --args echo "starting: ${MLAT_CMD} ${MLAT_PARAM[*]}" + if [[ "${LOGLEVEL}" == "verbose" ]]; then + "${s6wrap[@]}" --prepend="$(basename "$0")][${servername}" --args echo "starting: ${execstring}" "${s6wrap[@]}" --prepend="$(basename "$0")][${servername}" --args ${execstring} & - elif [[ "${LOGLEVEL,,}" == "error" ]]; then + elif [[ "${LOGLEVEL}" == "error" ]]; then "${s6wrap[@]}" --ignore=stdout --prepend="$(basename "$0")][${servername}" --args ${execstring} & - elif [[ "${LOGLEVEL,,}" == "none" ]]; then + elif [[ "${LOGLEVEL}" == "none" ]]; then "${s6wrap[@]}" --ignore=stderr --ignore=stdout --prepend="$(basename "$0")][${servername}" --args ${execstring} & fi @@ -249,11 +258,11 @@ do execstring="$(echo ${MLAT_CMD} ${pid_array[$mlat_pid]} | xargs)" #shellcheck disable=SC2069,SC2086 - if [[ -z "${LOGLEVEL}" ]] || [[ "${LOGLEVEL,,}" == "verbose" ]]; then + if [[ "${LOGLEVEL}" == "verbose" ]]; then "${s6wrap[@]}" --prepend="$(basename "$0")][${servername}" --args ${execstring} & - elif [[ "${LOGLEVEL,,}" == "error" ]]; then + elif [[ "${LOGLEVEL}" == "error" ]]; then "${s6wrap[@]}" --ignore=stdout --prepend="$(basename "$0")][${servername}" --args ${execstring} & - elif [[ "${LOGLEVEL,,}" == "none" ]]; then + elif [[ "${LOGLEVEL}" == "none" ]]; then "${s6wrap[@]}" --ignore=stderr --ignore=stdout --prepend="$(basename "$0")][${servername}" --args ${execstring} & fi diff --git a/rootfs/etc/s6-overlay/scripts/mlathub b/rootfs/etc/s6-overlay/scripts/mlathub index 4182b88..5b36846 100755 --- a/rootfs/etc/s6-overlay/scripts/mlathub +++ b/rootfs/etc/s6-overlay/scripts/mlathub @@ -17,10 +17,17 @@ # If not, see . #--------------------------------------------------------------------------------------------- -APPNAME="mlathub" source /scripts/common source /scripts/interpret_ultrafeeder_config -s6wrap=(s6wrap --quiet --timestamps --prepend="${APPNAME}") +s6wrap=(s6wrap --quiet --timestamps --prepend="$SCRIPT_NAME") + +LOGLEVEL="${LOGLEVEL,,}" +LOGLEVEL="${LOGLEVEL:-verbose}" +chk_disabled "$LOGLEVEL" && LOGLEVEL="none" || true +if ! [[ "$LOGLEVEL" =~ ^(verbose|error|none)$ ]]; then + [[ -n "$LOGLEVEL" ]] && "${s6wrap[@]}" --args echo "[WARNING] LOGLEVEL set to an unknown value. Defaulting to \"verbose\"" || true + LOGLEVEL="verbose" +fi if [[ -z "${MLAT_CONFIG}" ]] && [[ -z "$MLATHUB_NET_CONNECTOR" ]]; then "${s6wrap[@]}" --args echo "No MLAT servers have been defined in MLAT_CONFIG and no external sources have been defined in MLATHUB_NET_CONNECTOR - no need to start MLATHUB" @@ -98,10 +105,10 @@ MLATHUB_CMD+=("--net-heartbeat=${READSB_NET_HEARTBEAT:-35}") "${s6wrap[@]}" --args echo "Starting MLATHUB..." # shellcheck disable=SC2086,SC2069 -if [[ -z "${LOGLEVEL}" ]] || [[ "${LOGLEVEL,,}" == "verbose" ]]; then +if [[ "${LOGLEVEL}" == "verbose" ]]; then exec "${s6wrap[@]}" --args "${MLATHUB_BIN}" "${MLATHUB_CMD[@]}" $MLATHUB_EXTRA_ARGS -elif [[ "${LOGLEVEL,,}" == "error" ]]; then +elif [[ "${LOGLEVEL}" == "error" ]]; then exec "${s6wrap[@]}" --ignore=stdout --args "${MLATHUB_BIN}" "${MLATHUB_CMD[@]}" $MLATHUB_EXTRA_ARGS -elif [[ "${LOGLEVEL,,}" == "none" ]]; then +elif [[ "${LOGLEVEL}" == "none" ]]; then exec "${s6wrap[@]}" --ignore=stdtout --ignore=stderr --args "${MLATHUB_BIN}" "${MLATHUB_CMD[@]}" $MLATHUB_EXTRA_ARGS fi diff --git a/rootfs/etc/s6-overlay/scripts/readsb b/rootfs/etc/s6-overlay/scripts/readsb index f10636e..3a7871a 100755 --- a/rootfs/etc/s6-overlay/scripts/readsb +++ b/rootfs/etc/s6-overlay/scripts/readsb @@ -23,6 +23,14 @@ s6wrap=(s6wrap --quiet --timestamps --prepend="${SCRIPT_NAME}") mkdir -p /run/readsb +LOGLEVEL="${LOGLEVEL,,}" +LOGLEVEL="${LOGLEVEL:-verbose}" +chk_disabled "$LOGLEVEL" && LOGLEVEL="none" || true +if ! [[ "$LOGLEVEL" =~ ^(verbose|error|none)$ ]]; then + [[ -n "$LOGLEVEL" ]] && "${s6wrap[@]}" --args echo "[WARNING] LOGLEVEL set to an unknown value. Defaulting to \"verbose\"" || true + LOGLEVEL="verbose" +fi + # Build the readsb command line based on options READSB_BIN="/usr/local/bin/readsb" @@ -340,10 +348,6 @@ if chk_enabled "$PROMETHEUS_ENABLE"; then READSB_CMD+=("--write-prom=/run/readsb-prometheus.prom") fi -if ! [[ "${LOGLEVEL,,}" =~ ^(verbose|error|none)$ ]]; then - [[ -n "$LOGLEVEL" ]] && "${s6wrap[@]}" --args echo "[WARNING] LOGLEVEL set to an unknown value. Defaulting to \"verbose\"" || true - LOGLEVEL="verbose" -fi # shellcheck disable=SC2086 if [[ "${LOGLEVEL,,}" == "verbose" ]]; then exec "${s6wrap[@]}" --args "${READSB_BIN}" "${READSB_CMD[@]}" $READSB_EXTRA_ARGS diff --git a/rootfs/etc/s6-overlay/startup.d/01-print-container-version b/rootfs/etc/s6-overlay/startup.d/01-print-container-version index 87a9ffb..95753dd 100755 --- a/rootfs/etc/s6-overlay/startup.d/01-print-container-version +++ b/rootfs/etc/s6-overlay/startup.d/01-print-container-version @@ -1,5 +1,5 @@ #!/command/with-contenv bash -# shellcheck shell=bash disable=SC1091,SC2015 +# shellcheck shell=bash disable=SC1091,SC2015,SC2154 source /scripts/common @@ -20,4 +20,4 @@ source /scripts/common # If not, see . #--------------------------------------------------------------------------------------------- -[[ -f /.CONTAINER_VERSION ]] && echo "Container Version: $(cat /.CONTAINER_VERSION), build date $(stat -c '%y' /.CONTAINER_VERSION |sed 's|\(.*\)\.[0-9]* \(.*\)|\1 \2|g')" || true +[[ -f /.CONTAINER_VERSION ]] && "${s6wrap[@]}" echo "Container Version: $(cat /.CONTAINER_VERSION), build date $(stat -c '%y' /.CONTAINER_VERSION |sed 's|\(.*\)\.[0-9]* \(.*\)|\1 \2|g')" || true diff --git a/rootfs/etc/s6-overlay/startup.d/99-prometheus-conf b/rootfs/etc/s6-overlay/startup.d/99-prometheus-conf index c5d86ec..cc0562e 100755 --- a/rootfs/etc/s6-overlay/startup.d/99-prometheus-conf +++ b/rootfs/etc/s6-overlay/startup.d/99-prometheus-conf @@ -1,4 +1,5 @@ #!/command/with-contenv bash +#shellcheck shell=bash disable=SC1091 source /scripts/common