Логгирование Python, как быстро сделать вывод ошибок в файл? Возможно ли как то быстро вывести в файл все что python выводит в консоль? Сообщения от команды print и обшибки?
os windows
python 3.4
программа собирается pyinstaller-ом и выполняется на стороннем компьютере.

21 Авг 2019 в 06:31
376 +2
0
Ответы
1

Для логгирования ошибок Python в файл можно воспользоваться стандартным модулем logging. Ниже приведен пример кода, который настраивает логгер для записи ошибок в файл:

import logging
# Настройка логгера
logging.basicConfig(filename='errors.log', level=logging.ERROR)
# Пример генерации ошибки
try:
result = 1 / 0
except ZeroDivisionError as e:
logging.error(f'Division by zero: {e}')

В данном примере все ошибки уровня ERROR будут записываться в файл errors.log. Вы можете настроить уровни логгирования и форматирование вывода логов по своему усмотрению.

Чтобы также записывать вывод команды print в файл, можно перенаправить стандартный вывод в файл. Например, так:

import sys
sys.stdout = open('output.log', 'w')
print('Hello, World!')

Если вы хотите одновременно записывать и вывод команды print, и ошибки в файл, вам нужно будет комбинировать эти два подхода, создавая свой собственный логгер для вывода команды print.

После того, как ваша программа собрана с помощью PyInstaller и запущена на стороннем компьютере, указанные логи будут записываться в соответствующие файлы на этом компьютере. Убедитесь, что у пользователя будет разрешение на запись в эти файлы.

20 Апр в 13:17
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 91 947 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир