python 日志模塊 日志等級設(shè)置失效的解決方案
代碼問題:控制臺和日志的文件的等級設(shè)置要放在
logger = logging.getLogger('myloger')
實例化之后才會生效 不然就被logger默認的替代了
問題:當前日志模塊的等級設(shè)置 失效
現(xiàn)象:
console_level = "INFO"
handler_level = "INFO"
handler_file = logging.FileHandler(filename)
handler_file.setFormatter(formatter)
handler_file.setLevel(handler_level)
handler_console = logging.StreamHandler()
handler_console.setFormatter(formatter)
handler_console.setLevel(console_level)
logger = logging.getLogger('myloger')
# logger.setLevel("INFO")
from log import logger
logger.debug("debug---------------")
logger.info("info---------------")
logger.warning("warning---------------")
logger.error("error---------------")
logger.critical("critical---------------")
>>>>> 空 沒有打印
解決辦法 使用這個級別設(shè)置
logger.setLevel("INFO")
console_level = "INFO"
handler_level = "INFO"
handler_file = logging.FileHandler(filename)
handler_file.setFormatter(formatter)
handler_file.setLevel(handler_level)
handler_console = logging.StreamHandler()
handler_console.setFormatter(formatter)
handler_console.setLevel(console_level)
logger = logging.getLogger('myloger')
logger.setLevel("INFO")
# 給logger添加handler
logger.addHandler(handler_file)
from log import logger
fee=3
data={}
data['trade_amount']=100
# logger.info("ddddddddddddddddddddddddddddd")
# logger.info('fee='+ str(fee) + "trade_amount"+ str(data['trade_amount']))
#logger.info('fee=' + "trade_amount"+ data['trade_amount'],)
logger.info('fee ={0}+"trade_amount"'.format(data['trade_amount']))
>>>>
import log start
2020-05-25 15:27:26,286 - log_level.py:17 - fee =100+"trade_amount"
import log end
修改代碼
日志的等級打印正常
print "import log start"
import logging
import datetime
date = datetime.datetime.strftime(datetime.datetime.now(), '%Y%m%d')
filename = date + '.log'
fmt = '%(asctime)s - %(filename)s:%(lineno)s - %(message)s'
formatter = logging.Formatter(fmt)
logger = logging.getLogger('myloger')
logger.setLevel(logging.DEBUG)
console_level = "INFO"
handler_level = "DEBUG"
# logging.basicConfig(level=logging.DEBUG)
handler_file = logging.FileHandler(filename)
handler_file.setFormatter(formatter)
handler_file.setLevel(handler_level)
handler_console = logging.StreamHandler()
handler_console.setFormatter(formatter)
handler_console.setLevel(console_level)
# 給logger添加handler
logger.addHandler(handler_file)
logger.addHandler(handler_console)
總結(jié)
到此這篇關(guān)于python 日志模塊 日志等級設(shè)置失效的解決方案的文章就介紹到這了,更多相關(guān)python 日志模塊 日志等級內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決pandas.DataFrame.fillna 填充Nan失敗的問題
今天小編就為大家分享一篇解決pandas.DataFrame.fillna 填充Nan失敗的問題。具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11
Python的Twisted框架中使用Deferred對象來管理回調(diào)函數(shù)
當說起Twisted的異步與非阻塞模式等特性時,回調(diào)函數(shù)的使用在其中自然就顯得不可或缺,接下來我們就來看Python的Twisted框架中使用Deferred對象來管理回調(diào)函數(shù)的用法.2016-05-05
Django+RestFramework API接口及接口文檔并返回json數(shù)據(jù)操作
這篇文章主要介紹了Django+RestFramework API接口及接口文檔并返回json數(shù)據(jù)操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07
Python實現(xiàn)二維數(shù)組按照某行或列排序的方法【numpy lexsort】
這篇文章主要介紹了Python實現(xiàn)二維數(shù)組按照某行或列排序的方法,結(jié)合具體實例形式分析了Python使用numpy模塊的lexsort方法針對二維數(shù)組進行排序的常用操作技巧,需要的朋友可以參考下2017-09-09
Python pandas之求和運算和非空值個數(shù)統(tǒng)計
數(shù)據(jù)處理的過程中經(jīng)常會遇到判斷空值和求和運算的需求,所以下面這篇文章主要給大家介紹了關(guān)于Python pandas之求和運算和非空值個數(shù)統(tǒng)計的相關(guān)資料,需要的朋友可以參考下2021-08-08

