如何以字符串形式获取日志记录器的级别值

8

使用getEffectiveLevel函数可以查询记录器的当前日志级别:

import logging
logger = logging.getLogger('top')
level_number = logger.getEffectiveLevel()
getEffectiveLevel方法返回的值是整数。我想知道是否有一种方法可以查询相应的字符串值,比如“DEBUG”或“INFO”,而不是一个整数。
1个回答

17

如果您将调用对象的 getEffectiveLevel() 方法的结果放入 logging 模块的 getLevelName() 类方法中,您将获得该级别的字符串表示:

将对象的getEffectiveLevel()方法的返回值传递给logging模块的getLevelName()类方法,即可获得该级别的字符串表示。

import logging

log = logging.getLogger('blah')
str_level = logging.getLevelName(log.getEffectiveLevel())

print(str_level)

输出:

WARNING

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接