Не уходя из файла settings.py
Перенесём сюда инициализацию бота, а именно строку bot = Bot(token=Secrets.token) из файла main.py и сразу заменим содержимое на получение данных из класса Secrets:
from aiogram import Bot
bot = Bot(token=Secrets.token)Таким образом, мы сможем обращаться к экземпляру бота не только из главного файла.
Импорт бота.
С файлом settings.py мы пока закончили.
Перейдём в файл main.py и изменим импорты.
Было:
from aiogram import Bot, DispatcherПоменяем на:
from aiogram import Dispatcher
from botlogic.settings import bot
Добавляем логгер.
Как вы помните, при запуске бота, не понятно, запустился он или нет, поскольку в терминале не было никаких данных. Давайте это исправим, добавив базовый логгер.
Перед переменной bot добавляем пустую строку и вставляем туда код логгера, а в начло файла добавляем строку импорта:
import logging
logging.basicConfig(
level=logging.INFO,
format="%(asctime)s - [%(levelname)s] - %(name)s - (%(filename)s).%(funcName)s(%(lineno)d) - %(message)s"
)
При запуске бота, будет инициализироваться метод basicConfig из втроенной библиотеки logging. В него мы передаём два параметра:
level- определяющий уровень выводимой информации. Основные уровни информирования:DEBUG, INFO, WARNING, ERROR.format- определяющий формат выводимой информации.
С уровнем логирования всё понятно, он будет выводить данные уровняINFO, то о переменных в формате стоит рассказать подробнее.
Строка лога состоит из 7ми переменных:
%(asctime)s— заменяется на текущее время в формате "год-месяц-день час:минута:секунда";%(levelname)s— заменяется на уровень важности лога, в нашем случаеINFO;%(name)s— заменяется на имя логгера, который записывает сообщение;%(filename)s— заменяется на имя файла, в котором была вызвана функция логирования;%(funcName)s— заменяется на имя функции, в которой была вызвана функция логирования;%(lineno)d— заменяется на номер строки, в которой была вызвана функция логирования;%(message)s— заменяется на текст сообщения, переданного для записи в лог.
Комментарии
Оставить комментарийВойдите, чтобы оставить комментарий.
Комментариев пока нет.