Python學習二 公共日誌記錄模組封裝

2021-07-25 00:18:53 字數 1914 閱讀 5712

python安裝及配置略,本文前預設已經配置好python環境。

開啟cmd,輸入python,出現以下畫面表示python安裝成功。

'''@描述:日誌輸入封裝

@版本:v1.0

'''import logging.handlers

class

logger

(logging.logger):

def__init__

(self, filename=none):

super(logger, self).__init__(self)

# 日誌檔名

if filename is

none:

filename = './logs/pt.log'

self.filename = filename

# 建立乙個handler,用於寫入日誌檔案 (每天生成1個,保留30天的日誌)

fh = logging.handlers.timedrotatingfilehandler(self.filename, 'd', 1, 30)

fh.suffix = "%y%m%d-%h%m.log"

fh.setlevel(logging.debug)

# 再建立乙個handler,用於輸出到控制台

ch = logging.streamhandler()

ch.setlevel(logging.debug)

# 定義handler的輸出格式

formatter = logging.formatter('[%(asctime)s] - %(filename)s [line:%(lineno)d] - [%(levelname)s]-[thread:%(thread)s]-[process:%(process)s] - %(message)s')

fh.setformatter(formatter)

ch.setformatter(formatter)

# 給logger新增handler

self.addhandler(fh)

self.addhandler(ch)

if __name__ == '__main__':

pass

from util_log import logger

#建立日誌記錄物件

log = logger();

#輸出日誌

log.info("日誌模組訊息!");

log.debug("日誌模組除錯訊息!");

log.error("日誌模組錯誤訊息!");

輸出的日誌:

[2016-11-28 14:56:49,986] - db_connetion_pool.py

[line:46] - [info]-[thread:2756]-[process:516] - pt資料庫連線池建立成功!

[2016-11-28 14:56:49,986] - db_connetion_pool.py

[line:34] - [info]-[thread:2756]-[process:516] - pt資料庫建立connection和cursor完成!

[2016-11-28 14:56:49,986] - db_connetion_pool.py

[line:55] - [info]-[thread:2756]-[process:516] - pt資料庫釋放connection和cursor完成!

說明:本文提供內容及**僅作為學習、測試使用,未做詳細效能測試和評估!

Python學習日誌(二)

今天學習了python的類的建立和使用,物件導向程式設計 多型 繼承等 與別的語言類似,但是因為python簡潔的語法特點,所以其語句更加簡單。在建立類時,有兩種語法,以person為例有 class person 01 name person 01 pass class person 02 obj...

python學習記錄(二)

物件 名字和變數 python是強型別的,你永遠無法修改乙個已有物件的型別。python中的變數有乙個非常重要的性質 它僅僅是乙個名字。類似c語言指標 名字是物件的引用而不是物件本身。type thing 了解乙個物件的型別。python中 類和型別不加區分。用來執行浮點除法,用來執行整數除法。為冪...

python記錄日誌

coding utf 8 author martin date 2017 10 9 import logging import sys 獲取logger例項,如果引數為空則返回root logger 指定logger輸出格式 formatter logging.formatter asctime s...