← 最新论文
💻 computer science

VarParser: Unleashing the Neglected Power of Variables for LLM-based Log Parsing

针对现有基于大语言模型的日志解析方法因忽视变量部分而导致的效率低下、成本高昂及信息丢失等问题,本文提出了名为 VarParser 的以变量为中心的解析策略,通过变量贡献采样、变量中心缓存及自适应变量感知上下文学习,在提升解析精度与效率的同时显著降低了调用成本并保留了丰富的变量信息。

原作者: Jinrui Sun, Tong Jia, Minghua He, Ying Li

发布于 2026-03-13
📖 1 分钟阅读☕ 轻松阅读

原作者: Jinrui Sun, Tong Jia, Minghua He, Ying Li

原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

这篇论文介绍了一个名为 VarParser 的新工具,它的任务是帮工程师们“读懂”计算机系统的日志(Logs)

为了让你更容易理解,我们可以把计算机日志想象成成千上万条来自不同部门的“工作日报”

1. 背景:为什么我们需要“读懂”日志?

想象一下,你是一家大公司的经理。每天,公司里成千上万的员工(服务器)都会给你发日报。

  • 正常的日报长这样:“今天系统运行正常,处理了 1000 个订单。”
  • 出错的日报长这样:“系统报错,订单 1001 处理失败,原因未知。”

如果只有几百条日报,你一眼就能看出谁出了问题。但如果每天有几百万条日报,而且格式乱七八糟,人工根本看不过来。这时候就需要“日志解析器”来帮忙,把杂乱的日报整理成整齐的表格,告诉你是哪类问题。

2. 旧方法的痛点:只盯着“不变”的部分

以前的智能解析器(基于大语言模型 LLM 的方法)就像是一个死板的翻译官

  • 它只关注“不变”的话:比如日报里总是写着“系统运行正常”、“处理了订单”。它把这些当作模板。
  • 它忽略“变化”的数字:比如“订单 1001"、“订单 1002"。它觉得这些数字不重要,直接把它们变成“某某某”(占位符)。

这就导致了四个大问题:

  1. 分组太乱:因为只看不变的话,它把很多其实不一样的日报强行归为一类,导致分类效率低。
  2. 问得太勤:因为它记不住那些变化的数字,每来一条新日报,它都要跑去问一次“超级大脑”(大模型):“这句话是什么意思?”这既慢又贵。
  3. 浪费钱:每次问“超级大脑”,都要把整句话(包括那些重复的废话)都发过去,消耗了大量的“ Token"(相当于大模型的计费单位),导致成本极高。
  4. 丢失细节:最后整理出来的表格里,那些重要的变化数字(比如具体的错误代码、IP 地址)都被抹掉了,变成了“某某某”。工程师看表时,根本不知道具体是哪个 IP 出了问题,就像看地图只看到“某地”,却看不到具体街道一样。

3. 新方案 VarParser:让“变化”成为主角

这篇论文提出的 VarParser,就像是一个聪明的老练秘书。它发现了一个被忽视的真相:日志里那些“变化”的部分(变量),往往才是最有价值的信息!

它做了三件聪明的事:

A. 聪明的“选样”策略(Variable Contribution Sampling)

  • 旧方法:像大海捞针,随机抓几条日报来学习。
  • VarParser:它先抓出日报里独特的、不常见的词(比如特殊的错误代码、奇怪的 IP)。它发现,如果两条日报里的“独特词”是一样的,那它们大概率属于同一类问题。
  • 比喻:就像在人群中找朋友,旧方法是看大家都穿什么颜色的衣服(不变的部分);VarParser 是看谁手里拿着独特的道具(变化的部分)。拿着相同道具的人,肯定是一伙的。这样分组快得多,样本也少得多。

B. 带“记忆”的缓存(Variable-Centric Parsing Cache)

  • 旧方法:每次看到新日报,如果没完全匹配上,就立刻问“超级大脑”。
  • VarParser:它建立了一个带有“模糊匹配”功能的记忆库。它不仅记住了模板,还记住了那些“变化部分”的位置和规律。
  • 比喻:就像你记电话号码。旧方法是死记硬背整个号码,只要错一个数字就认不出是张三。VarParser 是记住“张三的号码是 138****1234",只要中间几位对得上,它就能认出是张三,不需要每次都去问通讯录。这大大减少了问“超级大脑”的次数。

C. 精准的“提问”技巧(Adaptive Variable-aware ICL)

  • 旧方法:给“超级大脑”看例子时,把整条日报都发过去,包括那些重复的废话。
  • VarParser:它只挑出日报里最关键的变化部分作为例子发给“超级大脑”。
  • 比喻:就像你问路。旧方法是把整张地图都发给导航,说“看这张图,我要去这里”。VarParser 是只把“起点”和“终点”的坐标发给导航,说“从 A 到 B,怎么走?”。这样既省流量(Token),又让导航(大模型)更专注,回答更准。

4. 最终效果:又快、又准、又省钱

经过测试,VarParser 的表现非常棒:

  • 更准:它能更准确地识别出日志的模板,准确率比以前的方法高很多。
  • 更快:因为它减少了问“超级大脑”的次数,处理速度大幅提升。
  • 更省:因为它只发关键信息,大大降低了使用大模型的费用(Token 消耗减少了 50% 以上)。
  • 更完整:最重要的是,它保留了那些变化的细节(比如具体的 IP、时间、错误码)。工程师拿到结果后,不仅能知道“出错了”,还能立刻知道“是谁出的错”,就像不仅知道“某地堵车”,还能看到“具体是哪辆车堵的”。

总结

简单来说,VarParser 就是告诉我们要重视日志里那些“变来变去”的数字和代码,而不是只盯着那些“一成不变”的废话。通过利用这些变化的信息,它让计算机日志分析变得更聪明、更省钱、更透明

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →