Refactor metrics handling and improve logging
- Removed the MetricsManager initialization from `run_helper.py` to avoid duplication, as metrics are now handled in `main.py`. - Updated logging levels in `server_prometheus.py` and `metrics_middleware.py` to use debug instead of info for less critical messages. - Added metrics configuration to `BaseDependencyFactory` for better management of metrics settings. - Deleted the obsolete `metrics_exporter.py` file to streamline the codebase. - Updated various tests to reflect changes in the metrics handling and ensure proper functionality.
This commit is contained in:
@@ -47,21 +47,18 @@ class MetricsMiddleware(BaseMiddleware):
|
||||
) -> Any:
|
||||
"""Process event and collect metrics."""
|
||||
|
||||
# Добавляем логирование для диагностики
|
||||
self.logger.info(f"📊 MetricsMiddleware called for event type: {type(event).__name__}")
|
||||
|
||||
# Extract command info before execution
|
||||
command_info = None
|
||||
if isinstance(event, Message):
|
||||
self.logger.info(f"📊 Processing Message event")
|
||||
self.logger.debug(f"📊 Processing Message event")
|
||||
await self._record_message_metrics(event)
|
||||
command_info = self._extract_command_info(event)
|
||||
elif isinstance(event, CallbackQuery):
|
||||
self.logger.info(f"📊 Processing CallbackQuery event")
|
||||
self.logger.debug(f"📊 Processing CallbackQuery event")
|
||||
await self._record_callback_metrics(event)
|
||||
command_info = self._extract_callback_command_info(event)
|
||||
else:
|
||||
self.logger.info(f"📊 Processing unknown event type: {type(event).__name__}")
|
||||
self.logger.debug(f"📊 Processing unknown event type: {type(event).__name__}")
|
||||
|
||||
# Execute handler with timing
|
||||
start_time = time.time()
|
||||
@@ -71,7 +68,7 @@ class MetricsMiddleware(BaseMiddleware):
|
||||
|
||||
# Record successful execution
|
||||
handler_name = self._get_handler_name(handler)
|
||||
self.logger.info(f"📊 Recording successful execution: {handler_name}")
|
||||
self.logger.debug(f"📊 Recording successful execution: {handler_name}")
|
||||
metrics.record_method_duration(
|
||||
handler_name,
|
||||
duration,
|
||||
@@ -95,7 +92,7 @@ class MetricsMiddleware(BaseMiddleware):
|
||||
|
||||
# Record error and timing
|
||||
handler_name = self._get_handler_name(handler)
|
||||
self.logger.error(f"📊 Recording error execution: {handler_name}, error: {type(e).__name__}")
|
||||
self.logger.debug(f"📊 Recording error execution: {handler_name}, error: {type(e).__name__}")
|
||||
metrics.record_method_duration(
|
||||
handler_name,
|
||||
duration,
|
||||
|
||||
Reference in New Issue
Block a user