首页 > 编程语言 >Drain算法-笔记

Drain算法-笔记

时间:2024-09-30 15:45:16浏览次数:6  
标签:Drain text 算法 笔记 token 日志 节点 mathrm

简介

论文链接:https://jiemingzhu.github.io/pub/pjhe_icws2017.pdf

算法原理图:

image-20240927145439370

有几点注意:

  • 根节点和叶节点实际是一套规则,并不包含日志数据
  • 真正的日志数据在叶节点之下的Log Group
  • 第一层节点,基于假设: 具有相同日志事件的日志消息可能具有相同的日志消息长度
  • 第二层节点,基于假设: 日志消息开始位置的token更有可能是常量

Leaf Node 的计算

计算日志消息和每个日志组的日志事件之间的序列相似性:

\[\mathrm{sinSeq}=\frac{\sum_{\mathrm{i}=1}^\mathrm{n}\mathrm{equ}(\mathrm{seq}_1(\mathrm{i}),\mathrm{seq}_2(\mathrm{i}))}{\mathrm{n}} \]

seq分别是同一组内,两个日志的序列(以空格划分的字符串数组):

\[\text{equ}(\mathrm t_1 ,\mathrm t_2 )=\begin{cases}1&\text{if} \mathrm t_1 ==\mathrm t_2\\0&\text{otherwise}\end{cases} \]

如果stsimSeq≥st(阈值),那么Drain就会返回该组作为最佳匹配,否则返回一个标志位表示没有合适的。

更新解析树

如果在返回了合适的日志组,则Drain将当前日志消息的日志ID添加到返回的日志组中的日志ID中。此外,将更新返回日志组中的日志事件。

扫描日志消息和日志事件相同位置的token,如果两个token相同,则不修改该token位置上的token。否则,在日志事件中通过通配符*更新该token位置上的token。

如果无法找到合适的日志组,则根据当前日志消息创建一个新的日志组。

image-20240930154832679

标签:Drain,text,算法,笔记,token,日志,节点,mathrm
From: https://www.cnblogs.com/ag-chen/p/18441976

相关文章

  • 最小生成树学习笔记
    最小生成树证明最小生成树构成的过程实际上是做\(n-1\)次操作,每一次合并一个点集,直到图中只剩下一个集合为止。要达到的就是让每一次合并的代价之和最小。那么我们实际上可以贪心地选择边权最小的并且能够合并集合的边(Kruskal算法),这个算法的正确性简单来说可以用反证法来证......
  • prometheus学习笔记之Grafana 常用操作
    一、Panel设置1.单位设置2.Panel名称修改3.曲线别名修改前修改后 4.曲线排序 5.曲线复制6.曲线静默 7.Panel复制当前dashboard中复制跨dashboard或folder在其他dashboard中操作8.设置告警线设置告警条件其他按提示填写如果触发告警规则则......
  • 卓越网络安全教程笔记-四-
    卓越网络安全教程笔记(四)P64:11.4-【Metasploit渗透】Metasploit基本使用方法-2-一个小小小白帽-BV1Sy4y1D7qv好接下来我们来看另外一个比较重要的命令,也是我们会经常会用到的一个命令啊,模块相关的命令,柚子的使用方法啊,柚子那么英文翻译过来呢是使用的意思哎,主要通过这个命令......
  • 排序算法之——归并排序,计数排序
    文章目录前言一、归并排序1.归并排序的思想2.归并排序时间复杂度及空间复杂度3.归并排序代码实现1)递归版本2)非递归版本二、计数排序1.计数排序的思想2.计数排序的时间复杂度及空间复杂度3.计数排序代码实现总结(排序算法稳定性)前言今天我们一起来了解归并排......
  • 代码随想录算法训练营第六天|理解hash表
    WhatisHashTable?引用自文章链接:https://programmercarl.com/哈希表理论基础.html#哈希表哈希表是根据关键码的值而直接进行访问的数据结构。直白来讲其实数组就是一张哈希表,哈希表中关键码就是数组的索引下标,然后通过下标直接访问数组中的元素。哈希函数通过hashCode把......
  • 计算机视觉算法
    计算机视觉算法详解及代码实现1.引言计算机视觉(ComputerVision,CV)是人工智能的重要分支,旨在让计算机具备从图像或视频中理解和提取有用信息的能力。随着深度学习技术的兴起,计算机视觉已经在诸多领域取得了突破性进展,如自动驾驶、医疗影像分析、安防监控等。本文将介绍计......
  • 除氟剂在锂电池回收处理过程中的应用(学习笔记)
    除氟剂在锂电池回收处理过程中的应用是至关重要的,主要目的是去除回收废液中的氟离子,以保护后续处理设备、提高回收金属的品质,并减少对环境的污染。以下是除氟剂在锂电池回收处理过程中的详细应用:一、应用背景在锂电池的回收处理过程中,废旧电池经过拆解、放电、破碎、浸出等......
  • 阳极氧化与废酸处理(学习笔记)
    一、阳极氧化概述阳极氧化(AnodicOxidation)是一种金属或合金的电化学氧化过程。在阳极氧化过程中,金属或合金(如铝及其合金)在相应的电解液(如硫酸、铬酸、草酸等)中,作为阳极,在特定条件和外加电流的作用下,表面形成一层氧化膜。这层氧化膜具有保护性、装饰性以及其他功能特性,如提高......
  • 光伏含氟废水的深度除氟(学习笔记)
    光伏废水中的氟深度除氟是一个复杂但重要的过程,以确保废水在排放前达到环保标准。以下是一些常用的深度除氟方法:一、化学沉淀法化学沉淀法是通过向含氟废水中投加化学试剂,使其与废水中的氟生成氟化物沉淀,然后通过过滤或自然沉降等方法使沉淀物与水分离,达到除氟的目的。这种......
  • 轴承寿命预测 | 基于TCN时间卷积神经网络算法的轴承寿命预测附matlab完整代码
    轴承寿命预测|基于TCN时间卷积神经网络算法的轴承寿命预测附matlab完整代码数据划分:将数据集划分为训练集、验证集和测试集,通常采用时间序列数据的方式进行划分。构建TCN模型:设计TCN模型结构,包括卷积层、激活函数、池化层等。确保模型能够有效学习时间序列数据的特征。......