Debug
Operations Summary
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/debug/pubsub/circuit_breaker/ |
Get circuit breaker state |
| GET | /api/debug/pubsub/dead_letter_queue/ |
Get dead letter queue status |
| GET | /api/debug/pubsub/message_state_cache/ |
Get message state cache statistics |
| GET | /api/debug/pubsub/metrics/ |
Get publishing metrics |
| GET | /api/debug/pubsub/overview/ |
Get pubsub system health overview |
| GET | /api/debug/pubsub/queues/ |
Get subscription queues overview |
| POST | /api/debug/pubsub/circuit_breaker_reset/ |
Reset circuit breaker |
| POST | /api/debug/pubsub/metrics_reset/ |
Reset publishing metrics |
Get circuit breaker state
Get current STOMP circuit breaker state and statistics.
Returns: - state: Current state (closed/open/half_open) - failure_count: Number of consecutive failures - success_count: Successes since last state change - last_failure_time: Timestamp of last failure - last_state_change: When state last changed - config: Circuit breaker configuration - state_history: Recent state transitions
Requires staff permissions.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 | |
- API Source:
debug_pubsub_circuit_breaker_retrieve
1 2 3 4 5 6 7 8 9 10 | |
200 -
| Field | Type | Description |
|---|---|---|
state |
string | Current state: closed, open, or half_open |
failure_count |
integer | Number of consecutive failures |
success_count |
integer | Successful calls since last state change |
last_failure_time |
number (double) | Unix timestamp of last failure |
last_state_change |
number (double) | Unix timestamp of last state change |
config |
any | Circuit breaker configuration |
state_history |
array of objects | Recent state transitions (last 50) |
state_history.timestamp |
number (double) | Unix timestamp of state change |
state_history.from_state |
string | Previous state |
state_history.to_state |
string | New state |
state_history.reason |
string | Reason for state change |
Get dead letter queue status
Get dead letter queue (DLQ) statistics.
The DLQ receives messages that failed to be delivered to their original destination. This endpoint shows the current DLQ status.
Note: DLQ is configured per-vhost. This endpoint checks all vhosts for queues with 'dlq' in the name.
Requires staff permissions.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 | |
- API Source:
debug_pubsub_dead_letter_queue_retrieve
1 2 3 4 5 6 7 8 9 10 | |
200 -
| Field | Type | Description |
|---|---|---|
total_dlq_messages |
integer | Total messages across all DLQs |
dlq_count |
integer | Number of DLQ queues found |
dlq_queues |
array of objects | List of DLQ queues with their statistics |
dlq_queues.vhost |
string | Virtual host name |
dlq_queues.queue_name |
string | DLQ queue name |
dlq_queues.messages |
integer | Total messages in DLQ |
dlq_queues.messages_ready |
integer | Messages ready for delivery |
dlq_queues.consumers |
integer | Number of consumers attached |
note |
string | Informational note about DLQs |
503 -
| Field | Type | Description |
|---|---|---|
error |
string | Error message describing what went wrong |
Get message state cache statistics
Get message state tracker cache statistics for idempotency.
The message state tracker prevents duplicate message sends by caching the hash of message content. This endpoint provides cache statistics.
Query params: - resource_uuid: Filter by specific resource - message_type: Filter by message type
Requires staff permissions.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 | |
- API Source:
debug_pubsub_message_state_cache_retrieve
1 2 3 4 5 6 7 8 9 10 | |
200 -
| Field | Type | Description |
|---|---|---|
cache_ttl |
integer | Cache TTL in seconds |
description |
string | Cache description |
filter |
any | Applied filters |
Get publishing metrics
Get message publishing metrics and statistics.
Returns: - messages_sent: Total messages successfully sent - messages_failed: Total failed message attempts - messages_retried: Messages that required retry - messages_skipped: Messages skipped due to circuit breaker - circuit_breaker_trips: Number of times circuit opened - rate_limiter_rejections: Messages rejected by rate limiter - avg_publish_time_ms: Average publish latency - last_publish_time: Timestamp of last publish attempt
Requires staff permissions.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 | |
- API Source:
debug_pubsub_metrics_retrieve
1 2 3 4 5 6 7 8 9 10 | |
200 -
| Field | Type | Description |
|---|---|---|
messages_sent |
integer | Total messages successfully sent |
messages_failed |
integer | Total failed message attempts |
messages_retried |
integer | Messages that required retry |
messages_skipped |
integer | Messages skipped due to circuit breaker |
circuit_breaker_trips |
integer | Number of times circuit breaker opened |
rate_limiter_rejections |
integer | Messages rejected by rate limiter |
avg_publish_time_ms |
number (double) | Average message publish latency in milliseconds |
last_publish_time |
number (double) | Unix timestamp of last publish attempt |
Get pubsub system health overview
Dashboard overview of pubsub system health.
Combines circuit breaker state, publishing metrics, and health indicators into a single response suitable for monitoring dashboards.
Requires staff permissions.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 | |
- API Source:
debug_pubsub_overview_retrieve
1 2 3 4 5 6 7 8 9 10 | |
200 -
| Field | Type | Description |
|---|---|---|
health_status |
string | Overall health: healthy, degraded, or critical |
issues |
array of strings | List of current issues affecting health |
circuit_breaker |
any | Circuit breaker summary |
metrics |
any | Publishing metrics summary |
last_updated |
string (date-time) | Timestamp when overview was generated |
Get subscription queues overview
Get overview of subscription queues from RabbitMQ.
Returns summary of subscription queues across all vhosts including message counts and queue statistics.
Note: For detailed queue management, use /api/rabbitmq-stats/ endpoint.
Requires staff permissions.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 | |
- API Source:
debug_pubsub_queues_retrieve
1 2 3 4 5 6 7 8 9 10 | |
200 -
| Field | Type | Description |
|---|---|---|
total_vhosts |
integer | Total number of vhosts with subscription queues |
total_queues |
integer | Total number of subscription queues |
total_messages |
integer | Total messages across all subscription queues |
top_queues_by_messages |
array of objects | Top 10 queues by message count |
top_queues_by_messages.vhost |
string | Virtual host name |
top_queues_by_messages.name |
string | Queue name |
top_queues_by_messages.messages |
integer | Number of messages in queue |
top_queues_by_messages.consumers |
integer | Number of consumers attached |
503 -
| Field | Type | Description |
|---|---|---|
error |
string | Error message describing what went wrong |
Reset circuit breaker
Manually reset the STOMP circuit breaker to CLOSED state.
Use with caution - only when RabbitMQ is confirmed healthy.
Requires staff permissions.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 | |
- API Source:
debug_pubsub_circuit_breaker_reset
1 2 3 4 5 6 7 8 9 10 | |
200 -
| Field | Type | Description |
|---|---|---|
status |
string | Operation status |
state |
string | New circuit breaker state after reset |
Reset publishing metrics
Reset all publishing metrics counters to zero.
Requires staff permissions.
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 | |
- API Source:
debug_pubsub_metrics_reset
1 2 3 4 5 6 7 8 9 10 | |
200 -
| Field | Type | Description |
|---|---|---|
status |
string | Operation status |