Drain: An Online Log Parsing Approach with Fixed Depth Tree

Drain论文概述

Drain: An Online Log Parsing Approach with Fixed Depth Tree

摘要

论文提出了一种名为 Drain 的在线日志解析方法,旨在解决由于日志量快速增长而导致的离线日志解析方法的效率问题。Drain 通过使用固定深度的解析树,并在树节点中编码特殊设计的规则,实现了日志的流式解析,并大大提高了解析效率和准确性。

介绍

现代云计算和服务导向架构(SOA)的普及使得日志分析在服务管理中变得至关重要。日志通常是唯一记录系统运行时信息的数据资源,然而,原始日志信息是非结构化的,需要解析成结构化事件以便进一步分析。现有大多数日志解析方法集中于离线批处理,而随着日志量的增加,这种方法变得越来越耗时。

方法

Drain 提出了一个固定深度的解析树,用于在线解析日志信息。具体步骤包括:

  • 预处理:使用简单的正则表达式去除日志信息中的常见变量。
  • 通过日志长度搜索:根据日志信息的长度选择解析树的路径。
  • 通过前缀搜索:根据日志信息的前几个标记选择下一层节点。
  • 相似性搜索:计算日志信息与日志事件模板的相似性,并选择最适合的日志组。
  • 更新解析树:如果找到合适的日志组,则更新其信息;如果没有,则创建新的日志组并更新解析树。

实验

日志数据集:

  • BGL:来自 BlueGene/L 超级计算机系统的日志数据集。
  • HPC:高性能计算集群日志。
  • HDFS:在 Amazon EC2 平台上的 203 节点集群中收集的 Hadoop 文件系统日志。
  • Zookeeper:从实验室的 32 节点集群中收集的分布式系统协调日志。
  • Proxifier:独立软件 Proxifier 的日志。

比较方法:

  • LKE:一种离线日志解析方法,使用层次聚类和启发式规则。
  • IPLoM:离线方法,通过三步层次分割生成模板。
  • SHISO:在线解析器,使用预定义子节点数的树结构。
  • Spell:在线解析方法,利用最长公共子序列加速解析过程。

评估指标:

  • 准确性:使用 F1-score 评价解析方法的准确性。
  • 效率:测量解析方法的运行时间。
准确性:

Drain 在四个数据集(BGL、HPC、HDFS、Zookeeper)上表现出最高的准确性,并且在 Proxifier 数据集上也表现出与最佳方法相当的准确性。其他方法的准确性结果如表格所示:

Data Set LKE IPLoM SHISO Spell Drain
BGL 0.67 0.99 0.87 0.98 0.99
HPC 0.17 0.65 0.53 0.82 0.84
HDFS 0.57 0.99 0.93 0.87 0.99
Zookeeper 0.78 0.99 0.68 0.99 0.99
Proxifier 0.85 0.85 0.85 0.87 0.86
效率:

Drain 在所有五个数据集上所需的运行时间最少,显著优于其他在线解析方法。运行时间结果如表格所示:

Dataset LKE IPLoM SHISO Spell Drain Improvement (%)
BGL N/A 140.57 10964.55 447.14 115.96 74.07%
HPC N/A 12.74 582.14 47.28 8.76 81.47%
HDFS N/A 333.03 6649.23 676.45 325.7 51.85%
Zookeeper N/A 2.17 87.61 5.27 1.81 65.65%
Proxifier 8888.49 0.38 8.41 0.87 0.27 68.97%

案例研究:实际异常检测任务

数据集:HDFS 日志数据集,用于异常检测任务。

流程:
  1. 日志解析:使用不同日志解析方法解析 HDFS 日志。
  2. 事件计数矩阵生成:将结构化日志信息转换为事件计数矩阵。
  3. PCA 异常检测:使用 PCA 进行异常检测。
结果:

Drain 在异常检测任务中表现优异,检测到 10720 个真实异常,仅有 278 个误报,几乎达到最优性能。结果如表格所示:

方法 解析准确性 报告异常 检测到的异常 误报
IPLoM 0.99 10998 10720 278
SHISO 0.93 13050 11143 1907
Spell 0.87 10949 10674 275
Drain 0.99 10998 10720 278
Ground truth 1.00 11473 11195 278

评价

论文在五个实际日志数据集上评估了 Drain 的性能,包括 BlueGene/L、HPC、HDFS、Zookeeper 和 Proxifier 数据集。实验结果显示,Drain 在四个数据集上表现出最高的准确性,在运行时间上相较于最先进的在线解析器提高了 51.85% 到 81.47%。

结论

Drain 是一种有效的在线日志解析方法,在准确性和效率上均优于现有的在线和离线日志解析方法。通过在实际应用中的评估,Drain 在异常检测任务中也表现出了良好的效果。

相关推荐
钟屿16 小时前
Multiscale Structure Guided Diffusion for Image Deblurring 论文阅读
论文阅读·图像处理·人工智能·深度学习·计算机视觉
张较瘦_18 小时前
[论文阅读] 人工智能 + 软件工程 | NoCode-bench:评估LLM无代码功能添加能力的新基准
论文阅读·人工智能·软件工程
莫彩2 天前
【大模型论文阅读】2503.01821_On the Power of Context-Enhanced Learning in LLMs
论文阅读·人工智能·语言模型
王上上2 天前
【论文阅读51】-CNN-LSTM-安全系数和失效概率预测
论文阅读·cnn·lstm
有Li2 天前
弹性网:基于神经网络的多组分磁共振弹性成像波反演与不确定性量化|文献速递-医学影像算法文献分享
论文阅读·医学生
妙BOOK言2 天前
FalconFS: Distributed File System for Large-Scale Deep Learning Pipeline——论文阅读
论文阅读·元数据·分布式文件系统
2301_803652742 天前
PPO原论文阅读
论文阅读
北京地铁1号线3 天前
YOLO12论文阅读:Attention-Centric Real-Time Object Detectors
论文阅读·yolo·目标检测
张较瘦_3 天前
[论文阅读] 人工智能 + 软件工程 | 从OpenAPI到MCP服务器:AutoMCP如何让LLM工具集成自动化?
服务器·论文阅读·人工智能
锅挤3 天前
论文阅读--《Besting the Black-Box: Barrier Zones for Adversarial Example Defense》
论文阅读