#!/usr/bin/env bash # # Tail logs from a service in either the Supabase or LiveKit compose stack. # # Usage: # ./scripts/prod/logs.sh [] [] # stack = supabase | livekit # service = (optional) single service, default = all # tail = (optional) line count, default = 100 # # Examples: # ./scripts/prod/logs.sh supabase # all services # ./scripts/prod/logs.sh supabase auth # just auth # ./scripts/prod/logs.sh supabase auth 300 # auth, last 300 lines # ./scripts/prod/logs.sh livekit livekit 200 set -euo pipefail here="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" source "${here}/config.sh" stack="${1:-}" service="${2:-}" tail_n="${3:-100}" case "${stack}" in supabase) dir="${PROD_SUPABASE_DIR}" ;; livekit) dir="${PROD_LIVEKIT_DIR}" ;; *) echo "usage: $0 [service] [tail-lines]" >&2 exit 1 ;; esac cmd="cd ${dir} && docker compose logs --tail=${tail_n} -f" if [[ -n "${service}" ]]; then cmd+=" ${service}" fi remote_tty "${cmd}"