Распространение logging.logger из модуля в один файл журналаPython

Программы на Python
Ответить
Anonymous
 Распространение logging.logger из модуля в один файл журнала

Сообщение Anonymous »

У меня есть проект Python с такой структурой:

Код: Выделить всё

Project-Root/
|-- script.py
|-- utils/
|   |-- utils.py
|   |-- init.py
Мой скрипт.py выглядит следующим образом: я импортирую журналирование, настраиваю выходной файл, импортирую функцию из утилит, затем запускаю некоторый код:

Код: Выделить всё

import logging
from utils.utils import load_query

# Setup logger
logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
file_handler = logging.FileHandler('etl.log')
logger.addHandler(file_handler)

logger.info("Starting")
load_query()
logger.info("Finished")
В utils.py я настраиваю ведение журнала, вызывая только getLogger, а затем получаю код для функции, включающей оператор logger.info:

Код: Выделить всё

# Setup logger
import logging
logger = logging.getLogger(__name__)

def load_query():
logger.info("Running function")
Основываясь на том, что я прочитал здесь и здесь, я подумал, что это должно распространяться на настройки файла etl.log в script.py, но мой файл журнала показывает только журналы из script.py.
Почему это происходит и как я могу распространить журналы?>

Подробнее здесь: https://stackoverflow.com/questions/798 ... e-log-file
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»