AIOps|揭秘海量日志异常检测
AIOps(Artificial Intelligence for IT Operations)即智能运维,将AI应用于运维领域,基于已有的运维数据(日志、监控信息、应用信息等),通过机器学习的方式来进一步解决自动化运维没办法解决的问题。华为AIOps使能服务沉淀了10+开箱即用的智能APP,覆盖网络维护、网络体验、网络规划、设备故障预测等应用领域,包含KPI异常检测、硬盘异常检测、故障识别及根因定位、日志异常检测等。其中日志异常检测(Log Anomaly Detection,LAD)实时监控日志,识别并推荐根因异常,辅助运维人员定位故障根因,提升运维效率。
"
一、为什么需要日志异常检测?
图2 四种不同规范的日志样例数据[1]
二、日志异常检测是如何实现的?
2.1日志解析
2.2异常检测
DeepLog模型
Step1: 取待检测的推理日志,通过日志解析得到模板序列;
Step2: 按task_id(或线程号、任务号)提取模板序列;
Step3: 加载训练后的模型,对各个task_id对应的序列滑动窗口依次检测;
Step4: 对每一个检测样本计算出概率最大topN模板集合,若则正常,否则为异常;
模板ID |
模板内容 |
One-hot编码 |
1 |
Interface * changed state to down |
[1, 0, 0] |
2 |
Vlan-Interface * changed state to up |
[0, 1, 0] |
3 |
Vlan-Interface * changed state to down |
[0, 0, 1] |
Template2Vec模型
Step 1 : 在WordNet[8]中对模板内容中的自然语言单词进行同义词和反义词搜索(如图7中的down和up),之后,运维人员再对具有业务知识的词汇识别同义词和反义词(如图中的Interface和Vlan-Interface),并将其转化为正常的自然语言词汇。
Step 2: 应用dLCE [9]生成模板中单词的词向量,如图7中的Word vectors。
Step 3: 模板向量是模板中单词的词向量的加权平均值。如图中的Templates vectors
Log2Vec模型
AIOps中的日子异常检测模型服务,能够实时监控日志,识别并推荐根因异常。内置多种类型算法,无需定制即可支持不同网元日志的异常检测;具备在线学习能力,持续提升检测精度,辅助运维人员定位故障根因,提升运维效率。
例如,对某个网元的某个计算节点的日志监控过程中,如图10所示,实时统计出现的异常量,给出各个异常对应的关键日志。若算法报出的结果存在误报,如图11所示,用户可以加入业务反馈,反馈的误报异常点将会被在以后的检测中被过滤掉。由于日志包含了丰富的领域业务知识,如图12所示,每条关键日志都会给出上下文,辅助运维人员定位具体的异常内容。
图10异常检测与关键日志推荐
图11可以加入用户反馈
图12 异常日志上下文
参考文献
[1] https://github.com/logpai/loghub
[2] Shilin He, Jieming Zhu, Pinjia He, Michael R. Lyu. Experience Report: System Log Analysis for Anomaly Detection, IEEE International Symposium on Software Reliability Engineering (ISSRE), 2016. (ISSRE Most Influential Paper).
[3] Min Du, Feifei Li, Guineng Zheng, Vivek Srikumar. DeepLog: Anomaly Detection and Diagnosis from System Logs through Deep Learning. CCS-2017
[4] Meng W, Liu Y, Zhu Y, et al. LogAnomaly: Unsupervised Detection of Sequential and Quantitative Anomalies in Unstructured Logs[C]//IJCAI. 2019: 4739-4745.
[5] Meng W, Liu Y, Huang Y, et al. A semantic-aware representation framework for online log analysis[C]//2020 29th International Conference on Computer Communications and Networks (ICCCN). IEEE, 2020: 1-7.
[6] Pinjia He, Jieming Zhu, Zibin Zheng, and Michael R. Lyu. Drain: An Online Log Parsing Approach with Fixed Depth Tree. ICWS'2017
[7] Tomas Mikolov, Kai Chen, Greg Corrado, and Jeffrey Dean. Efficient estimation of word representations in vector space. arXiv preprint arXiv:1301.3781, 2013.
[8] George A Miller. Wordnet: a lexical database for english. Communications of the ACM, 38(11):39–41, 1995.
[9] Kim Anh Nguyen, Sabine Schulte im Walde, and Ngoc Thang Vu. Integrating distributional lexical contrast into word embeddings for antonym-synonym distinction. arXiv preprint arXiv:1605.07766, 2016.
[10] Katrin Fundel, Robert K¨uffner, and Ralf Zimmer. Relex—relation extraction using dependency parse trees. Bioinformatics, 23(3):365–371, 2007.
[11] Yuval Pinter, Robert Guthrie, and Jacob Eisenstein. Mimicking word embeddings using subword rnns. In Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing (EMNLP), pages 102–112, 2017.
- 点赞
- 收藏
- 关注作者
评论(0)