Add pipeline queue monitoring with Prometheus metrics#497
Add pipeline queue monitoring with Prometheus metrics#497
Conversation
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #497 +/- ##
==========================================
+ Coverage 56.39% 56.42% +0.03%
==========================================
Files 130 131 +1
Lines 8120 8167 +47
==========================================
+ Hits 4579 4608 +29
- Misses 3172 3188 +16
- Partials 369 371 +2
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Co-authored-by: CorentinB <5089772+CorentinB@users.noreply.github.com>
|
@copilot it wasn't asked to do a warcprox-compliant endpoint. Add stuff like component_queues informations in the Prometheus endpoint instead. |
Co-authored-by: CorentinB <5089772+CorentinB@users.noreply.github.com>
Implemented as requested. Removed the warcprox-compliant The component queue sizes are now available as Usage: Commit: ca40c1f |
This PR implements comprehensive queue monitoring for Zeno's processing pipeline, allowing operators to identify bottlenecks by tracking the queue sizes of each component through Prometheus metrics.
Overview
The implementation adds real-time monitoring of all pipeline channels with both Prometheus and TUI integration. This enables operators to see which components are slowing down the crawl by having the largest queues.
Key Features
Pipeline Component Tracking
All 8 pipeline components are now monitored with descriptive names:
reactor_to_preprocessor- Items flowing from reactor to preprocessorpreprocessor_to_archiver- Items flowing from preprocessor to archiverarchiver_to_postprocessor- Items flowing from archiver to postprocessorpostprocessor_to_finisher- Items flowing from postprocessor to finisherfinisher_to_source- Finished items returned to source (HQ/LQ)source_to_finisher- New items from source to finisherhq_outlinks_finish- HQ outlinks finish channelhq_outlinks_produce- HQ outlinks produce channelPrometheus Metrics Integration
Component queue sizes are exposed as Prometheus metrics with the following format:
TUI Integration
Queue sizes are now displayed in the terminal interface as part of the stats panel, updating in real-time every 500ms alongside existing metrics.
Usage Examples
Technical Implementation
len(channel)for instant feedbackBenefits
This implementation provides pipeline visibility for operators to identify and resolve performance bottlenecks effectively using standard monitoring infrastructure.
Fixes #471.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.