当前位置:首页>python>python自动化系列:日志分析工具

python自动化系列:日志分析工具

  • 2026-10-11 07:59:11
python自动化系列:日志分析工具
作品介绍
作品名称:日志分析工具
用到的库:logging、loguru、pandas、matplotlib.pyplot、re
作品简介:日志分析工具可以帮助开发者和运维人员从大量的日志数据中提取有价值的信息。以下是一些常用的Python日志分析工具和技术,以及如何使用它们来解析、过滤和处理日志文件。

实现过程

一、内置模块logging

Python自带的logging模块是创建和管理日志记录的基础工具。它支持多种日志级别(如DEBUG、INFO、WARNING、ERROR、CRITICAL),并且可以灵活配置输出格式、目标位置等。

      import logginglogging.basicConfig(level = logging.INFO, filename = 'app.log', filemode = 'w',format = '%(name)s - %(levelname)s - %(message)s')logging.info('This is an info message.')
      二、第三方库loguru
      loguru是一个现代化的日志记录库,提供了简洁且功能强大的API,简化了日志记录的过程。它的特点包括自动旋转日志文件、异步日志写入、彩色终端输出等。
      from loguru import loggerlogger.add("file_{time}.log", rotation="500 MB")  # 日志文件按大小分割logger.info("If you're using Python {}, prefer {feature} of course!", 3.6, feature="loguru")
              三、分析工具pandas 和 matplotlib
              对于结构化的日志数据(如CSV或JSON格式),可以使用pandas进行数据分析,并结合matplotlib或其他可视化库生成图表。
              import pandas as pdimport matplotlib.pyplot as plt# 假设有一个名为 'logs.csv' 的CSV日志文件df = pd.read_csv('logs.csv')# 统计每个级别的日志数量level_counts = df['level'].value_counts()# 可视化结果level_counts.plot(kind='bar')plt.show()
                            四、正则表达式解析非结构化日志
                            如果日志是以文本形式保存的,则可以使用正则表达式(re模块)来提取特定模式的数据。
                            import relog_pattern = r'(\d{4}-\d{2}-\d{2}) (\d{2}:\d{2}:\d{2}),(\d{3}) (\S+): (.*)'with open('app.log') as f:    for line in f:        match = re.match(log_pattern, line)        if match:            date, time, millisecond, level, message = match.groups()            print(f"{date}{time}.{millisecond} [{level}] {message}")
                                五、结语

                                以上就是本次分享的全部内容,如果你有任何疑问或想要分享你的自动化办公经验,我们的评论区永远为你敞开。你的每一个点赞和转发,都是对我们最大的支持和鼓励!

                                想要深入学习并获取文中的完整代码吗?很简单,关注我们的公众号,并回复文章标题,即可立即获取。

                                再次感谢你的阅读,期待在下一次分享中与你相见!

                                精选阅读
                                python自动化系列:一键替换文档关键词
                                python自动化系列:旋转PDF文件特定页面
                                python自动化系列:过滤文本(txt)的内容
                                python自动化系列:抓取财经精选新闻
                                python自动化系列:一键重命名文件,轻松跟踪修改历史
                                python自动化系列:一键删除PDF文档密码

                                python自动化系列:pdf页面转图片

                                python自动化系列:重新排列pdf页面的顺序

                                python自动化系列:裁剪pdf特定页面特定区域

                                python自动化系列:将Excel表格中的学生信息自动填充到一个word文档

                                python自动化系列:轻松合并PDF文件特定页面

                                python自动化系列:将Excel表格中的学生多条信息自动填充到一个Word文档

                                python自动化系列:如何轻松为PDF文件添加统一水印

                                python自动化系列:批量图片水印添加工具

                                python自动化系列:一键提取PPT文字到Word

                                python自动化系列:Python脚本实现GIF动画的快速生成

                                python自动化系列:轻松获取豆瓣Top 250电影数据

                                python自动化系列:自动删除重复图片并保留最新版本

                                python自动化系列:一键将Excel多页数据批量转换为Word文档

                                python自动化系列:如何使用Python为PDF文件添加密码保护

                                最新文章

                                随机文章