logging的基本使用教程

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 这篇文章提供了Python `logging` 模块的基本使用教程,包括如何配置日志级别和格式、记录不同级别的日志消息,以及如何将日志输出到文件。

logging的基本使用教程

一、简介:

logging模块是Python的标准库,用于记录应用程序运行时的日志信息。使用logging`模块可以帮助您在开发过程中调试代码、追踪问题和监控应用程序的运行状况。

二、使用教程

1、logging模块的基本使用方法:

  1. 导入logging模块:
import logging
  1. 配置日志记录级别和格式:
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')

这里,我们设置了日志记录级别为INFO,这意味着只有INFO级别及以上(WARNINGERRORCRITICAL)的日志会被记录。日志格式包括时间戳、日志级别和日志消息。

  1. 使用不同的日志级别记录消息:
logging.debug("这是一条debug级别的日志")
logging.info("这是一条info级别的日志")
logging.warning("这是一条warning级别的日志")
logging.error("这是一条error级别的日志")
logging.critical("这是一条critical级别的日志")

这些示例分别记录了不同级别的日志消息。由于我们之前设置的日志级别是INFO,因此DEBUG级别的日志不会被记录。

完整的示例代码:

import logging

logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')

logging.debug("这是一条debug级别的日志")
logging.info("这是一条info级别的日志")
logging.warning("这是一条warning级别的日志")
logging.error("这是一条error级别的日志")
logging.critical("这是一条critical级别的日志")

当您运行此代码时,将看到以下输出:

2022-10-08 13:45:29,135 - INFO - 这是一条info级别的日志
2022-10-08 13:45:29,135 - WARNING - 这是一条warning级别的日志
2022-10-08 13:45:29,135 - ERROR - 这是一条error级别的日志
2022-10-08 13:45:29,135 - CRITICAL - 这是一条critical级别的日志

这只是logging模块的基本用法。

2、logging打印日志到文件

# 配置日志记录级别、格式和文件名
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s', filename='app.log')

在logging.basicConfig 中增加一个参数filename即可

您还可以配置更高级的功能,如设置自定义日志处理器和过滤器等。要了解更多关于logging模块的信息,请参考官方文档:https://docs.python.org/3/library/logging.html

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
测试技术 开发者 Python
如何在 Pytest 中添加日志记录
在Pytest中添加日志记录以辅助调试和问题排查。通过`pytest.ini`配置文件设置日志选项,如`log_cli`、`log_cli_level`等来控制日志输出。在测试用例中导入`logging`库,然后运行测试,日志将在控制台显示。若需写入日志文件,可调整`pytest.ini`相关设置,测试后将生成包含日志信息的文件。这样能更有效地理解和管理测试过程。
|
11月前
|
监控 开发者 Python
Python 默认 `logging` 打印级别详解
本文详细介绍了 Python `logging` 模块的默认打印级别及其配置方法。`logging` 模块支持 `DEBUG`、`INFO`、`WARNING`、`ERROR` 和 `CRITICAL` 五个日志级别,默认级别为 `WARNING`。文章通过示例代码展示了如何设置和使用不同日志级别,并介绍了进一步的配置选项,如日志格式和文件输出。
356 8
|
12月前
|
安全 Linux 网络安全
Linux环境中安装和使用Paramiko
Linux环境中安装和使用Paramiko
495 12
|
8月前
|
人工智能 程序员 测试技术
通义灵码 AI 程序员核心功能体验
阿里云通义灵码AI程序员已全面上线,成为全球首个同时支持 VS Code、JetBrains IDEs 开发工具的AI程序员产品。
1134 1
通义灵码 AI 程序员核心功能体验
|
12月前
|
数据可视化 数据挖掘 定位技术
Python中利用Bokeh创建动态数据可视化
【10月更文挑战第14天】本文介绍了如何使用 Bokeh 库在 Python 中创建动态数据可视化。Bokeh 是一个强大的开源可视化工具,支持交互式图表和大规模数据集的可视化。文章从安装 Bokeh 开始,逐步讲解了如何创建动态折线图,并添加了交互式控件如按钮、滑块和下拉菜单,以实现数据更新频率的调节和颜色选择。通过这些示例,读者可以掌握 Bokeh 的基本用法,进一步探索其丰富功能,创建更具吸引力和实用性的动态数据可视化。
|
数据可视化 Python
|
网络协议
详解VXLAN网络中报文是如何转发的?值得收藏学习!
详解VXLAN网络中报文是如何转发的?值得收藏学习!
560 0
详解VXLAN网络中报文是如何转发的?值得收藏学习!
|
Java UED Maven
紧跟技术潮流:手把手教你构建响应式Vaadin应用,让用户体验无缝接轨!
【8月更文挑战第31天】本文从零开始,详细介绍如何使用强大的Java框架Vaadin构建流畅且响应式的Web应用程序。首先,确保安装JDK 1.8+、Maven 3.3.9+及IDE。接着,创建Maven项目并添加Vaadin依赖。然后,通过继承`UI`类创建主界面,并定义自定义主题与样式。利用Vaadin的响应式布局组件,如`HorizontalLayout`和`VerticalLayout`,实现多设备兼容性。
234 0
|
Unix Python
python 的标准库模块glob使用教程,主要为glob.glob()使用与glob.iglob()使用
python 的标准库模块glob使用教程,主要为glob.glob()使用与glob.iglob()使用
457 0
|
存储 数据采集 数据处理
Python filter函数
Python filter函数
Python filter函数