亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

python 使用裝飾器并記錄log的示例代碼

系統(tǒng) 1523 0

1.首先定義一個(gè)log文件

            
# -*- coding: utf-8 -*-
import os
import time
import logging
import sys
log_dir1=os.path.join(os.path.dirname(os.path.dirname(__file__)),"logs")
today = time.strftime('%Y%m%d', time.localtime(time.time()))
full_path=os.path.join(log_dir1,today)
if not os.path.exists(full_path):
 os.makedirs(full_path)
log_path=os.path.join(full_path,"facebook.log")
def get_logger():
  # 獲取logger實(shí)例,如果參數(shù)為空則返回root logger
  logger = logging.getLogger("facebook")
  if not logger.handlers:
   # 指定logger輸出格式
   formatter = logging.Formatter('%(asctime)s %(levelname)-8s: %(message)s')
 
   # 文件日志
   file_handler = logging.FileHandler(log_path,encoding="utf8")
   file_handler.setFormatter(formatter) # 可以通過(guò)setFormatter指定輸出格式
 
   # 控制臺(tái)日志
   console_handler = logging.StreamHandler(sys.stdout)
   console_handler.formatter = formatter # 也可以直接給formatter賦值
 
   # 為logger添加的日志處理器
   logger.addHandler(file_handler)
   logger.addHandler(console_handler)
 
   # 指定日志的最低輸出級(jí)別,默認(rèn)為WARN級(jí)別
   logger.setLevel(logging.INFO)
  # 添加下面一句,在記錄日志之后移除句柄
  return logger
          

2.然后定義一個(gè)裝飾器文件

在這里引用wraps,一個(gè)裝飾器的裝飾器,目的為了保持引用進(jìn)來(lái)的函數(shù)名字不發(fā)生變化

            
#!/usr/bin/env python 
# encoding: utf-8
from functools import wraps
from logger.log import get_logger
import traceback
def decoratore(func):
 @wraps(func)
 def log(*args,**kwargs):
  try:
   print("當(dāng)前運(yùn)行方法",func.__name__)
   return func(*args,**kwargs)
  except Exception as e:
   get_logger().error(f"{func.__name__} is error,here are details:{traceback.format_exc()}")
 return log
          

3.在使用的時(shí)候直接在函數(shù)上面引用即可

            
@decorator
def start():
 print("666")
          

以上這篇python 使用裝飾器并記錄log的示例代碼就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 国产激情一区二区三区在线观看 | 亚洲欧美一区二区三区九九九 | 日本欧美一区二区三区 | 久久精品免费一区二区视 | 九九热这里只有国产精品 | 成人免费黄色 | 午夜骚 | 欧美wwwxxx| 亚洲精品人成网线在线 | 午夜男人 | 97影院理论片在线观看 | 老子影院午夜伦手机不卡6080 | 曰本女人视频69xxx | 四虎影在永久在线观看 | 欧美九九 | 91美女啪啪 | 久久er热在这里只有精品85 | 国产深夜福利19禁在线播放 | 99精品视频在线成人精彩视频 | 国产片欧美片亚洲片久久综合 | 日本高清不卡二区 | 国产午夜精品一区二区三区嫩草 | 麻豆日韩区久久综合 | 五月天婷婷免费视频观看 | 青青青国产免费手机视频在线观看 | 伊人久久99亚洲精品久久频 | 天天做天天爱夜夜爽毛片毛片 | 欧美一级片免费 | 天天夜夜人人 | 国产成人精品一区二区免费 | 日韩精品一区二区三区 在线观看 | 777奇米影视久久激情日韩欧美 | 久久九九亚洲精品 | 暴力欧美娇小 videos | 四虎影院欧美 | 五月亭亭免费高清在线 | 日韩视频免费一区二区三区 | 国产毛片一级国语版 | 久久艹在线观看 | 四虎影视在线免费观看 | 中文字幕在线综合 |