#coding=utf-8
import logging,time,os
import logging.handlers
class Logger(object):
def __init__(self,log_name='api.log',project_name='API',log_path='',log_level='DEBUG'):
'''
:param log_name: 日志文件名稱
:param project_name: 項目名稱
:param log_path: 日志輸出的路徑,非必傳
:param log_level: 日志級別
'''
self.logger = logging.getLogger(project_name) # 指定輸出日志的程序名
self.logger.setLevel(logging.DEBUG) #設(shè)定全局的日志級別
logging_level = eval("logging." + log_level)
fh = '' #初始化fh
fh_err = '' #初始化錯誤日志fh_err
if log_path:
log_path_name=os.path.join(log_path,log_name)
#對文件日志進行分割,已天為單位
fh = logging.handlers.TimedRotatingFileHandler(log_path_name, when='D', interval=1, backupCount=10)
fh.suffix="%Y-%m-%d"
fh.setLevel(logging_level) # 輸入的日志級別
# # create formatter
formatterFh = logging.Formatter('%(asctime)s - %(name)s - '
'%(levelname)s - '
'%(filename)s - %(funcName)s - %(lineno)d - %(message)s')
#錯誤日志輸出到文件
log_path_name_err=os.path.join(log_path,log_name.split('.')[0]+'.err')
fh_err = logging.handlers.TimedRotatingFileHandler(log_path_name_err, when='D', interval=1, backupCount=10)
fh_err.suffix="%Y-%m-%d"
fh_err.setLevel('ERROR') # 輸入的日志級別
#定義handler的輸出格式
fh.setFormatter(formatterFh)
fh_err.setFormatter(formatterFh)
###向屏幕上打印
ch = logging.StreamHandler()
ch.setLevel(logging_level)
formatterCh = logging.Formatter('%(asctime)s - %(filename)s - %(funcName)s - %(lineno)d - %(message)s')
# 定義handler的輸出格式
ch.setFormatter(formatterCh)
# 給logger添加handler
if not self.logger.handlers:
self.logger.addHandler(ch)
if fh:
self.logger.addHandler(fh)
if fh_err:
self.logger.addHandler(fh_err)
def get_logger(self):
return self.logger
if __name__=='__main__':
logger=Logger('logtest.log','test').get_logger()
for i in range(1000):
logger.error('111')
python 對logging進行封裝
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門刑桑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人募舟,你說我怎么就攤上這事祠斧。” “怎么了拱礁?”我有些...
- 文/不壞的土叔 我叫張陵琢锋,是天一觀的道長。 經(jīng)常有香客問我呢灶,道長吴超,這世上最難降的妖魔是什么? 我笑而不...
- 正文 為了忘掉前任鸯乃,我火速辦了婚禮鲸阻,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘缨睡。我一直安慰自己鸟悴,他們只是感情好,可當我...
- 文/花漫 我一把揭開白布奖年。 她就那樣靜靜地躺著细诸,像睡著了一般。 火紅的嫁衣襯著肌膚如雪拾并。 梳的紋絲不亂的頭發(fā)上揍堰,一...
- 文/蒼蘭香墨 我猛地睜開眼褪那,長吁一口氣:“原來是場噩夢啊……” “哼幽纷!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起博敬,我...
- 正文 年R本政府宣布,位于F島的核電站褪储,受9級特大地震影響卵渴,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜乱豆,卻給世界環(huán)境...
- 文/蒙蒙 一奖恰、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧宛裕,春花似錦瑟啃、人聲如沸。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至岩榆,卻和暖如春错负,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背勇边。 一陣腳步聲響...
推薦閱讀更多精彩內(nèi)容
- 封裝單個元素find_element_by_id()find_element_by_name()find_elem...
- formatter的格式 日志級別大小關(guān)系為:CRITICAL > ERROR > WARNING > INFO ...
- 在那些卑微的日子里,不敢去仰望星空的浩瀚桨昙,不敢去觸碰人間的靜好检号,也不敢去凝望高山的雄壯,不敢去期待流水的細長绊率。 l...