鉴于这一点 Python:
logging.setLoggerClass(MyLogger)
logger = logging.getLogger()
print(type(logger))
Run Code Online (Sandbox Code Playgroud)
...我相信是一个正确实现的 MyLogger 类:
class MyLogger(logging.getLoggerClass()):
def __init__(self, name: str=os.path.basename(__file__)) -> None:
logging.Logger.__init__(self, name=name)
Run Code Online (Sandbox Code Playgroud)
我希望 GetLogger 返回 MyLogger 的一个实例,但它没有:
<class 'logging.RootLogger'>
Run Code Online (Sandbox Code Playgroud)
没有错误或警告。当我调用 logging.getLogger() 时,似乎也从未调用过 MyLogger 构造函数
我究竟做错了什么?