Как предотвратить усечение файла журнала с помощью модуля регистрации Python? - PullRequest
5 голосов
/ 05 октября 2009

Мне нужно использовать модуль регистрации Python, чтобы напечатать отладочную информацию в файл с такими утверждениями, как:

logging.debug(something)

Файл урезан (я предполагаю - модулем регистрации), и сообщения удаляются, прежде чем я их вижу - как это можно предотвратить?

Вот моя конфигурация регистрации:

logging.basicConfig(
    level = logging.DEBUG,
    format = '%(asctime)s %(levelname)s %(message)s',
    filename = '/tmp/my-log.txt',
    filemode = 'w'
)

Спасибо!

1 Ответ

11 голосов
/ 05 октября 2009

logging

При повторном запуске сценария дополнительные сообщения журнала добавляются в файл. Чтобы каждый раз создавать новый файл, вы можете передать аргумент filemode в basicConfig () со значением 'w' . Однако вместо того, чтобы управлять размером файла самостоятельно, проще использовать RotatingFileHandler.

Чтобы предотвратить перезапись файла, не следует устанавливать filemode на 'w' или устанавливать на 'a' (это настройка по умолчанию).

Я считаю, что вы просто перезаписываете файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...