【日志解析】【频率分析】ULP:基于正则表达式和本地频率分析进行日志模板提取

news/2024/11/7 16:44:06/

An Effective Approach for Parsing Large Log Files

文章目录

    • An Effective Approach for Parsing Large Log Files
      • 1 论文出处
      • 2 背景
        • 2.1 背景介绍
        • 2.2 针对问题
        • 2.3 创新点
      • 3 主要设计思路
        • 3.1 预处理
        • 3.2 日志事件分组
        • 3.3 通过频率分析生成日志模板
      • 4 实验设计
        • 4.1 准确性
        • 4.2 效率

1 论文出处

会议:International Conference on Software Maintenance and Evolution(ICSME)

级别:CCF-B

时间:2022

2 背景

2.1 背景介绍

  日志文件包括大量关于软件系统执行的信息,用于帮助处理不同的软件工程活动,生成的日志事件主要由两部分组成:日志头和日志消息。解析日志消息需要自动区分静态文本和动态变量,一种方法是使用正则表达式,而典型的工业日志文件可能包含数百个日志模板,许多方法基于频率分析来实现,比如Drain和Logram,这些工具将频率分析应用于整个日志文件,这使得很难在静态和动态标记之间找到明确的界限。

2.2 针对问题

  • 使用多个日志库会导致正则表达式的不断更新。
  • 依赖于领域知识很难区分日志的动态变量和静态内容。
  • 将频率分析应用于属于同一组的日志事件,而不是针对整个日志数据集。

2.3 创新点

  • 基于字符串匹配和本地频率分析对日志进行解析,不需要先前的领域知识或使用复杂的机器学习技术。
  • 设计通用的正则表达式来进行日志预处理。

3 主要设计思路

3.1 预处理

  通过简单的正则表达式识别出日志的头部信息,包括时间戳、进程ID、日志级别和日志记录功能,以及一些简单的动态变量比如IP地址和MAC地址,并且运行用户自定义正则表达式识别领域变量。

3.2 日志事件分组

  根据两个日志事件所包含的标记数量与最有可能是静态标记的标记数量来衡量两个日志事件的相似性,首先通过空格分割来确定标记个数,之后识别出只包含字母的标记,最后将日志事件转变为一个由字母标记和标记总数组成的字符串来进行匹配。

3.3 通过频率分析生成日志模板

  通过计算每个标记在属于同一组的日志事件中出现的次数,来分析每一组日志事件中出现的标记。

1) PacketResponder 1 for block blk_38865049064139660 terminating
2) PacketResponder 0 for block blk_-6952295868487656571 terminating
3) PacketResponder 2 for block blk_8229193803249955061 terminating
4) PacketResponder 2 for block blk_-6670958622368987959 terminating
5) PacketResponder 2 for block blk_572492839287299681 terminating
1) PacketResponder <*> for block <*> terminating
2) BLOCK* NameSystem.addStoredBlock: blockMap updated: <*> is added to <*> size 67108864
3) Received block <*> of size 67108864 from <*>

4 实验设计

  评估了ULP在解析LogPai基准的10个日志数据集时的准确性和效率,并与目前已有的解析方法对比。

4.1 准确性

4.2 效率


http://www.ppmy.cn/news/332475.html

相关文章

cesium态势标绘示例目录

cesium态势标绘欢迎您的订阅&#xff0c;订阅后您可以直接查看以下内容&#xff1b; 此专栏为vue cesium标绘与编辑&#xff0c;均采用es6模块化写法逻辑清晰&#xff0c;会有明显的标注说明&#xff0c;使代码容易读懂&#xff0c;理解和学习&#xff0c;相信读完此专栏会对…

一个好的接口自动化测试脚本是怎么写出来的?

目录 前言 1、某个用例的测试目的是什么 2、接口信息的来源 3、一些基本原则 4、断言那些事 5、脚本的后期维护 6、关于测试数据的准备 总结&#xff1a; 前言 谈到接口测试&#xff0c;大家关注更多的是哪个工具更优秀&#xff0c;更好用。但是很少人关注到接口测试用…

Git第十四讲 Git标签管理

Git标签是用于标记项目中的特定版本的重要工具。它们通常用于标识发布版本或里程碑。本文将介绍如何在Git中创建、查看和管理标签。 创建标签 要在Git中创建一个标签&#xff0c;可以使用git tag命令。有两种类型的标签&#xff1a;轻量标签和附注标签。 轻量标签 轻量标签…

i5 12600kf和r7 5700g区别哪个好

i5 12600KF采用英特尔7nm工艺制造依旧是10核心16线程&#xff0c;基础主频为3.6GHz&#xff0c;睿频为4.9GHz&#xff0c;二级缓存9.5MB 20MB L3缓存&#xff0c;内存支持双通道DDR5-3200。组装电脑选r7 5700g还是i5 12600kf怎么搭配更合适这些点很重要http://www.adiannao.cn/…

i5 13500h和r7 6800h差距 酷睿i513500h和锐龙r76800h选哪个

i5 13500h 采用10纳米制作工艺 最高睿频 4.7GHz 十二核心十六线程 三级缓存 18MB热设计功耗(TDP) 45W 支持最大内存 64GB 内存类型 DDR4 3200MHz DDR5 5200MHz 选 i5 13500H还是r7 6800h 这些点很重要 http://www.adiannao.cn/dy R7 6800H 采用6纳米工艺 8 核 16 线程&#xf…

锐龙r5 5500u相当于英特尔什么水平 r55500u属于哪个档次

r5-5500u相当于酷睿的十一代I5处理器&#xff0c;6核12线程&#xff0c;日常使用和玩游戏都可以。性能自然比八代i5好。 锐龙R55500U是台湾积体电路制造用现代7纳米工艺代工的。 r5 5500u怎么样这些点很重要 http://www.adiannao.cn/dy 与旧的R55500U (雷诺)相比&#xff0c;R…

r5 5600u和i7 1165G7 哪个好

Ryzen 5 5600U 为 6 核 Zen 3 设计&#xff0c;基础频率 2.3GHz, 加速频率 4.2GHz &#xff0c;核显为 7 CU 的 Vega 优化版&#xff0c;显卡频率为 1.8GHz &#xff08;Ryzen 7 4800H的 vega7 仅有1.6GHz&#xff09;&#xff0c;热设计功耗为 10-25W。 选r5 5600u还是r5 4500…

i7 11370h和r5 5600u有什么区别 哪个好详细性能配置对比

i7-11370H被识别为4核心8线程&#xff0c;基准频率3.3GHz&#xff0c;最高加速4.8GHz&#xff0c;集成5MB二级缓存、12MB三级缓存。i7-11370H TDP 为 35W 选i7 11370h还是r5 5600u这些点很重要!看完你就知道了 http://www.adiannao.cn/dy Ryzen 5 5600U 为 6 核 Zen 3 设计&am…