LibreLog: Accurate and Efficient Unsupervised Log Parsing Using Open-Source Large Language Models

📄 arXiv: 2408.01585v3 📥 PDF

作者: Zeyang Ma, Dong Jae Kim, Tse-Hsun Chen

分类: cs.SE, cs.AI

发布日期: 2024-08-02 (更新: 2024-11-18)


💡 一句话要点

LibreLog:利用开源大语言模型实现高精度、高效率的无监督日志解析

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 日志解析 大语言模型 无监督学习 开源LLM 检索增强生成

📋 核心要点

  1. 现有基于语法的日志解析器在处理偏离预定义规则的日志时,精度会下降;而基于LLM的解析器需要大量标注数据,成本高昂,且存在隐私风险。
  2. LibreLog利用开源LLM,通过固定深度分组树对日志进行分组,并结合相似度检索增强生成、自反思和日志模板记忆等机制,实现高效准确的无监督解析。
  3. 实验结果表明,LibreLog在LogHub-2.0数据集上,相比现有最佳的LLM日志解析器,解析精度提升了25%,处理速度提升了2.7倍。

📝 摘要(中文)

本文提出了一种名为LibreLog的无监督日志解析方法,旨在利用开源大语言模型(如Llama3-8B)提高隐私性并降低运营成本,同时实现最先进的解析精度。现有基于大语言模型的日志解析器面临三大挑战:1)耗时费力的人工标注;2)由于日志数据量巨大和LLM上下文窗口限制而导致的解析成本增加;3)使用商业模型(如ChatGPT)处理敏感日志信息带来的隐私风险。LibreLog首先使用固定深度分组树将具有相似静态文本但动态变量不同的日志进行分组,然后使用三个组件解析这些组内的日志:i)基于相似度评分的检索增强生成,选择组内不同的日志,帮助LLM区分静态文本和动态变量;ii)自反思,迭代查询LLM以改进日志模板,提高解析精度;iii)日志模板记忆,存储已解析的模板,减少LLM查询,提高解析效率。在LogHub-2.0上的评估表明,与最先进的基于LLM的解析器相比,LibreLog的解析精度提高了25%,处理速度提高了2.7倍。总之,LibreLog解决了使用商业LLM的隐私和成本问题,同时实现了最先进的解析效率和准确性。

🔬 方法详解

问题定义:论文旨在解决现有日志解析方法在精度、成本和隐私方面存在的不足。传统的基于语法的解析器难以处理复杂或不规则的日志格式,而基于商业LLM的解析器则面临高昂的API调用成本和潜在的敏感数据泄露风险。因此,需要一种既能保证解析精度,又能降低成本并保护隐私的日志解析方法。

核心思路:LibreLog的核心思路是利用开源LLM的强大语义理解能力,结合无监督学习策略,实现高精度、低成本的日志解析。通过固定深度分组树对日志进行预处理,将相似的日志聚集在一起,降低了LLM需要处理的日志数量。同时,利用检索增强生成和自反思机制,提高LLM区分静态文本和动态变量的能力,从而提升解析精度。

技术框架:LibreLog的整体框架包含三个主要模块:1) 固定深度分组树:用于将具有相似静态文本的日志分组;2) 基于相似度评分的检索增强生成:在每个组内,根据Jaccard相似度选择具有代表性的日志,作为LLM的输入,增强其区分静态文本和动态变量的能力;3) 自反思和日志模板记忆:LLM迭代地生成和改进日志模板,并将已解析的模板存储在内存中,避免重复查询LLM。

关键创新:LibreLog的关键创新在于其无监督的学习方式和对开源LLM的有效利用。与需要大量标注数据的有监督方法不同,LibreLog无需人工干预即可实现高精度的日志解析。此外,通过结合检索增强生成、自反思和日志模板记忆等机制,显著提升了LLM的解析效率和准确性。

关键设计:固定深度分组树的深度是一个关键参数,需要根据日志数据的特点进行调整。相似度评分采用Jaccard相似度,用于衡量日志之间的文本相似度。自反思过程中的迭代次数和LLM的prompt设计也会影响解析精度。日志模板记忆采用缓存机制,用于存储已解析的模板,避免重复查询LLM。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,LibreLog在LogHub-2.0数据集上取得了显著的性能提升。与最先进的基于LLM的日志解析器相比,LibreLog的解析精度提高了25%,处理速度提高了2.7倍。这表明LibreLog在保证解析精度的同时,显著降低了计算成本,使其更适用于大规模日志数据的处理。

🎯 应用场景

LibreLog可广泛应用于各种需要日志分析的场景,如系统监控、安全审计、故障诊断等。通过自动将非结构化日志数据转换为结构化格式,LibreLog可以帮助运维人员快速定位问题、提高系统可靠性,并为安全分析提供有价值的信息。该研究的开源特性使其更易于部署和定制,具有广泛的应用前景。

📄 摘要(原文)

Log parsing is a critical step that transforms unstructured log data into structured formats, facilitating subsequent log-based analysis. Traditional syntax-based log parsers are efficient and effective, but they often experience decreased accuracy when processing logs that deviate from the predefined rules. Recently, large language models (LLM) based log parsers have shown superior parsing accuracy. However, existing LLM-based parsers face three main challenges: 1)time-consuming and labor-intensive manual labeling for fine-tuning or in-context learning, 2)increased parsing costs due to the vast volume of log data and limited context size of LLMs, and 3)privacy risks from using commercial models like ChatGPT with sensitive log information. To overcome these limitations, this paper introduces LibreLog, an unsupervised log parsing approach that leverages open-source LLMs (i.e., Llama3-8B) to enhance privacy and reduce operational costs while achieving state-of-the-art parsing accuracy. LibreLog first groups logs with similar static text but varying dynamic variables using a fixed-depth grouping tree. It then parses logs within these groups using three components: i)similarity scoring-based retrieval augmented generation: selects diverse logs within each group based on Jaccard similarity, helping the LLM distinguish between static text and dynamic variables; ii)self-reflection: iteratively query LLMs to refine log templates to improve parsing accuracy; and iii) log template memory: stores parsed templates to reduce LLM queries for improved parsing efficiency. Our evaluation on LogHub-2.0 shows that LibreLog achieves 25% higher parsing accuracy and processes logs 2.7 times faster compared to state-of-the-art LLM-based parsers. In short, LibreLog addresses privacy and cost concerns of using commercial LLMs while achieving state-of-the-arts parsing efficiency and accuracy.