Fix logging
This commit is contained in:
@@ -7,6 +7,9 @@ from aiogram.types import BufferedInputFile
|
||||
|
||||
from config import ADMIN_ID, BACK_DIR, DB_NAME, DB_PASSWORD, DB_USER
|
||||
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
async def backup_database():
|
||||
from bot import bot
|
||||
@@ -24,9 +27,9 @@ async def backup_database():
|
||||
["pg_dump", "-U", USER, "-h", HOST, "-F", "c", "-f", BACKUP_FILE, DB_NAME],
|
||||
check=True,
|
||||
)
|
||||
logging.info(f"Бэкап базы данных создан: {BACKUP_FILE}")
|
||||
logger.info(f"Бэкап базы данных создан: {BACKUP_FILE}")
|
||||
except subprocess.CalledProcessError as e:
|
||||
logging.error(f"Ошибка при создании бэкапа базы данных: {e}")
|
||||
logger.error(f"Ошибка при создании бэкапа базы данных: {e}")
|
||||
return
|
||||
|
||||
try:
|
||||
@@ -35,9 +38,9 @@ async def backup_database():
|
||||
backup_file.read(), filename=os.path.basename(BACKUP_FILE)
|
||||
)
|
||||
await bot.send_document(ADMIN_ID, backup_input_file)
|
||||
logging.info(f"Бэкап базы данных отправлен админу: {ADMIN_ID}")
|
||||
logger.info(f"Бэкап базы данных отправлен админу: {ADMIN_ID}")
|
||||
except Exception as e:
|
||||
logging.error(f"Ошибка при отправке бэкапа в Telegram: {e}")
|
||||
logger.error(f"Ошибка при отправке бэкапа в Telegram: {e}")
|
||||
|
||||
try:
|
||||
subprocess.run(
|
||||
@@ -57,8 +60,8 @@ async def backup_database():
|
||||
],
|
||||
check=True,
|
||||
)
|
||||
logging.info("Старые бэкапы удалены.")
|
||||
logger.info("Старые бэкапы удалены.")
|
||||
except subprocess.CalledProcessError as e:
|
||||
logging.error(f"Ошибка при удалении старых бэкапов: {e}")
|
||||
logger.error(f"Ошибка при удалении старых бэкапов: {e}")
|
||||
|
||||
del os.environ["PGPASSWORD"]
|
||||
|
||||
@@ -4,6 +4,7 @@ import logging
|
||||
from config import SERVERS
|
||||
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
async def add_client(
|
||||
@@ -45,16 +46,16 @@ async def add_client(
|
||||
}
|
||||
|
||||
async with session.post(url, json=data, headers=headers) as response:
|
||||
logging.info(f"Запрос на добавление клиента: {data}")
|
||||
logging.info(f"Статус ответа: {response.status}")
|
||||
logger.info(f"Запрос на добавление клиента: {data}")
|
||||
logger.info(f"Статус ответа: {response.status}")
|
||||
response_text = await response.text()
|
||||
logging.info(f"Ответ от сервера: {response_text}")
|
||||
logger.info(f"Ответ от сервера: {response_text}")
|
||||
|
||||
if response.status == 200:
|
||||
logging.info(f"Клиент добавлен: email={email}")
|
||||
logger.info(f"Клиент добавлен: email={email}")
|
||||
return await response.json()
|
||||
else:
|
||||
logging.error(
|
||||
logger.error(
|
||||
f"Ошибка при добавлении клиента: {response.status}, {response_text}"
|
||||
)
|
||||
return None
|
||||
@@ -68,21 +69,21 @@ async def extend_client_key(
|
||||
async with session.get(
|
||||
f"{api_url}/panel/api/inbounds/getClientTraffics/{email}"
|
||||
) as response:
|
||||
logging.info(f"GET {response.url} Status: {response.status}")
|
||||
logger.info(f"GET {response.url} Status: {response.status}")
|
||||
response_text = await response.text()
|
||||
logging.info(f"GET Response: {response_text}")
|
||||
logger.info(f"GET Response: {response_text}")
|
||||
|
||||
if response.status != 200:
|
||||
logging.error(
|
||||
logger.error(
|
||||
f"Ошибка при получении данных клиента: {response.status} - {response_text}"
|
||||
)
|
||||
return False
|
||||
|
||||
client_data = (await response.json()).get("obj", {})
|
||||
logging.info(client_data)
|
||||
logger.info(client_data)
|
||||
|
||||
if not client_data:
|
||||
logging.error("Не удалось получить данные клиента.")
|
||||
logger.error("Не удалось получить данные клиента.")
|
||||
return False
|
||||
|
||||
current_expiry_time = client_data.get("expiryTime", 0)
|
||||
@@ -122,20 +123,20 @@ async def extend_client_key(
|
||||
json=payload,
|
||||
headers=headers,
|
||||
) as response:
|
||||
logging.info(f"POST {response.url} Status: {response.status}")
|
||||
logging.info(f"POST Request Data: {json.dumps(payload, indent=2)}")
|
||||
logger.info(f"POST {response.url} Status: {response.status}")
|
||||
logger.info(f"POST Request Data: {json.dumps(payload, indent=2)}")
|
||||
response_text = await response.text()
|
||||
logging.info(f"POST Response: {response_text}")
|
||||
logger.info(f"POST Response: {response_text}")
|
||||
|
||||
if response.status == 200:
|
||||
return True
|
||||
else:
|
||||
logging.error(
|
||||
logger.error(
|
||||
f"Ошибка при продлении ключа: {response.status} - {response_text}"
|
||||
)
|
||||
return False
|
||||
except Exception as e:
|
||||
logging.error(f"Ошибка запроса: {e}")
|
||||
logger.error(f"Ошибка запроса: {e}")
|
||||
return False
|
||||
|
||||
|
||||
@@ -174,20 +175,20 @@ async def extend_client_key_admin(
|
||||
json=payload,
|
||||
headers=headers,
|
||||
) as response:
|
||||
logging.info(f"POST {response.url} Status: {response.status}")
|
||||
logging.info(f"POST Request Data: {json.dumps(payload, indent=2)}")
|
||||
logger.info(f"POST {response.url} Status: {response.status}")
|
||||
logger.info(f"POST Request Data: {json.dumps(payload, indent=2)}")
|
||||
response_text = await response.text()
|
||||
logging.info(f"POST Response: {response_text}")
|
||||
logger.info(f"POST Response: {response_text}")
|
||||
|
||||
if response.status == 200:
|
||||
return True
|
||||
else:
|
||||
logging.error(
|
||||
logger.error(
|
||||
f"Ошибка при продлении ключа: {response.status} - {response_text}"
|
||||
)
|
||||
return False
|
||||
except Exception as e:
|
||||
logging.error(f"Ошибка запроса: {e}")
|
||||
logger.error(f"Ошибка запроса: {e}")
|
||||
return False
|
||||
|
||||
|
||||
@@ -201,10 +202,10 @@ async def delete_client(session, server_id: str, client_id: str) -> bool:
|
||||
if response.status == 200:
|
||||
return True
|
||||
else:
|
||||
logging.error(
|
||||
logger.error(
|
||||
f"Ошибка при удалении клиента: {response.status} - {await response.text()}"
|
||||
)
|
||||
return False
|
||||
except Exception as e:
|
||||
logging.error(f"Ошибка запроса: {e}")
|
||||
logger.error(f"Ошибка запроса: {e}")
|
||||
return False
|
||||
|
||||
@@ -18,6 +18,7 @@ from database import (
|
||||
from middlewares.admin import admin_only
|
||||
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
router = Router()
|
||||
|
||||
@@ -82,7 +83,7 @@ async def cmd_update_key_expiry(message: types.Message):
|
||||
server_id, ADMIN_USERNAME, ADMIN_PASSWORD
|
||||
)
|
||||
|
||||
logging.info(
|
||||
logger.info(
|
||||
f"Попытка обновить панель для server_id: {server_id}, tg_id: {tg_id}, client_id: {client_id}, email: {email}, expiryTime: {expiry_time}"
|
||||
)
|
||||
|
||||
@@ -90,7 +91,7 @@ async def cmd_update_key_expiry(message: types.Message):
|
||||
session, server_id, tg_id, client_id, email, expiry_time
|
||||
)
|
||||
|
||||
logging.info(
|
||||
logger.info(
|
||||
f"Статус обновления панели: {'Успешно' if success else 'Не удалось'}"
|
||||
)
|
||||
if success:
|
||||
|
||||
@@ -16,9 +16,7 @@ from database import get_client_id_by_email, get_tg_id_by_client_id, update_key_
|
||||
from handlers.admin.admin_panel import back_to_admin_menu
|
||||
from handlers.utils import sanitize_key_name
|
||||
|
||||
logging.basicConfig(
|
||||
level=logging.DEBUG, format="%(asctime)s - %(levelname)s - %(message)s"
|
||||
)
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
router = Router()
|
||||
|
||||
@@ -20,6 +20,7 @@ from handlers.start import start_command
|
||||
from handlers.texts import TRIAL
|
||||
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
router = Router()
|
||||
|
||||
@@ -83,11 +84,11 @@ async def handle_send_trial_command(message: types.Message, state: FSMContext):
|
||||
await bot.send_message(chat_id=tg_id, text=trial_message)
|
||||
except Exception as e:
|
||||
if "Forbidden: bot was blocked by the user" in str(e):
|
||||
logging.info(
|
||||
logger.info(
|
||||
f"Бот заблокирован пользователем с tg_id: {tg_id}"
|
||||
)
|
||||
else:
|
||||
logging.error(
|
||||
logger.error(
|
||||
f"Ошибка при отправке сообщения пользователю {tg_id}: {e}"
|
||||
)
|
||||
|
||||
@@ -133,13 +134,13 @@ async def process_message_to_all(message: types.Message, state: FSMContext):
|
||||
try:
|
||||
await bot.send_message(chat_id=tg_id, text=text_message)
|
||||
except Exception as e:
|
||||
logging.error(
|
||||
logger.error(
|
||||
f"Ошибка при отправке сообщения пользователю {tg_id}: {e}. Пропускаем этого пользователя."
|
||||
)
|
||||
|
||||
await message.answer("Сообщение было отправлено всем клиентам.")
|
||||
except Exception as e:
|
||||
logging.error(f"Ошибка при подключении к базе данных: {e}")
|
||||
logger.error(f"Ошибка при подключении к базе данных: {e}")
|
||||
await message.answer("Произошла ошибка при отправке сообщения.")
|
||||
finally:
|
||||
await conn.close()
|
||||
|
||||
@@ -39,9 +39,7 @@ from handlers.utils import sanitize_key_name
|
||||
|
||||
router = Router()
|
||||
|
||||
logging.basicConfig(
|
||||
level=logging.DEBUG, format="%(asctime)s - %(levelname)s - %(message)s"
|
||||
)
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
|
||||
@@ -40,9 +40,7 @@ locale.setlocale(locale.LC_TIME, "ru_RU.UTF-8")
|
||||
|
||||
router = Router()
|
||||
|
||||
logging.basicConfig(
|
||||
level=logging.DEBUG, format="%(asctime)s - %(levelname)s - %(message)s"
|
||||
)
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
|
||||
@@ -6,9 +6,7 @@ from aiohttp import web
|
||||
|
||||
from config import SERVERS
|
||||
|
||||
logging.basicConfig(
|
||||
level=logging.DEBUG, format="%(asctime)s - %(levelname)s - %(message)s"
|
||||
)
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@ from handlers.texts import INSTRUCTIONS
|
||||
from handlers.utils import generate_random_email
|
||||
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
async def create_trial_key(tg_id: int):
|
||||
@@ -74,7 +75,7 @@ async def generate_and_store_keys(
|
||||
tg_id,
|
||||
)
|
||||
else:
|
||||
logging.error("Не удалось создать ключ на одном или нескольких серверах.")
|
||||
logger.error("Не удалось создать ключ на одном или нескольких серверах.")
|
||||
|
||||
finally:
|
||||
await conn.close()
|
||||
|
||||
@@ -18,7 +18,7 @@ from handlers.texts import (
|
||||
RENEWAL_PLANS,
|
||||
)
|
||||
|
||||
logging.basicConfig(level=logging.INFO)
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
router = Router()
|
||||
|
||||
@@ -18,6 +18,7 @@ from handlers.texts import PAYMENT_OPTIONS
|
||||
|
||||
router = Router()
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class ReplenishBalanceState(StatesGroup):
|
||||
@@ -52,16 +53,16 @@ async def create_payment(user_id, amount, email, ip):
|
||||
)
|
||||
response_data = response.json()
|
||||
|
||||
logging.debug(f"Ответ от FreeKassa при создании платежа: {response_data}")
|
||||
logger.debug(f"Ответ от FreeKassa при создании платежа: {response_data}")
|
||||
|
||||
if response_data.get("type") == "success":
|
||||
return response_data["location"]
|
||||
else:
|
||||
logging.error(f"Ошибка создания платежа: {response_data}")
|
||||
logger.error(f"Ошибка создания платежа: {response_data}")
|
||||
return None
|
||||
|
||||
except Exception as e:
|
||||
logging.error(f"Ошибка запроса к FreeKassa: {e}")
|
||||
logger.error(f"Ошибка запроса к FreeKassa: {e}")
|
||||
return None
|
||||
|
||||
|
||||
@@ -72,14 +73,14 @@ async def send_payment_success_notification(user_id, amount):
|
||||
text=f"Ваш баланс успешно пополнен на {amount} рублей. Спасибо за оплату!",
|
||||
)
|
||||
except Exception as e:
|
||||
logging.error(f"Ошибка при отправке уведомления пользователю {user_id}: {e}")
|
||||
logger.error(f"Ошибка при отправке уведомления пользователю {user_id}: {e}")
|
||||
|
||||
|
||||
async def freekassa_webhook(request):
|
||||
data = await request.json()
|
||||
logging.debug(f"Получен вебхук от FreeKassa: {data}")
|
||||
logger.debug(f"Получен вебхук от FreeKassa: {data}")
|
||||
|
||||
logging.debug(f"Данные вебхука от FreeKassa: {data}")
|
||||
logger.debug(f"Данные вебхука от FreeKassa: {data}")
|
||||
|
||||
if data["status"] == "completed":
|
||||
user_id = data["metadata"]["user_id"]
|
||||
|
||||
@@ -22,12 +22,13 @@ from handlers.texts import PAYMENT_OPTIONS
|
||||
router = Router()
|
||||
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
Configuration.account_id = YOOKASSA_SHOP_ID
|
||||
Configuration.secret_key = YOOKASSA_SECRET_KEY
|
||||
|
||||
logging.debug(f"Account ID: {YOOKASSA_SHOP_ID}")
|
||||
logging.debug(f"Secret Key: {YOOKASSA_SECRET_KEY}")
|
||||
logger.debug(f"Account ID: {YOOKASSA_SHOP_ID}")
|
||||
logger.debug(f"Secret Key: {YOOKASSA_SECRET_KEY}")
|
||||
|
||||
|
||||
class ReplenishBalanceState(StatesGroup):
|
||||
@@ -55,7 +56,7 @@ async def send_message_with_deletion(
|
||||
await state.update_data({message_key: sent_message.message_id})
|
||||
|
||||
except Exception as e:
|
||||
logging.error(f"Ошибка при удалении/отправке сообщения: {e}")
|
||||
logger.error(f"Ошибка при удалении/отправке сообщения: {e}")
|
||||
return None
|
||||
|
||||
return sent_message
|
||||
@@ -205,13 +206,13 @@ async def send_payment_success_notification(user_id: int, amount: float):
|
||||
reply_markup=profile_keyboard,
|
||||
)
|
||||
except Exception as e:
|
||||
logging.error(f"Ошибка при отправке уведомления пользователю {user_id}: {e}")
|
||||
logger.error(f"Ошибка при отправке уведомления пользователю {user_id}: {e}")
|
||||
|
||||
|
||||
async def yookassa_webhook(request):
|
||||
event = await request.json()
|
||||
|
||||
logging.debug(f"Webhook event received: {event}")
|
||||
logger.debug(f"Webhook event received: {event}")
|
||||
|
||||
if event["event"] == "payment.succeeded":
|
||||
user_id_str = event["object"]["metadata"]["user_id"]
|
||||
@@ -221,13 +222,13 @@ async def yookassa_webhook(request):
|
||||
user_id = int(user_id_str)
|
||||
amount = float(amount_str)
|
||||
|
||||
logging.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}")
|
||||
logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}")
|
||||
await update_balance(user_id, amount)
|
||||
|
||||
await send_payment_success_notification(user_id, amount)
|
||||
|
||||
except ValueError as e:
|
||||
logging.error(f"Ошибка конвертации user_id или amount: {e}")
|
||||
logger.error(f"Ошибка конвертации user_id или amount: {e}")
|
||||
return web.Response(status=400)
|
||||
|
||||
return web.Response(status=200)
|
||||
@@ -307,7 +308,7 @@ async def process_custom_amount_input(message: types.Message, state: FSMContext)
|
||||
await message.answer("Ошибка при создании платежа.")
|
||||
|
||||
except Exception as e:
|
||||
logging.error(f"Ошибка при создании платежа: {e}")
|
||||
logger.error(f"Ошибка при создании платежа: {e}")
|
||||
await message.answer("Произошла ошибка при создании платежа.")
|
||||
else:
|
||||
await message.answer("Некорректная сумма. Пожалуйста, введите сумму еще раз:")
|
||||
|
||||
+1
-1
@@ -24,7 +24,7 @@ class ReplenishBalanceState(StatesGroup):
|
||||
|
||||
router = Router()
|
||||
|
||||
logging.basicConfig(level=logging.INFO)
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
|
||||
+5
-4
@@ -20,6 +20,7 @@ from handlers.keys.trial_key import create_trial_key
|
||||
from handlers.texts import ABOUT_VPN, INSTRUCTIONS_TRIAL, WELCOME_TEXT
|
||||
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
router = Router()
|
||||
|
||||
@@ -71,10 +72,10 @@ async def send_welcome_message(chat_id: int, trial_status: int):
|
||||
|
||||
@router.message(Command("start"))
|
||||
async def start_command(message: Message):
|
||||
logging.info(f"Received start command with text: {message.text}")
|
||||
logger.info(f"Received start command with text: {message.text}")
|
||||
if "referral_" in message.text:
|
||||
referrer_tg_id = int(message.text.split("referral_")[1])
|
||||
logging.info(f"Referral ID: {referrer_tg_id}")
|
||||
logger.info(f"Referral ID: {referrer_tg_id}")
|
||||
if not await check_connection_exists(message.from_user.id):
|
||||
await add_connection(message.from_user.id)
|
||||
await add_referral(message.from_user.id, referrer_tg_id)
|
||||
@@ -104,10 +105,10 @@ async def handle_connect_vpn(callback_query: CallbackQuery):
|
||||
""",
|
||||
user_id,
|
||||
)
|
||||
logging.info(f"Rows updated: {result}")
|
||||
logger.info(f"Rows updated: {result}")
|
||||
|
||||
except Exception as e:
|
||||
logging.error(f"Ошибка при обновлении trial: {e}")
|
||||
logger.error(f"Ошибка при обновлении trial: {e}")
|
||||
|
||||
finally:
|
||||
await conn.close()
|
||||
|
||||
Reference in New Issue
Block a user