python 装饰器 log
2021/6/1 12:26:06
本文主要是介绍python 装饰器 log,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
定义logger方法:
import logging import os import time import utils data=time.strftime("%Y-%m-%d-%H:%M:%S") logging.basicConfig(filename=utils.get_project_path()+"log/"+data,filemode='a',format='[%(asctime)s-%(filename)s:%(message)s]') def logger(level): def wrapper(func): def inner_wrapper(*args,**kwargs): msg="[{level}]:enter function {func} ()".format(level=level,func=func.__name__) print(msg) logging.log(msg=msg,level=30) #logging.log(level=10,msg=msg) return func(*args,**kwargs) return inner_wrapper return wrapper def logger1(func): def wapper(*args,**kwargs): msg="[DEBUG]:enter function {func} ()".format(func=func.__name__) logging.log(level=40,msg=msg) return func(*args,**kwargs) return wapper 使用:
@logger("debug") @logger1 def run_cmd(self,command): ret=subprocess.Popen(command,shell=True,stdout=subprocess.PIPE).stdout.read() ret=ret.decode('gbk') if ret.strip()=="": print("error:{}".format(str(ret))) else: print("Success:{}".format(str(ret))) return ret 运行结果:
[2021-05-31 18:55:08,862-logger.py:[debug]:enter function wapper ()] [2021-05-31 18:55:08,862-logger.py:[DEBUG]:enter function run_cmd ()]
这篇关于python 装饰器 log的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-18初探Python股票自动化交易:入门指南
- 2024-09-18Python量化入门:轻松掌握量化分析基础与实战
- 2024-09-18Python量化交易:入门指南与实践
- 2024-09-18Python量化交易:入门指南与实战技巧
- 2024-09-14Python人工智能项目实战:从零开始的实践指南
- 2024-09-14探索Python人工智能资料:初学者的指南
- 2024-09-14Python人工智能资料:初学者的全面指南
- 2024-09-13Matplotlib入门:轻松绘制Python数据可视化图表
- 2024-09-13Python人工智能:初学者的入门指南
- 2024-09-13Python人工智能:轻松入门与实践