1. 程式人生 > >python使用logging模塊方法 教程

python使用logging模塊方法 教程

日誌 ini handle 一個 art 設置 utc something txt

1.輸出到日誌裏,詳細見如下代碼:

#!/usr/bin/python
# -*- coding: utf-8 -*-

import logging

# 第一步
# 創建一個logger
terLog = logging.getLogger(‘__nginx__‘)
# 設置logger級別 log等級總開關
terLog.setLevel(level=logging.INFO)

# 第二步
# 輸出到file名稱
fileLog = logging.FileHandler(‘nginxLog.txt‘)
# 輸出到file的log等級開關
fileLog.setLevel(logging.INFO)

# 第三步定義handler輸出格式
deFormat = logging.Formatter(‘%(asctime)s - %(name)s - %(levelname)s - %(message)s‘)
fileLog.setFormatter(deFormat)

# 第四步 將fileLog添加到terLog裏面
terLog.addHandler(fileLog)

# 日誌
terLog.info("Start print log 123 魏若愚")
terLog.debug("Do something debug魏若愚")
terLog.warning("Something maybe fail.warning魏若愚")
terLog.info("Finish info魏若愚")

2只輸出到屏幕

3同時輸出到屏幕,並且輸出到日誌裏,如下代碼:

#!/usr/bin/python
# -*- coding: utf-8 -*-

import logging

# 第一步
# 創建一個logger
terLog = logging.getLogger(‘__nginx__‘)
# 設置logger級別 log等級總開關
terLog.setLevel(level=logging.INFO)

# 第二步
# 輸出到file名稱
fileLog = logging.FileHandler(‘nginxLog.txt‘)
# 輸出到file的log等級開關
fileLog.setLevel(logging.INFO)

#同時輸出到屏幕
outputConsole = logging.StreamHandler()
outputConsole.setLevel(logging.INFO)

# 第三步定義handler輸出格式
deFormat = logging.Formatter(‘%(asctime)s - %(name)s - %(levelname)s - %(message)s‘)
fileLog.setFormatter(deFormat)
# 同時設置輸出屏幕格式
outputConsole.setFormatter(deFormat)

# 第四步 將fileLog添加到terLog裏面
terLog.addHandler(fileLog)

# 同時輸出到屏幕東中
terLog.addHandler(outputConsole)

# 日誌
terLog.info("Start print log 123 魏若愚")
terLog.debug("Do something debug魏若愚")
terLog.warning("Something maybe fail.warning魏若愚")
terLog.info("Finish info魏若愚")

輸出屏幕結果:

2019-03-11 16:55:16,066 - __nginx__ - INFO - Start print log 123 魏若愚
2019-03-11 16:55:16,086 - __nginx__ - WARNING - Something maybe fail.warning魏若愚
2019-03-11 16:55:16,086 - __nginx__ - INFO - Finish info魏若愚

python使用logging模塊方法 教程