WIP: Development changes moved from master

- Modified Grafana dashboards
- Updated message sender and metrics collector
- Added new rate limiting dashboard
- Removed count_tests.py
This commit is contained in:
2025-09-05 01:29:28 +03:00
parent 7d08575512
commit 40968dd075
7 changed files with 1584 additions and 93 deletions

View File

@@ -74,7 +74,6 @@ class MessageSender:
if self.last_status_time is None:
logger.info(f"should_send_status: last_status_time is None, отправляем статус")
self.last_status_time = now
return True
# Вычисляем разницу в минутах
@@ -84,7 +83,6 @@ class MessageSender:
# Проверяем, что прошло N минут с последней отправки
if time_diff_minutes >= self.status_update_interval_minutes:
logger.info(f"should_send_status: отправляем статус (прошло {time_diff_minutes:.1f} минут)")
self.last_status_time = now
return True
logger.info(f"should_send_status: статус не отправляем (прошло {time_diff_minutes:.1f} минут)")
@@ -92,7 +90,12 @@ class MessageSender:
def should_send_startup_status(self) -> bool:
"""Проверка, нужно ли отправить статус при запуске"""
return self.last_status_time is None
# Отправляем статус при запуске только если он еще не был отправлен
if self.last_status_time is None:
logger.info("should_send_startup_status: отправляем статус при запуске")
return True
logger.info("should_send_startup_status: статус уже был отправлен, пропускаем")
return False
def _get_disk_space_emoji(self, disk_percent: float) -> str:
"""Получение эмодзи для дискового пространства"""
@@ -257,7 +260,14 @@ Read: <b>{system_info['disk_read_speed']}</b> | Write: <b>{system_info['disk_wri
return False
status_message = self.get_status_message(system_info)
return await self.send_telegram_message(self.group_for_logs, status_message)
success = await self.send_telegram_message(self.group_for_logs, status_message)
# Обновляем время последней отправки только при успешной отправке
if success:
self.last_status_time = datetime.now()
logger.info("send_status_message: время последней отправки обновлено")
return success
except Exception as e:
logger.error(f"Ошибка при отправке статуса: {e}")