【发布时间】:2012-03-26 20:07:35
【问题描述】:
我正在尝试使用日志记录的memory handler 将日志消息缓冲到我的实际日志记录处理程序。您可以通过使用一些参数对其进行实例化来使用内存处理程序,如下所示:
import logging
buffered_handler = logging.handlers.MemoryHandler(capacity=5,target=myActualHandler)
但是,我不希望我的应用程序必须直接从日志记录实例化处理程序,或者传递任何参数;我希望这段代码看起来像这样:
import myhandlers
buffered_handler = myhandlers.BufferedRemoteHandler()
问题是:我该怎么做?我想尝试将我的BufferedRemoteHandler 实例化为实际上 返回带有一些特定参数的日志记录的 MemoryHandler。我只想让BufferedRemoteHandler 成为一个返回我想要的处理程序的函数;这是正确的方法吗?有没有办法创建一个类,当你实例化它时,它实际上返回一个完全不同的类?
【问题讨论】:
标签: python oop metaprogramming