Enhance Makefile and update metrics handling in bot
- Added new commands in the Makefile for restarting individual services: `restart-bot`, `restart-prometheus`, and `restart-grafana`. - Updated Prometheus and Grafana dashboard expressions for better metrics aggregation. - Removed the `main_with_metrics.py` file and integrated metrics handling directly into the main bot file. - Refactored middleware to improve metrics tracking and error handling across message and callback processing. - Optimized metrics recording with enhanced bucket configurations for better performance monitoring.
This commit is contained in:
@@ -31,7 +31,8 @@ class BotMetrics:
|
||||
'method_duration_seconds',
|
||||
'Time spent executing methods',
|
||||
['method_name', 'handler_type', 'status'],
|
||||
buckets=[0.1, 0.25, 0.5, 1.0, 2.5, 5.0, 10.0],
|
||||
# Оптимизированные buckets для Telegram API (обычно < 1 сек)
|
||||
buckets=[0.01, 0.05, 0.1, 0.25, 0.5, 1.0, 2.5, 5.0],
|
||||
registry=self.registry
|
||||
)
|
||||
|
||||
@@ -56,7 +57,8 @@ class BotMetrics:
|
||||
'db_query_duration_seconds',
|
||||
'Time spent executing database queries',
|
||||
['query_type', 'table_name', 'operation'],
|
||||
buckets=[0.01, 0.05, 0.1, 0.25, 0.5, 1.0, 2.5],
|
||||
# Оптимизированные buckets для SQLite/PostgreSQL
|
||||
buckets=[0.001, 0.005, 0.01, 0.05, 0.1, 0.25, 0.5, 1.0, 2.5],
|
||||
registry=self.registry
|
||||
)
|
||||
|
||||
@@ -73,7 +75,16 @@ class BotMetrics:
|
||||
'middleware_duration_seconds',
|
||||
'Time spent in middleware execution',
|
||||
['middleware_name', 'status'],
|
||||
buckets=[0.01, 0.05, 0.1, 0.25, 0.5],
|
||||
# Middleware должен быть быстрым
|
||||
buckets=[0.001, 0.005, 0.01, 0.05, 0.1, 0.25],
|
||||
registry=self.registry
|
||||
)
|
||||
|
||||
# Rate limiting metrics
|
||||
self.rate_limit_hits_total = Counter(
|
||||
'rate_limit_hits_total',
|
||||
'Total number of rate limit hits',
|
||||
['limit_type', 'handler_type'],
|
||||
registry=self.registry
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user