Я намагаюся змінити всі мої надмірно використані відбитки на ведення журналів. * Головним чином тому, що я хотів мати файл журналу.
logger = logging.getLogger(__name__)
formatter = logging.Formatter("{levelname}:{name}:{message}", style="{")
file_handler = logging.FileHandler("log.txt")
file_handler.setFormatter(formatter)
file_handler.setLevel(logging.DEBUG)
logger.addHandler(file_handler)
console_handler = logging.StreamHandler()
console_handler.setLevel(logging.INFO)
console_handler.setFormatter(formatter)
logger.addHandler(console_handler)
logger.setLevel(logging.DEBUG)
Це код, який я маю на даний момент, і він друкує правильно на консолі, але взагалі нічого не виводить у файл. Файл навіть створюється випадковим чином, але коли це відбувається, він завжди порожній.
Я використовую logger.debug()
і logger.info()
, а не logging.*
ті, хто
Оновлення:
Просто скопіюйте той самий код у порожній сценарій та імпортуйте роботи, як очікувалося. Дивно.
Оновлення 2:
я знайшов питання у мене така ж проблема, як у мене, він каже, що знайшов рішення, але не поділяє його :(
Оновити 3:
Це моє джерело. Код викликає uTorrent щоразу, коли статус торрента змінюється. Це команда, яку я встановив в uTorrent:
py C:UsersGcqDownloadsTorrenttorrent.py -n %N -d %D -f %F -p %P -c %S -s %M
py, тому що у мене є shebang у верхній частині мого сценарію, який говорить py, щоб використовувати python3. У мене також встановлений python2.7.
А командні рядки - це інформація, яку викриває uTorrent.
Відповіді:
1 для відповіді № 1Я не в змозі відтворити проблему (у мене встановлений Python 3.3.0, а не 3.3.2, але це не повинно бути актуальним. Дивіться на цьому скріншоті:
Поведінка виглядає так, як очікувалося, тому я детальніше придивлюся до вашої установки / конфігурації Python або будь-якої іншої частини вашого фактичного коду, яку ви не показали вище.
0 для відповіді № 2
Я подумав, що "добре, я не сказав, щоб python, куди слід поставити свій вихідний файл", і справді, це було в базовій папці uTorrent.
З усіма очікуваними результатами, тому зараз усе працює ідеально.