python实现日志按天分割

下面是“python实现日志按天分割”的完整攻略,包含以下几个步骤:

  1. 安装Python日志系统模块logging

在命令行工具输入以下命令进行模块安装

pip install logging
  1. 编写Python日志代码块

以下是一个简单的Python日志代码示例。该示例使用logging模块,将日志按天创建,并保存到logs目录下的文件中。

import logging
import datetime

log_file_name = datetime.datetime.now().strftime("%Y-%m-%d")+".log"
log_formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s')
root_logger = logging.getLogger()

log_filename = "logs/"+log_file_name
file_handler = logging.FileHandler(log_filename, mode='w')
file_handler.setFormatter(log_formatter)

root_logger.setLevel(logging.DEBUG)
root_logger.addHandler(file_handler)

root_logger.debug("Debug Message")
root_logger.info("Info Message")
root_logger.warning("Warning Message")
root_logger.error("Error Message")
root_logger.critical("Critical Message")

在上述日志代码块中,首先使用datetime模块获取当前日期,并将其转换为相应的日志文件名称。在此之后,使用logging模块创建一个FileHandler,该Handler会按照每天的日期自动生成日志文件,并将日志信息保存到相应的文件中。

在这个示例中,我们重写了默认的日志格式,使用了自定义的log_formatter,这个格式使用了asctime、levelname、message等信息进行了组织。

最后,我们使用root_logger记录不同级别的日志信息,例如Debug Message、Info Message等,在日志文件中排列组合展现。

  1. 运行Python日志代码

在终端中执行以下命令,将运行代码,并生成logs目录下的日志文件:

python python_log.py

这个时候,我们会在logs目录下看到刚刚生成的日志文件:2021-06-13.log。

logs/
 2021-06-13.log
python_log.py

日志信息包含在2021-06-13.log中,文件中的内容可能如下:

2021-06-13 09:18:06,180 DEBUG Debug Message
2021-06-13 09:18:06,180 INFO Info Message
2021-06-13 09:18:06,180 WARNING Warning Message
2021-06-13 09:18:06,180 ERROR Error Message
2021-06-13 09:18:06,180 CRITICAL Critical Message

代码示例2:

如果你想将日志信息按小时进行分割,那么只需要将上面first_example中的log_file_name变量由"%Y-%m-%d"改成"%Y-%m-%d_%H"。这样就可以将生成日志的频率调整为按每小时生成日志文件,且每个文件包含当前小时的日志信息。

log_file_name = datetime.datetime.now().strftime("%Y-%m-%d_%H")+".log"

这里需要注意的是,日志生成的频率,在必要时可以根据需要进行调整,例如按天、按小时、按分钟等。以上两个实例展示了日志按天和按小时进行分割的示例。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python实现日志按天分割 - Python技术站

(0)
上一篇 2023年6月2日
下一篇 2023年6月2日

相关文章

  • Python 完美解决 Import “模块“ could not be resolved …的问题

    当在Python中导入模块时,有时会遇到“ImportError: No module named ‘module_name’”或“ImportError: cannot import name ‘function_name’”等错误。这些错误通常是由于模块路径不正确或者模块名称拼写错误引起的。本攻略将提供Python完美解决“ImportError: ca…

    python 2023年5月13日
    00
  • Python实现单例模式的四种方式详解

    下面是详细讲解“Python实现单例模式的四种方式详解”的完整攻略。 1. 什么是单例模式? 单例模式,顾名思义,就是指一个类只能实例化成一个对象的设计模式。在程序中,单例模式通常被使用与创建一个全局的状态管理器或者持久连接等。因此,单例模式是一种非常常见的设计模式。 2. 单例模式的实现方式 2.1. 模块方式 Python中的模块是天然的单例模式,因为模…

    python 2023年5月19日
    00
  • Python argparse 解析命令行参数模块详情

    Python argparse 解析命令行参数模块详情 Python argparse 是 Python 核心库中用于解析命令行参数的模块,它可以非常方便地处理命令行参数,提供了丰富的功能和选项。本文将介绍 argparse 模块的用法,让你明白如何在 Python 代码中使用 argparse 来解析命令行参数。 简介 argparse 模块是 Pytho…

    python 2023年6月3日
    00
  • 深入理解Python中字典的键的使用

    深入理解 Python 中字典的键的使用攻略 简介 字典(Dictionary)是 Python 中常用的一种数据类型,它可以存储任意数量的键值对,并且可以通过键来快速访问值。在 Python 中,字典的键可以是任何不可变类型,例如字符串、整数、元组等。本文将深入探讨 Python 中字典的键的使用方法。 访问字典中的值 要访问字典中的值,可以使用字典名加上…

    python 2023年5月13日
    00
  • Python必知必会之os模块实例详解

    Python必知必会之os模块实例详解 一、什么是os模块 os模块是Python中用来操作操作系统文件和目录的模块。它提供了很多与操作系统交互的函数,可以让我们通过代码来控制文件和目录。 二、os模块常用函数介绍 1..getcwd():获取当前工作目录。 2.os.chdir(path):改变当前工作目录。 3.os.listdir(path):获取指定…

    python 2023年5月13日
    00
  • mac在matplotlib中显示中文的操作方法

    下面是在Mac上使用matplotlib显示中文的方法: 方法一:设置字体 步骤一:下载中文字体 在macOS系统中自带的中文字体较少,因此我们需要下载其他中文字体。可以从 这里 获取常用的中文字体,例如思源黑体和华文细黑。 步骤二:配置matplotlib 在绘图之前,需要在代码中设置字体,这可以通过以下两种方式实现: 直接指定字体路径 “`python…

    python 2023年5月20日
    00
  • python人工智能遗传算法示例解析

    Python人工智能遗传算法示例解析 遗传算法是一种基于自然选择和遗传学原理的优化算法,它通过模拟生物进化过程来寻找最优解。在本攻略中,我们将介绍如何使用Python实现遗传算法,并提供两个示例来说明如何使用遗传算法进行优化。 步骤1:了解遗传算法 在遗传算法中,我们需要考虑以下因素: 个体:个体是指一个可能的解决方案。 种群:种群是指一组个体。 适应度函数…

    python 2023年5月14日
    00
  • Python的collections模块真的很好用

    下面是详细讲解使用Python的collections模块的攻略。 简介 Python中的collections模块提供了一些额外的数据类型以及容器对象,这些数据类型是Python内置数据类型的扩展。这些数据类型对于管理数据集合、元素计数、队列、双向队列以及其他数据结构非常有帮助。collections模块中的一些数据类型如下: defaultdict na…

    python 2023年5月13日
    00
合作推广
合作推广
分享本页
返回顶部