我正在编写一个服务器应用程序,该应用程序应该能够在控制台和日志文件的不同级别上进行日志记录。使用Python日志记录管理日志记录器
问题是,如果logging.basicConfig()已设置,它将记录到控制台,但它必须设置在主线程中。
它也可以使用logging.basicConfig(filename ='logger.log')来写入文件。
为控制台日志记录(logging.StreamHandler())或文件日志记录(logging.FileHandler())设置句柄补充了logging.baseconfig()选项集。
问题是,设置不是独立的。 我的意思是,logging.baseConfig()的日志级别必须包含Handler级别,否则将不会被记录。
因此,如果我将baseConfig设置为记录到文件,并将StreamHandler设置为登录到控制台,则文件的loglevel必须低于控制台级别。 (而且,basicConfig选项记录所有其他日志。)
我试图创建两个句柄,一个用于控制台,另一个用于日志文件,它们工作,但无论basicConfig()指定的日志类型是否仍然显示重复消息。
有没有办法禁用basicConfig()的输出? 或者其他方式来实现这些选项?
谢谢。