簡體   English   中英

Python記錄FileHandler輸出空白文件

[英]Python logging FileHandler outputting blank file

我試圖將所有過度使用的打印更改為日志記錄。*主要是因為我想擁有一個日志文件。

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.info() logger.debug()logger.info() ,而不是logging.*

更新:

只需將相同的代碼復制到一個空腳本中,然后導入即可按預期進行。 奇怪的。

更新2:

我發現一個問題與我有同樣的問題,他說他找到了一個解決方案,但他不同意:(

更新3:

這是我的資料 每當torrent的狀態更改時,uTorrent就會調用該代碼。 這是我在uTorrent中設置的命令:

py C:\Users\Gcq\Downloads\Torrent\torrent.py -n %N -d %D -f %F -p %P -c %S -s %M

py,因為我的腳本頂部有shebang,告訴py使用python3。 我也安裝了python2.7。
命令行提示是uTorrent公開的信息。

我無法重現該問題(我安裝了Python 3.3.0而不是3.3.2,但這應該不相關。請參見此屏幕截圖:

在此處輸入圖片說明

該行為似乎是預期的,因此我將更仔細地研究您的Python安裝/配置,或您上面未顯示的實際代碼的任何其他部分。

我以為“好吧,我沒有告訴python輸出文件放在哪里”,確實,它在uTorrent基本文件夾中。

有了所有預期的輸出,所以現在一切工作都非常完美。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM