欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python實現(xiàn)自定義日志的具體方法

 更新時間:2021年05月28日 08:27:36   作者:小妮淺淺  
在本篇文章里小編給大家整理的是一篇關(guān)于python實現(xiàn)自定義日志的具體方法,有興趣的朋友們可以學習下。

1、導入logging模塊:

import logging

2、創(chuàng)建日志收集器:

logger = logging.getLogger(“日志收集器的name”)

3、設置日志收集器的日志級別:

logger.setLevel(logging.INFO) #設置收集器的級別為INFO。

4、給日志收集器創(chuàng)建輸出渠道,根據(jù)第一部分的內(nèi)容知:日志輸出渠道包含控制臺輸出和文件輸出。

5、設置日志輸出的內(nèi)容格式。

# 設置日志的輸出格式
 
fmt = "%(asctime)s %(name)s %(levelname)s %(filename)s-%(lineno)d:%(message)s"
 
formatter = logging.Formatter(fmt)

6、將設置的日志格式綁定到創(chuàng)建的輸出渠道中,即將日志格式與輸出渠道關(guān)聯(lián)起來。

7、將設置好的輸出渠道,添加到日志收集器。

實例擴展:

import os
import time
import logging

#返回一個logger實例,如果沒有指定name,返回root logger。
# 只要name相同,返回的logger實例都是同一個而且只有一個,即name和logger實例是一一對應的。
# 這意味著,無需把logger實例在各個模塊中傳遞。只要知道name,就能得到同一個logger實例。
logger = logging.getLogger('mylogger')
# 設置總?cè)罩炯墑e, 也可以給不同的handler設置不同的日志級別
#設置logger的level, level有以下幾個級別:
# 級別高低順序:NOTSET < DEBUG < INFO < WARNING < ERROR < CRITICAL
# 如果把looger的級別設置為INFO, 那么小于INFO級別的日志都不輸出, 大于等于INFO級別的日志都輸出 
logger.setLevel(logging.DEBUG)

# 控制臺日志和日志文件使用同一個formatter,formatter用于描述日志的格式
formatter = logging.Formatter(
	'%(asctime)s - %(filename)s[line:%(lineno)d] - <%(threadName)s %(thread)d>' +
	'- <Process %(process)d> - %(levelname)s: %(message)s'
)
# asctime:日志產(chǎn)生的時間;filename:產(chǎn)生日志的腳本文件名;lineno:該腳本文件哪一行代碼產(chǎn)生了日志
# threadName: 當前線程名;thread: 當前進程名;Process進程同thread線程
# levelname: logger的級別;meesage: 具體的日志信息


# 創(chuàng)建Handler, 輸出日志到控制臺和文件
# 日志文件FileHandler
basedir = os.path.abspath(".") #返回腳本所在的絕對路徑
log_dir = os.path.join(basedir, 'logs')  # 日志文件所在目錄,即‘腳本路徑/logs'
if not os.path.isdir(log_dir):
	os.mkdir(log_dir)
filename = time.strftime('%Y-%m-%d-%H-%M-%S', time.localtime(time.time())) + '.log'  # 日志文件名,以當前時間命名
file_handler = logging.FileHandler(os.path.join(log_dir, filename))  # 創(chuàng)建日志文件handler
file_handler.setFormatter(formatter)  # 設置Formatter
file_handler.setLevel(logging.INFO)  # 單獨設置日志文件的日志級別

# 控制臺日志StreamHandler
stream_handler = logging.StreamHandler()
stream_handler.setFormatter(formatter)
# stream_handler.setLevel(logging.INFO)  # 單獨設置控制臺日志的日志級別,注釋掉則使用總?cè)罩炯墑e

# 將handler添加到logger中

logger.addHandler(file_handler)
logger.addHandler(stream_handler)

到此這篇關(guān)于python實現(xiàn)自定義日志的具體方法的文章就介紹到這了,更多相關(guān)python自定義日志如何實現(xiàn)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 對python中return和print的一些理解

    對python中return和print的一些理解

    最近看到視頻中講到python中的print和return的區(qū)別,感到一些迷惑,所以自己上手實踐了一把,下面這篇文章主要給大家介紹了關(guān)于對python中return和print的一些理解,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-08-08
  • Python控制鍵盤鼠標pynput的詳細用法

    Python控制鍵盤鼠標pynput的詳細用法

    這篇文章主要介紹了Python控制鍵盤鼠標pynput的詳細用法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • Python?time模塊之時間戳與結(jié)構(gòu)化時間的使用

    Python?time模塊之時間戳與結(jié)構(gòu)化時間的使用

    這篇文章主要為大家詳細介紹了Python中的time模塊以及如何利用time模塊實現(xiàn)時間戳與結(jié)構(gòu)化時間,文中的示例代碼講解詳細,需要的可以參考一下
    2022-06-06
  • Python Pandas找到缺失值的位置方法

    Python Pandas找到缺失值的位置方法

    下面小編就為大家分享一篇Python Pandas找到缺失值的位置方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • Python使用SQLAlchemy操作Mysql數(shù)據(jù)庫的操作示例

    Python使用SQLAlchemy操作Mysql數(shù)據(jù)庫的操作示例

    SQLAlchemy是Python的SQL工具包和對象關(guān)系映射(ORM)庫,它提供了全套的企業(yè)級持久性模型,用于高效、靈活且優(yōu)雅地與關(guān)系型數(shù)據(jù)庫進行交互,這篇文章主要介紹了Python使用SQLAlchemy操作Mysql數(shù)據(jù)庫,需要的朋友可以參考下
    2024-08-08
  • python中引用與復制用法實例分析

    python中引用與復制用法實例分析

    這篇文章主要介紹了python中引用與復制用法,以實例形式詳細分析了python中引用與復制的功能與相關(guān)使用技巧,需要的朋友可以參考下
    2015-06-06
  • python創(chuàng)建文件備份的腳本

    python創(chuàng)建文件備份的腳本

    這篇文章主要介紹了python創(chuàng)建文件備份的腳本,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-09-09
  • Python安裝和配置uWSGI的詳細過程

    Python安裝和配置uWSGI的詳細過程

    這篇文章主要介紹了Python uWSGI 安裝配置,本文主要介紹如何部署簡單的 WSGI 應用和常見的 Web 框架,以 Ubuntu/Debian 為例給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-07-07
  • python pycharm最新版本激活碼(永久有效)附python安裝教程

    python pycharm最新版本激活碼(永久有效)附python安裝教程

    PyCharm是一個多功能的集成開發(fā)環(huán)境,只需要在pycharm中創(chuàng)建python file就運行python,并且pycharm內(nèi)置完備的功能,這篇文章給大家介紹python pycharm激活碼最新版,需要的朋友跟隨小編一起看看吧
    2020-01-01
  • Python中Pyenv virtualenv插件的使用

    Python中Pyenv virtualenv插件的使用

    pyenv是管理python版本的工具。安裝pyenv后,可以管理各種python版本,并且各個版本的環(huán)境完全獨立,互不干擾。今天通過本文給大家分享Python中Pyenv virtualenv插件的使用,感興趣的朋友一起看看吧
    2021-06-06

最新評論