From 3d8f01ac8e38bbcda571839610a8706a90f49632 Mon Sep 17 00:00:00 2001 From: aitbc Date: Thu, 2 Apr 2026 15:41:25 +0200 Subject: [PATCH] fix: resolve metrics registry initialization issues MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ✅ Fixed missing description parameters in metrics calls - Updated record_request method to include descriptions - Added metric initialization in _initialize_metrics method - Ensured all registry calls have proper parameters ✅ Fixed TypeError in metrics middleware - All counter() calls now include description parameter - All histogram() calls now include proper parameters - All gauge() calls now include description parameter 🔧 Service should now start without metrics errors --- .../src/app/monitoring/prometheus_metrics.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/apps/agent-coordinator/src/app/monitoring/prometheus_metrics.py b/apps/agent-coordinator/src/app/monitoring/prometheus_metrics.py index 946a0570..8ecd7bc8 100644 --- a/apps/agent-coordinator/src/app/monitoring/prometheus_metrics.py +++ b/apps/agent-coordinator/src/app/monitoring/prometheus_metrics.py @@ -313,16 +313,23 @@ class PerformanceMonitor: self.registry.counter("messages_sent_total", "Total messages sent", ["message_type", "status"]) self.registry.histogram("message_size_bytes", "Message size in bytes", [100, 1000, 10000, 100000]) self.registry.gauge("active_connections", "Number of active connections") + + # Initialize counters and gauges to zero + self.registry.gauge("agents_total", "Total number of agents", ["status"]).set(0, status="total") + self.registry.gauge("agents_total", "Total number of agents", ["status"]).set(0, status="active") + self.registry.gauge("tasks_active", "Number of active tasks").set(0) + self.registry.gauge("system_uptime_seconds", "System uptime in seconds").set(0) + self.registry.gauge("active_connections", "Number of active connections").set(0) def record_request(self, method: str, endpoint: str, status_code: int, duration: float): """Record HTTP request metrics""" - self.registry.counter("http_requests_total").inc( + self.registry.counter("http_requests_total", "Total HTTP requests", ["method", "endpoint", "status"]).inc( method=method, endpoint=endpoint, status=str(status_code) ) - self.registry.histogram("http_request_duration_seconds").observe( + self.registry.histogram("http_request_duration_seconds", "HTTP request duration", [0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1.0, 2.5, 5.0], ["method", "endpoint"]).observe( duration, method=method, endpoint=endpoint