ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

不想再逐条写日志规则?LogBERT 把日志异常检测做成一条可复现的流水线

不想再逐条写日志规则?LogBERT 把日志异常检测做成一条可复现的流水线 不想再逐条写日志规则LogBERT 把日志异常检测做成一条可复现的流水线【免费下载链接】logbertlog anomaly detection via BERT项目地址: https://gitcode.com/gh_mirrors/lo/logbertLogBERT 是一个用 BERT 做日志异常检测的开源项目覆盖 HDFS、BGL、Thunderbird 三个公开数据集的完整流程。适合想脱离人工规则、需要一份可复现检测基线的运维和算法工程师。规则式检测难在哪多数团队的日志检测起点是一堆关键字见到 error、timeout 就告警。日志格式一变、新组件一上线规则就要跟着改而不少真实故障里并没有明显的错误字眼漏报和误报会长期并存维护量还随系统规模往上涨。LogBERT 的思路是反过来不写规则让模型从日志序列本身学正常长什么样异常交给统计量判断。它是怎么看懂日志的原始日志先过 Drain 模板解析把每行归并成模板编号再按固定、滑动、会话三种窗口切成训练序列。模型是一个小型 BERT机制可以这样理解预训练相当于填空练习随机遮住序列里 65% 的 token 让模型猜回猜得准了才算读懂正常模式术语叫 Masked Language Model。双向编码让它左右都看Transformer 编码器同时利用前文和后文判断当前 token而不是从左到右单向读窗口 128、序列 512 都是可调参数。检测阶段数填不对的个数同样遮住部分 token模型猜不回 top-6 候选的比例过半这条序列就标为异常全程不需要人工标注。十分钟跑起来环境、数据、训练与预测第一步建环境用 environment/environment.yml 建 conda 环境Python 3.8 PyTorch或直接安装 requirements.txt。第二步准备数据HDFS 目录里 sh init.sh 建好输出目录python data_process.py 完成解析、切窗和训练/测试划分原始数据落在 ~/.dataset中间产物在 output/hdfsBGL 和 Thunderbird 的下载脚本在 scripts/ 下。第三步按 vocab、train、predict 三个子命令依次执行git clone https://gitcode.com/gh_mirrors/lo/logbert cd logbert conda create -f environment/environment.yml -n logbert conda activate logbert cd HDFS sh init.sh python data_process.py python logbert.py vocab python logbert.py train python logbert.py predict什么时候该用它、什么时候不必想在 HDFS、BGL、Thunderbird 上复现 LogBERT并与同目录下的 DeepLog、LogAnomaly 等基线做对比。日志结构规整、能解析出模板序列适合做基于序列的无监督异常检测。研究 BERT 类自监督模型在日志场景的表现需要一份完整可跑的代码。不必用它生产环境的实时日志流监控。这是离线批处理的研究框架没有现成的在线推理服务。想深入看哪里代码按解析—数据集—模型—训练分层优先看三处logparser/ 里的 Drain、Spell 模板解析器bert_pytorch/dataset/ 的词表构建与窗口采样以及 bert_pytorch/model/ 的 BERT 编码器与 MaskedLogModel 任务头。如果你需要一个能跑通的 LogBERT 日志异常检测基线从 HDFS 目录按上面三步走即可参数与环境细节以 README 为准。【免费下载链接】logbertlog anomaly detection via BERT项目地址: https://gitcode.com/gh_mirrors/lo/logbert创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表