095. 编写一个函数,实现简单的日志分析工具
095. 编写一个函数,实现简单的日志分析工具
编写一个简单的日志分析工具可以帮助快速提取日志中的关键信息,例如错误信息、特定事件的发生次数、日志的来源等。以下是一个基于 Python 的简单日志分析工具的实现,它包括以下功能:
- 读取日志文件:从指定的日志文件中读取内容。
- 统计错误信息:统计日志中出现的错误信息及其出现次数。
- 提取特定事件:根据关键字提取特定事件的日志条目。
- 按时间戳排序:将日志条目按时间戳排序。
- 生成报告:生成一个简单的分析报告,包含错误统计和特定事件的提取结果。
示例代码
import re
from collections import Counter
def read_log_file(file_path):
"""
从指定路径读取日志文件
:param file_path: 日志文件路径
:return: 日志内容列表
"""
try:
with open(file_path, 'r', encoding='utf-8') as file:
log_lines = file.readlines()
return log_lines
except FileNotFoundError:
print(f"Error: File '{
file_path}' not found.")
return []
except Exception as e:
print(f"An error occurred while reading the log file: {
e}")
return []
def analyze_errors(log_lines):
"""
统计日志中的错误信息
:param log_lines: 日志内容列表
:return: 错误信息及其出现次数
"""
error_pattern = re.compile(r'\b(error|fail|exception)\b', re.IGNORECASE)
errors = [line.strip() for line in log_lines