高级python日志装饰器。

PyLogDecorate的Python项目详细描述


您是否曾经希望使用日志修饰符来记录函数调用和基于类层次结构在类中自动创建日志对象。

如果你的答案是真的,这里是我的实现https://github.com/offlinehacker/PyLogDecorate。我实现了一个非常好的选项,称为subdecorate,它支持记录派生类中的函数,即使decorator只应用于基类函数。

这个日志装饰器实现可以很容易地扩展。

  • 安装:
    python setup.py install或easy_install pylogdecorate。
  • 示例代码:
from log import LogCall, LogClass

@LogCall()
def test():
    print "x"

@LogClass({"subdecorate": True})
class test1(object):
    name="kekec"
    name2="kekec2"
    @LogCall({"subdecorate": True, "tracename": "tracetest", "traceattr": "name"})
    def test(self):
        pass

    @LogCall({"subdecorate": True, "tracename": "tracetest", "traceattr": "name2"})
    def test2(self):
        self.logger.debug("Inside base class!")

@LogClass()
class test2(test1):
    def __init__(self):
        pass

    def test(self):
        self.logger.debug("Inside funtion.")
        self.test2()

@LogClass()
class test3(test2):
    def __init__(self):
        pass

    def test(self):
        self.logger.debug("Inside funtion2.")
        self.test2()


test()
b=test3()
c=test2()
b.test()
c.test()

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java重写父类中的特定行   java Apache Commons CLI订购帮助选项?   java如何将数据添加到网格视图   java如何在Apache Camel批处理后移动文件?   java如何为日期范围的between子句编写hql查询?   雅加达ee开始Java编程,我应该从哪里开始?   排序Java8+流:检查我的objectinstances的两个字段的列表顺序是否正确   java如何将json转换为Map<String,Object>确保整数为整数   java不能在Spring数据JPA批处理过程中创建TransactionException   java损坏的PDF文件从FTP下载到使用Apache Common Net的设备   java无法使用Spring批处理和Wso2为XML架构命名空间找到Spring NamespaceHandler   java Android ImageView未显示在SherlockFragment中   Maven在构建时出错=无法识别Java路径   java如何使用批处理文件调用关闭处理程序?   java admob广告横幅重叠我的游戏屏幕安卓