最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python logging日志模塊的核心用法與實操技巧

 更新時間:2026年03月13日 08:56:45   作者:獨斷萬古他化  
logging 是 Python 標準庫中的一個模塊,它提供了靈活的日志記錄功能,通過 logging,開發(fā)者可以方便地將日志信息輸出到控制臺、文件、網(wǎng)絡(luò)等多種目標,本文給大家介紹了Python logging日志模塊的核心用法與實操技巧,需要的朋友可以參考下

logging 日志介紹

logging 是 Python 標準庫中的一個模塊,它提供了靈活的日志記錄功能。通過 logging,開發(fā)者可以方便地將日志信息輸出到控制臺、文件、網(wǎng)絡(luò)等多種目標,同時支持不同級別的日志記錄,以滿足不同場景下的需求。

一、logging 使用示例

1.1 全局logging基礎(chǔ)使用

import logging

logging.basicConfig(level=logging.INFO)

logging.debug('This is a debug message')
logging.info('This is an info message')
logging.warning('This is a warning message')
logging.error('This is an error message')
logging.critical('This is a critical message')

1.2 自定義logger并輸出到控制臺

# 導入 logging 模塊
import logging

logging.basicConfig(level=logging.INFO)

# 獲取一個日志記錄器對象,名稱為當前模塊的名稱
logger = logging.getLogger(__name__)

# 設(shè)置日志記錄器的級別為 DEBUG
# 這意味著所有級別為 DEBUG 及以上的日志都會被記錄
logger.setLevel(logging.DEBUG)

if __name__ == "__main__":
    logger.debug('This is a debug message')
    logger.info('This is an info message')
    logger.warning('This is a warning message')
    logger.error('This is an error message')
    logger.critical('This is a critical message')

執(zhí)行結(jié)果

This is a warning message
This is an error message
This is a critical message

1.3 自定義logger并輸出到日志文件

# 導入 logging 模塊
import logging

# 獲取一個日志記錄器對象,名稱為當前模塊的名稱
logger = logging.getLogger(__name__)

# 設(shè)置日志記錄器的級別為 DEBUG
# 這意味著所有級別為 DEBUG 及以上的日志都會被記錄
logger.setLevel(logging.DEBUG)

# 創(chuàng)建一個 FileHandler 對象,指定日志文件的名稱為 "test.log"
# 這個處理器會將日志信息寫入到指定的文件中
handler = logging.FileHandler(filename="test.log")

# 將這個處理器添加到日志記錄器中
# 這樣,日志記錄器就會使用這個處理器來處理日志信息
logger.addHandler(handler)

if __name__ == "__main__":
    logger.debug('This is a debug message')
    logger.info('This is an info message')
    logger.warning('This is a warning message')
    logger.error('This is an error message')
    logger.critical('This is a critical message')

執(zhí)行結(jié)果(test.log文件內(nèi)容)

This is a debug message
This is an info message
This is a warning message
This is an error message
This is a critical message

1.4 設(shè)置自定義日志格式

# 導入 logging 模塊
import logging

# 獲取一個日志記錄器對象,名稱為當前模塊的名稱
logger = logging.getLogger(__name__)

# 設(shè)置日志記錄器的級別為 DEBUG
# 這意味著所有級別為 DEBUG 及以上的日志都會被記錄
logger.setLevel(logging.DEBUG)

# 創(chuàng)建一個 FileHandler 對象,指定日志文件的名稱為 "test.log"
# 這個處理器會將日志信息寫入到指定的文件中
handler = logging.FileHandler(filename="test.log")

# 創(chuàng)建一個日志格式器對象
formatter = logging.Formatter(
    "%(asctime)s %(levelname)s [%(name)s] [%(filename)s (%(funcName)s:%(lineno)d)] - %(message)s"
)

# 將格式器設(shè)置到處理器上
handler.setFormatter(formatter)

# 將這個處理器添加到日志記錄器中
# 這樣,日志記錄器就會使用這個處理器來處理日志信息
logger.addHandler(handler)

if __name__ == "__main__":
    logger.debug('This is a debug message')
    logger.info('This is an info message')
    logger.warning('This is a warning message')
    logger.error('This is an error message')
    logger.critical('This is a critical message')

二、關(guān)鍵知識點說明

2.1 日志記錄器獲取

通過 logging.getLogger(__name__) 獲取日志記錄器對象,name 為當前模塊的名稱。使用模塊名稱作為日志記錄器的名稱有助于在大型項目中區(qū)分不同模塊的日志。

2.2 日志級別規(guī)則

日志級別金字塔(優(yōu)先級從低到高):DEBUG < INFO < WARNING < ERROR < CRITICAL

  • 日志記錄器的級別通過 logger.setLevel(logging.XXX) 設(shè)置
  • 只有高于或等于設(shè)定級別的日志才會被處理和記錄

2.3 日志處理器

  • FileHandler:用于將日志寫入文件,通過 logging.FileHandler(filename="文件名") 創(chuàng)建
  • StreamHandler:用于將日志輸出到控制臺(示例中注釋部分可啟用)
  • 一個日志記錄器可以添加多個處理器,實現(xiàn)日志多目標輸出(如同時輸出到控制臺和文件)

2.4 日志格式占位符說明

格式占位符說明
%(asctime)s日志記錄的時間戳,通常顯示為日期和時間。
%(levelname)s日志級別(如 DEBUG、INFO、WARNING、ERROR、CRITICAL)。
%(name)s日志記錄器的名稱,通常為模塊名稱。
%(filename)s日志記錄發(fā)生的文件名。
%(funcName)s日志記錄發(fā)生的函數(shù)名。
%(lineno)d日志記錄發(fā)生的行號。
%(message)s日志消息本身。

2.5 格式器與處理器綁定

通過 handler.setFormatter(formatter) 將格式器對象設(shè)置到處理器上,處理器會按照指定格式格式化日志信息后輸出。

通過這種方式,可以控制日志信息的輸出格式,可以包含如:時間戳、日志級別、文件名、函數(shù)名、行號等。

以上就是Python logging日志模塊的核心用法與實操技巧的詳細內(nèi)容,更多關(guān)于Python logging日志模塊的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Flask框架通過Flask_login實現(xiàn)用戶登錄功能示例

    Flask框架通過Flask_login實現(xiàn)用戶登錄功能示例

    這篇文章主要介紹了Flask框架通過Flask_login實現(xiàn)用戶登錄功能,結(jié)合實例形式較為詳細的分析了flask框架使用Flask_login實現(xiàn)用戶登陸功能的具體操作步驟、相關(guān)實現(xiàn)技巧與操作注意事項,需要的朋友可以參考下
    2018-07-07
  • Python+drawpad實現(xiàn)CPU監(jiān)控小程序

    Python+drawpad實現(xiàn)CPU監(jiān)控小程序

    這篇文章主要為大家詳細介紹了如何利用Python+drawpad實現(xiàn)一個簡單的CPU監(jiān)控小程序,文中示例代碼講解詳細,感興趣的小伙伴可以嘗試一下
    2022-08-08
  • Python?pygame項目實戰(zhàn)英雄動畫特效實現(xiàn)

    Python?pygame項目實戰(zhàn)英雄動畫特效實現(xiàn)

    這篇文章主要為大家介紹了Python?pygame項目實戰(zhàn)英雄動畫特效實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08
  • Pycharm 創(chuàng)建 Django admin 用戶名和密碼的實例

    Pycharm 創(chuàng)建 Django admin 用戶名和密碼的實例

    今天小編就為大家分享一篇Pycharm 創(chuàng)建 Django admin 用戶名和密碼的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • 使用apiDoc實現(xiàn)python接口文檔編寫

    使用apiDoc實現(xiàn)python接口文檔編寫

    今天小編就為大家分享一篇使用apiDoc實現(xiàn)python接口文檔編寫,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Django框架中render_to_response()函數(shù)的使用方法

    Django框架中render_to_response()函數(shù)的使用方法

    這篇文章主要介紹了Django框架中render_to_response()函數(shù)的使用方法,注意范例中該方法的參數(shù)的使用,需要的朋友可以參考下
    2015-07-07
  • Postman安裝與使用詳細教程 附postman離線安裝包

    Postman安裝與使用詳細教程 附postman離線安裝包

    這篇文章主要介紹了Postman安裝與使用詳細教程 附postman離線安裝包,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • Django2 連接MySQL及model測試實例分析

    Django2 連接MySQL及model測試實例分析

    這篇文章主要介紹了Django2 連接MySQL及model測試,結(jié)合實例形式分析了Django2框架使用pymysql庫進行mysql數(shù)據(jù)庫連接與model調(diào)用測試方法,需要的朋友可以參考下
    2019-12-12
  • python logging模塊的使用總結(jié)

    python logging模塊的使用總結(jié)

    這篇文章主要介紹了python logging模塊使用總結(jié)以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。,需要的朋友可以參考下
    2019-07-07
  • Python如何利用IMAP實現(xiàn)郵箱客戶端功能

    Python如何利用IMAP實現(xiàn)郵箱客戶端功能

    IMAP是另一種讀取電子郵件的協(xié)議,IMAP是讀取郵件服務器的電子郵件與公布欄信息的方法,也就是說IMAP 允許客戶端的郵件程序存取遠程的信息,這篇文章主要給大家介紹了關(guān)于Python如何利用IMAP實現(xiàn)郵箱客戶端功能的相關(guān)資料,需要的朋友可以參考下
    2021-09-09

最新評論

沾益县| 玉山县| 南宫市| 罗山县| 安平县| 秭归县| 泰安市| 丰镇市| 永顺县| 南康市| 西平县| 池州市| 威海市| 肇东市| 尚志市| 会理县| 平和县| 牙克石市| 嵊州市| 临高县| 安多县| 嵊泗县| 纳雍县| 西峡县| 顺昌县| 石阡县| 江西省| 新巴尔虎左旗| 丰宁| 扎鲁特旗| 阿拉尔市| 若羌县| 大化| 苏尼特右旗| 黄平县| 万源市| 沅江市| 荥经县| 保靖县| 兴隆县| 玉龙|