#!/bin/bash # JetStream Health Check Script # Перевіряє статус streams та consumers set -e NATS_URL="${NATS_URL:-nats://dagi-nats-node1:4222}" echo "=== JETSTREAM STATUS ===" echo "" # Streams echo "1. Streams:" docker run --rm --network dagi-network natsio/nats-box:latest nats -s "$NATS_URL" stream ls 2>/dev/null || { echo " ❌ Failed to list streams" exit 1 } echo "" echo "2. Consumers:" for stream in ARTIFACT_JOBS DLQ; do echo " Stream: $stream" docker run --rm --network dagi-network natsio/nats-box:latest nats -s "$NATS_URL" consumer ls "$stream" 2>/dev/null || echo " No consumers" done echo "" echo "3. Stream Stats:" for stream in ARTIFACT_JOBS DLQ; do echo " --- $stream ---" docker run --rm --network dagi-network natsio/nats-box:latest nats -s "$NATS_URL" stream info "$stream" 2>/dev/null | grep -E "Messages:|Bytes:|Consumers:" || echo " Error getting info" done echo "" echo "4. Consumer Lag (ARTIFACT_JOBS):" docker run --rm --network dagi-network natsio/nats-box:latest nats -s "$NATS_URL" consumer info ARTIFACT_JOBS render_pdf_worker 2>/dev/null | grep -E "Unprocessed|Ack Pending|Redelivered" || echo " No consumer" echo "" echo "=== CHECK COMPLETE ==="