Log Kit¤
LoggingUtility
中使用預設的 setup_logging
為開箱即用的 logger,顯示時間並且以顏色區分 log level。LogFormatter
預設格式為
setup_logging
以外的方法都是子方法,全部湊在一起就變成 setup_logging
。
log_kit
¤
CLASS | DESCRIPTION |
---|---|
LoggingUtility |
用來設置日誌的工具類,支援自定義處理器和過濾設置 |
LoggingUtility
¤
用來設置日誌的工具類,支援自定義處理器和過濾設置
METHOD | DESCRIPTION |
---|---|
setup_logging |
簡單的建立記錄器的方法 |
default_formatter |
返回預設格式化程式,並可選擇性地支持顏色 |
clear_handlers |
從 logger 移除所有 handlers |
create_console_handler |
建立並且基本設定終端機 handler |
create_file_handler |
建立並且基本設定檔案 handler,使用無顏色的 formatter |
suppress_library_logs |
設定指定函式庫的日誌等級 |
setup_logging
¤
setup_logging(
level: int,
log_path: str | None = None,
logger_name: str | None = None,
*,
enable_file_logging: bool = True,
use_color: bool = True,
suppress_libs: dict[str, int] | None = None,
handlers: list[Handler] | None = None,
formatter: Formatter | None = None,
clear_handlers: bool = True,
) -> Logger
簡單的建立記錄器的方法
如果提供了 formatter,則 console_formatter 和 file_formatter 會同時套用該格式器。
PARAMETER | DESCRIPTION |
---|---|
level
|
日誌等級。
TYPE:
|
log_path
|
日誌檔案路徑。
TYPE:
|
logger_name
|
記錄器名稱。
TYPE:
|
enable_file_logging
|
是否啟用檔案日誌。
TYPE:
|
use_color
|
是否使用彩色輸出。
TYPE:
|
suppress_libs
|
要抑制日誌的庫。
TYPE:
|
handlers
|
自定義處理器。
TYPE:
|
formatter
|
自定義格式器。
TYPE:
|
clear_handlers
|
是否清除現有處理器。
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
Logger
|
logging.Logger: Configured logger. |
Usage Examples:
1. 基礎使用:
lazykit.setup_logging()
2. 客製化 formatter 和 handler:
my_formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
my_handler = logging.StreamHandler()
my_handler.setFormatter(my_formatter)
setup_logging(handlers=[my_handler], formatter=my_formatter)
3. 支援抑制指定模組的 logger,例如 httpx 很吵:
be_quiet={'httpx': logging.WARNING, 'httpcore': logging.WARNING}
setup_logging(suppress_libs=be_quiet)
create_console_handler
¤
建立並且基本設定終端機 handler
create_file_handler
¤
建立並且基本設定檔案 handler,使用無顏色的 formatter
suppress_library_logs
¤
設定指定函式庫的日誌等級