Queues - Realtime backlog metrics now available for Queues
Key Points
- Realtime backlog metrics exposed
- Adds count, bytes, and oldest-message timestamp
- Accessible via dashboard, REST, and JS APIs
Summary
Cloudflare Queues now exposes realtime backlog metrics across the dashboard, REST API, and JavaScript API. Three new fields provide per-queue visibility into unacknowledged messages and their size/timestamp.
Key Points
- New realtime fields:
backlog_count(number of unacknowledged messages),backlog_bytes(total size in bytes), andoldest_message_timestamp_ms(oldest unacknowledged message timestamp). - API and integration surface:
- REST endpoints returning
metadata.metricsafter successful consumption:/accounts/{account_id}/queues/{queue_id}/messages/pull/accounts/{account_id}/queues/{queue_id}/messages/accounts/{account_id}/queues/{queue_id}/messages/batch
- JavaScript: call
env.QUEUE.metrics()to fetch realtime metrics;env.QUEUE.send()andenv.QUEUE.sendBatch()now include ametricsobject on responses. - Metrics are also queryable via the GraphQL Analytics API and visible in the dashboard.
- REST endpoints returning
Practical notes for engineers
- Use
backlog_countto trigger scaling or alerting when unacknowledged message counts rise. - Use
backlog_bytesfor storage/throughput planning andoldest_message_timestamp_msto detect processing lag. - Example JS return values:
{ backlogCount, backlogBytes, oldestMessageTimestamp }(types: number, number, Date | undefined). - Check
metadata.metricson message consumption responses to get immediate post-consume backlog state.