From 4a79bedb0206ad5300291931f6e4df4dcd8f8dc4 Mon Sep 17 00:00:00 2001 From: redstoneenjoyer Date: Thu, 6 Aug 2026 21:01:38 +0300 Subject: [PATCH] check_vds_balance raise + log error --- dags/common/check_vds_balance.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/dags/common/check_vds_balance.py b/dags/common/check_vds_balance.py index 6610a22..484ad87 100644 --- a/dags/common/check_vds_balance.py +++ b/dags/common/check_vds_balance.py @@ -64,7 +64,7 @@ def get_balance(): if response.status_code != 200: logging.error(f"Ошибка HTTP {response.status_code}") logging.error(f"Тело ответа: {response.text[:2000]}") # Ограничение по символам для перестраховочки - return None + raise # Парсим JSON try: @@ -75,7 +75,7 @@ def get_balance(): except json.JSONDecodeError as e: logging.error(f"Ошибка парсинга JSON: {e}") logging.error(f"Первые 500 символов ответа: {response.text[:500]}") - return None + raise # Извлечение баланса balance = None @@ -86,16 +86,20 @@ def get_balance(): return balance except KeyError as e: logging.error(f"Отсутствует ожидаемый ключ: {e}") - return None + logging.error("Ответ API:\n%s", json.dumps(data, ensure_ascii=False, indent=2)) + raise except (IndexError, TypeError): logging.error("Нет элементов в списке клиентов или неверная структура") - return None + logging.error("Ответ API:\n%s", json.dumps(data, ensure_ascii=False, indent=2)) + raise except ValueError as e: logging.error(f"Баланс не является числом или ошибка парсинга: {e}") - return None + logging.error("Ответ API:\n%s", json.dumps(data, ensure_ascii=False, indent=2)) + raise except Exception as e: logging.error(f"Ошибка: {e}") - return None + logging.error("Ответ API:\n%s", json.dumps(data, ensure_ascii=False, indent=2)) + raise with DAG(