tg_monitor_bot/config.py

45 lines
1.6 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import os
import logging
from dotenv import load_dotenv
load_dotenv()
logger = logging.getLogger(__name__)
BOT_TOKEN = os.getenv("BOT_TOKEN")
ADMIN_ID = int(os.getenv("ADMIN_ID", 0))
if not BOT_TOKEN:
logger.error("❌ BOT_TOKEN не найден в .env!")
if ADMIN_ID == 0:
logger.warning("⚠️ ADMIN_ID не установлен или равен 0!")
# Парсим хосты
HOSTS_RAW = os.getenv("HOSTS", "")
HOSTS_LIST = []
if HOSTS_RAW:
for item in HOSTS_RAW.split(";"):
if item.strip():
try:
parts = item.strip().split(",")
if len(parts) != 5:
logger.warning(f"⚠️ Неверный формат хоста: {item}. Ожидается: имя,ip,порт,логин,путь_к_ключу")
continue
name, ip, port, user, key_path = parts
# Проверяем существование ключа
if not os.path.exists(key_path):
logger.warning(f"⚠️ Файл ключа {key_path} не существует для хоста {name}!")
HOSTS_LIST.append({
"name": name,
"ip": ip,
"port": int(port),
"user": user,
"key_path": key_path
})
logger.info(f"✅ Добавлен хост: {name} ({ip})")
except ValueError as e:
logger.error(f"❌ Ошибка парсинга хоста {item}: {e}")
else:
logger.error("❌ HOSTS не задан в .env!")