Release
This commit is contained in:
33
bin/snowpanel-logdump
Normal file
33
bin/snowpanel-logdump
Normal file
@@ -0,0 +1,33 @@
|
||||
#!/usr/bin/env bash
|
||||
set -Eeuo pipefail
|
||||
LINES="${1:-500}"
|
||||
LEVEL="${2:-info}"
|
||||
case "$LINES" in ''|*[!0-9]* ) LINES=500 ;; esac
|
||||
case "$LEVEL" in debug|info|notice|warning|err) ;; * ) LEVEL=info ;; esac
|
||||
|
||||
strip(){ sed -E 's/^.*\]:[[:space:]]*//'; }
|
||||
|
||||
app_logs=""
|
||||
if out="$(journalctl -t snowflake-proxy -p "$LEVEL" -n $((LINES*3)) -o short-iso --no-pager 2>/dev/null)"; then
|
||||
app_logs="$out"
|
||||
elif out="$(journalctl _COMM=snowflake-proxy -p "$LEVEL" -n $((LINES*3)) -o short-iso --no-pager 2>/dev/null)"; then
|
||||
app_logs="$out"
|
||||
fi
|
||||
|
||||
sys_lines=""
|
||||
if out="$(journalctl -u snowflake-proxy.service -p "$LEVEL" -n $((LINES*6)) -o short-iso --no-pager 2>/dev/null | grep -E ' (Started|Stopped|Stopping|Restarted|Reloaded|Failed) snowflake-proxy\.service|snowflake-proxy\.service: Consumed ')"; then
|
||||
sys_lines="$out"
|
||||
fi
|
||||
|
||||
combined="$(printf "%s\n%s\n" "${app_logs:-}" "${sys_lines:-}" | sed '/^[[:space:]]*$/d' | sort)"
|
||||
if [[ -n "$combined" ]]; then
|
||||
echo "$combined" | tail -n "$LINES" | strip
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if out="$(systemctl status snowflake-proxy --no-pager -l 2>/dev/null | grep -E ' snowflake-proxy\[[0-9]+\]:| (Started|Stopped|Stopping|Restarted|Reloaded|Failed) snowflake-proxy\.service|snowflake-proxy\.service: Consumed ')"; then
|
||||
echo "$out" | tail -n "$LINES" | strip
|
||||
exit 0
|
||||
fi
|
||||
|
||||
exit 0
|
||||
Reference in New Issue
Block a user