[英]How to set logging level in python?
我有以下完整的 python (3.8.5) 代码示例
import logging
L = logging.getLogger(__name__)
def main():
L.setLevel(logging.DEBUG)
L.warning("This is warn")
L.info("This is info")
L.debug("This is debug")
if __name__ == "__main__":
main()
这应该打印出所有三个短语,但只打印第一个(用于警告)。
如何规避这个错误?
您应该将L.setLevel
切换到logging.basicConfig(level=...)
例如:
def main():
logging.basicConfig(level=logging.DEBUG)
L.warning("This is warn")
L.info("This is info")
L.debug("This is debug")
您使用的方法专门为此记录器设置了日志记录级别,这意味着特定记录器在登录较低级别时实际上不会做任何事情 - 它与进程和打印的日志记录级别无关。 使用logging.basicConfig
您可以配置进程的日志级别,因此即使您有多个记录器,此级别也将确定哪些日志消息来自进程。
使用logging.basicConfig
import logging
logging.basicConfig(level=logging.DEBUG)
L = logging.getLogger(__name__)
def main():
L.warning("This is warn")
L.info("This is info")
L.debug("This is debug")
if __name__ == "__main__":
main()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.