59 lines
1.9 KiB
Bash
Executable File
59 lines
1.9 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# =============================================================================
|
|
# view-logs.sh — View access logs from the Azure VM
|
|
#
|
|
# Usage:
|
|
# ./view-logs.sh # All logs
|
|
# ./view-logs.sh --caddy # HTTPS proxy logs
|
|
# ./view-logs.sh --api -f # Follow API logs real-time
|
|
# =============================================================================
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
[ -f "$SCRIPT_DIR/.env" ] && source "$SCRIPT_DIR/.env"
|
|
|
|
LOC="${AZURE_LOCATION:-westeurope}"
|
|
DNS="${AZURE_DNS_LABEL:-taskmanager-gs699he}"
|
|
FQDN="${DNS}.${LOC}.cloudapp.azure.com"
|
|
SSH_KEY="$HOME/.ssh/sk1_taskmanager"
|
|
ADMIN="azureuser"
|
|
SSH_CMD="ssh -o StrictHostKeyChecking=no -i $SSH_KEY $ADMIN@$FQDN"
|
|
|
|
LOG_TYPE="all"
|
|
FOLLOW=""
|
|
while [[ $# -gt 0 ]]; do
|
|
case "$1" in
|
|
--caddy) LOG_TYPE="caddy"; shift ;;
|
|
--api) LOG_TYPE="api"; shift ;;
|
|
--nginx) LOG_TYPE="nginx"; shift ;;
|
|
--all) LOG_TYPE="all"; shift ;;
|
|
-f) FOLLOW="-f"; shift ;;
|
|
*) echo "Unknown: $1"; exit 1 ;;
|
|
esac
|
|
done
|
|
|
|
echo "============================================="
|
|
echo " Access Logs — $FQDN"
|
|
echo "============================================="
|
|
|
|
case "$LOG_TYPE" in
|
|
caddy)
|
|
echo "--- Caddy (HTTPS) ---"
|
|
$SSH_CMD "sudo docker logs taskapp-caddy --tail 50 $FOLLOW" ;;
|
|
api)
|
|
echo "--- API (Node.js) ---"
|
|
$SSH_CMD "sudo docker logs taskapp-api --tail 50 $FOLLOW" ;;
|
|
nginx)
|
|
echo "--- Nginx (Frontend) ---"
|
|
$SSH_CMD "sudo docker logs taskapp-frontend --tail 50 $FOLLOW" ;;
|
|
all)
|
|
echo "--- Caddy ---"
|
|
$SSH_CMD "sudo docker logs taskapp-caddy --tail 20" 2>&1 || true
|
|
echo ""
|
|
echo "--- API ---"
|
|
$SSH_CMD "sudo docker logs taskapp-api --tail 20" 2>&1 || true
|
|
echo ""
|
|
echo "--- Nginx ---"
|
|
$SSH_CMD "sudo docker logs taskapp-frontend --tail 20" 2>&1 || true ;;
|
|
esac
|