У меня есть бот на телеботе и мне нужно, чтобы он в логи отправлял полную строку с трейсбеком, но он этого не делает. Мне в чате по телеботу сказали сделать дебаг лвл везде, но он по прежнему не отправляет мне трейсбек, только само сообщение об ошибке.
Код логов, который работал 1.5 года назад
log_dir = r'/root/WorkFolder/logs/'
if not os.path.exists(log_dir):
os.mkdir(log_dir)
# Создаем объект логгера
logger = logging.getLogger("Bot Logger")
logger.setLevel(logging.DEBUG)
# Создаем обработчик RotatingFileHandler для записи логов в файлы по дням
logname = os.path.join(log_dir, "Roblox_bot_log.log")
handler = TimedRotatingFileHandler(logname, when="midnight", backupCount=10)
handler.suffix = "%Y%m%d"
handler.setLevel(logging.DEBUG)
# Форматируем сообщения логов
BASEDTFORMAT = "%d.%m.%y %H:%M:%S"
FLN = "[%(levelname)s %(asctime)s] [%(name)s] - %(funcName)s %(threadName)s " \
"%(filename)s:%(lineno)d: "
FLNC = "%(filename)s:%(lineno)04d: %(funcName)-12s %(threadName)s " \
"%(levelname)9s %(asctime)s\n"
MSG = "%(message)s"
formatter = logging.Formatter(FLN + MSG, BASEDTFORMAT)
handler.setFormatter(formatter)
# Добавляем обработчик в логгер
logger.addHandler(handler)
telebot_logger.addHandler(handler)
telebot_logger.setLevel(logging.DEBUG)
logger.info("Logger initialized")
...
Текущий результат логов (Неудовлетворительный)
[ERROR 02.01.25 13:32:14] [TeleBot] - _run_middlewares_and_handler WorkerThread1 __init__.py:9227: name 'refferer' is not defined
Я в тупике. Я не знаю, как мне выбить из него трейсбек. Если я ставлю дебаг, то сыпет много лишнего и по прежнему не даёт трейсбеки.