簡體   English   中英

Python /如何獲取具有絕對路徑的記錄器?

[英]Python / How to get logger with absolute path?

我嘗試使用python的日志記錄:

import logging

log = logging.getLogger(__name__)
logInstall = logging.getLogger('/var/log/install.log')

log.info("Everything works great")
logInstall.info("Why is not printed to the log file?")

在日志的日志文件中,一切正常,並且打印:“一切正常”

但是在/var/log/install.log ,我什么都看不到。

我做錯了什么?

您在哪里看到logging.getLogger()的參數是文件路徑? 它只是記錄器對象的名稱:

logging.getLogger([名稱])

返回具有指定名稱的記錄器,或者,如果未指定名稱,則返回作為層次結構的根記錄器的記錄器。 如果指定,則名稱通常是點分隔的層次結構名稱,例如“ a”,“ ab”或“ abcd”。 這些名稱的選擇完全取決於正在使用日志記錄的開發人員。

https://docs.python.org/2/library/logging.html#logging.getLogger

該記錄器的記錄位置/方式(文件,stderr,syslog,郵件,網絡調用等)取決於您如何為自己的應用程序配置記錄-這里的要點是您將記錄器的使用(在libs中)與記錄器配置(在應用程序中)。

請注意,通常的做法是使用__name__這樣您將獲得一個類似於程序包/模塊層次結構的記錄器層次結構。

暫無
暫無

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

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