欢迎访问宙启技术站
智能推送

Python日志模块中set_level()函数的参数详解

发布时间:2024-01-07 10:57:54

在Python日志模块中,set_level()函数用于设置日志打印的级别。通过设置不同的级别,可以控制日志的输出范围。

该函数的参数是一个整数类型的参数,表示日志的级别。

下面是参数的详细解释:

| 参数值 | 级别 | 描述 |

|-------|------------|-----------------------------------------------------------------------------------------------------------------------------|

| 50 | CRITICAL | 严重错误,表示系统已经崩溃或者是应用程序无法继续运行了。 |

| 40 | ERROR | 错误,表示发生了一个错误,但是应用程序仍然可以继续运行。 |

| 30 | WARNING | 警告,表示可能有问题,但是应用程序仍然可以继续运行。 |

| 20 | INFO | 信息,表示一般的信息事件。 |

| 10 | DEBUG | 调试,用于调试应用程序,输出详细的调试信息。 |

| 0 | NOTSET | 未设置,用于禁用所有日志输出。 |

下面是使用set_level()函数的一个例子:

import logging

# 创建Logger对象
logger = logging.getLogger('mylogger')

# 设置日志级别为INFO
logger.setLevel(logging.INFO)

# 创建一个Handler,用于写入日志文件
fh = logging.FileHandler('test.log')
fh.setLevel(logging.INFO)

# 创建一个Handler,用于输出到控制台
ch = logging.StreamHandler()
ch.setLevel(logging.INFO)

# 创建一个Formatter,用于格式化日志输出
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

# 将Formatter添加到Handler中
fh.setFormatter(formatter)
ch.setFormatter(formatter)

# 将Handler添加到Logger中
logger.addHandler(fh)
logger.addHandler(ch)

# 输出日志
logger.debug('This is a debug message')
logger.info('This is an info message')
logger.warning('This is a warning message')
logger.error('This is an error message')
logger.critical('This is a critical message')

以上代码会将日志输出至文件test.log中,并且同时会输出到控制台,输出的日志级别为INFO及以上级别。在输出日志时,可以根据需要设置不同的日志级别,调整输出范围。