当前位置: 首页 >  技术分享 >  聊聊日志聚类算法及其在工作中的应用场景

聊聊日志聚类算法及其在工作中的应用场景

导读:随着AI模型的普及应用与高速发展,主要的云厂商与AI大厂提供了对应的服务支持,使得业务的应用可以轻松对接AI算法,使其在实际项目中落地。.我个人也是极度推崇在项目中应用AI算法更轻松更数智化的兑现功能。.虽然AI门槛很高,但随着时间的推移与AI模型的发展,我相信对于普通的程序猿来


随着AI模型的普及应用与高速发展,主要的云厂商与AI大厂提供了对应的服务支持,使得业务的应用可以轻松对接AI算法,使其在实际项目中落地。
我个人也是极度推崇在项目中应用AI算法更轻松更数智化的兑现功能。
虽然AI门槛很高,但随着时间的推移与AI模型的发展,我相信对于普通的程序猿来说,还是可以入手且实际开发应用AI算法模型。


阅读《基于 Flink ML 搭建的智能运维算法服务及应用》一文后,对其中日志聚类算法有了些思考。

概述

日志聚类,简而言之是对海量日志的分析;其分析处理链路可以分为如下流程:日志采集 -> 预处理 -> 分词和特征表示 -> 聚类和标注;也可以概述为数据收集及预处理、文本向量化、文本相似度计算、文本分类四部分。

算法模型分析

针对如上的链路流程做一个拆分叙述。

日志采集

常用的日志采集方案是写完数据库多写一遍ElasticSearch;目前我个人推荐的方案是基于Flink CDC组件来采集。

预处理

一般来说,预处理阶段是在业务中常用的一个阶段,根据业务的不同做不同的处理,比如精简文本删除不必要的语气词、标点符号、替换占位符等等。日志一般都是非结构化的文本类型数据,由于开发人员的开发习惯与团队开发规范的约束,每个人记录的日志模板可能是不一样的,因此,需要对日志文本做一次常见的预处理—————删除不必要的语气词等。

分词和特征表述

分词

其实对于分词,我一开始想到的就是ElasticSearch中很重要的一个组件模块——————分析器。分析器由字符过滤器、分词器、词语(token)过滤器组成。在我看来,预处理流程与分词流程其实可以归纳为分析器的处理。

对于分词,当前主要有两种算法,一种是基于已有的词典库,一种是基于统计的机器学习。

基于词典的分词算法分为以下几种:正向最大匹配法、逆向最大匹配法和双向匹配分词法等。基于词典的分词算法是应用最广泛、分词速度最快的。基于统计的机器学习算法法是HMM、CRF、SVM、深度学习等算法,比如stanford、Hanlp分词工具是基于CRF算法。

常见的分词器都是使用机器学习算法和词典相结合,一方面能够提高分词准确率,另一方面能够改善领域适应性。

特征表述

将分词后的词作为特征列表,基于此列表,对日志做向量化的构建。通过TF-IDF算法对关键词做统计分析,得到词向量后,再做一次相似度比较,最终就可以得到向量。

其实我理解这里就是在做文本相似度匹配的处理。一般都是处理文本向量化。

聚类

最后通过聚类算法:层次聚类算法、K-means算法等来得到我们的聚类结果,也就是各个日志模板所对应的日志类别。

总结

在上份工作中,其实就遇到了类似的问题,当时我们有大量的日志数据,且需要基于这些日志数据做分析推送对应的解决策略以及解答给客户或是一线。但由于当时所有的开发人员都做的是业务开发,对机器学习及应用压根就不清楚(严格来说,都没有考虑过从这方面入手),所以导致当时的运维量和客户的反馈不太好;当时我花了不少时间分析过如何解决,受限于当时的认知与能力,画过一个简单的流程图,但很难落地,而且没有足够的理论与算法的支持,相比较现在的解决方案,那真是没眼看。目前来看,日志聚类的应用完全是可以落地到当时的业务上的。

参考

基于 Flink ML 搭建的智能运维算法服务及应用

对智能化运维中日志聚类分析的一些思考

SREWorks v1.5 版本发布 | 基于实时作业平台的日志聚类开源

揭秘阿里云Flink智能诊断利器——Fllink Job Advisor

内容
  • 刀光拖尾功能的改良
    刀光拖尾功能的改良
    2023-12-09
    年末终于有空,刀光拖尾是我很早就想回顾的一个课题,项目中多采用插件实现,很少有机会去研究。.之前也写过一版拖尾,但效果并
  • 【MRTK】修改 HoloLens 应用的默认系统设置
    【MRTK】修改 HoloLen
    2023-12-08
    前言.项目导入 MRTK.工具后,如果不进行设置,打包出来的应用是默认开启性能面板、空间网格、手部网格和关节铰链的,这会
  • 【MRTK】HoloLens 项目部署的几种方法
    【MRTK】HoloLens 项
    2023-12-07
    前言.如果在项目部署过程中遇到报错 Unity.IL2CPP.Building.BuilderFailedExcepti
  • 智能网卡、DPDK、BSP
    智能网卡、DPDK、BSP
    2023-12-06
    初步学习DPDK,发现跟公司项目极其相似,但是公司的项目属于智能网卡,一时间分不清什么是DPDK,什么是智能NIC,找到
  • 计算机网络概念汇总
    计算机网络概念汇总
    2023-12-05
    1. 模型结构.五层模型 :.应用层、传输层、网络层、数据链路层、物理层。.应用层 :为应用程序提供交互服务。在互联网中
  • 如何正确理解并科学实践DDD
    如何正确理解并科学实践DDD
    2023-12-04
    客观的理解DDD.DDD,即领域驱动设计,不仅带给我们一套新的概念,还提供了一套全新的设计思路,应用在构建大型复杂软件系
  • 领域驱动设计DDD实际项目落地最佳实践
    领域驱动设计DDD实际项目落地最
    2023-12-04
    领域驱动设计(Domain Driven.Design,简称:DDD)设计思想和方法论早在2005年时候就被提出来,但是
  • Leetcode刷题笔记——二分法
    Leetcode刷题笔记——二分
    2023-12-04
    二分法是搜索算法中极其典型的方法,其要求输入序列有序并可随机访问。算法思想为.输入:有序数组nums,目的数值targe
  • 【实践篇】最全的【DDD领域建模】小白学习手册(文末附资料)
    【实践篇】最全的【DDD领域建模
    2023-12-03
    导读.DDD领域建模被各个大小厂商提起并应用,而每个人都有自己的理解,本文就是针对小白,系统地讲解DDD到底是什么,解决
  • UE开发使用Rider时缓存干爆C盘的解决方案
    UE开发使用Rider时缓存干爆
    2023-12-03
    我们在使用Rider开发UE时,Ride会为每一个项目创建一个解决方案缓存,如果开几个新项目写测试demo,我们的C盘会
  • 驱动开发:取进程模块的函数地址
    驱动开发:取进程模块的函数地址
    2023-12-02
    在笔者上一篇文章《驱动开发:内核取应用层模块基地址》中简单为大家介绍了如何通过遍历PLIST_ENTRY32链表的方式获
  • 软件定制开发服务
    软件定制开发服务
    2024-01-05
    软件定制开发服务.产品功能.我们的软件定制开发服务为客户提供了一站式的解决方案,包括需求分析、设计开发、**部署和维护支
  • ***安全解决方案
    ***安全解决方案
    2024-01-10
    ***安全解决方案.产品功能.我们的服务器安全解决方案是一款专为企业服务器量身定制的安全软件,旨在保护企业服务器免受恶意
  • 电子元件芯片
    电子元件芯片
    2024-01-20
    电子元件芯片.产品功能.电子元件芯片是一种微型电子元件,其具有高性能、高可*性和低功耗的特点。它广泛应用于手机、电脑、家
  • ***远程监控系*
    ***远程监控系*
    2023-12-16
    ***远程监控系*.产品功能.我们的服务器远程监控系*是一款针对企业服务器管理的智能监控系*。它具有实时监控、远程操作、
  • 电子元件模块
    电子元件模块
    2023-12-21
    电子元件模块.我们的电子元件模块是一款专为电子爱好者和工程师设计的多功能模块。它集成了多种常用的电子元件和功能模块,可以
  • 电子元件连接器
    电子元件连接器
    2023-12-31
    电子元件连接器.产品功能.电子元件连接器是一种用于连接不同电子元件的重要组件。它可以提供可*的电气连接,从而实现各种电子
  • 人工智能应用软件
    人工智能应用软件
    2024-01-15
    人工智能应用软件产品介绍.产品功能.我们的人工智能应用软件集成了多种先进的人工智能技术,包括机器学习、自然语言处理、计算
  • ***数据备份方案
    ***数据备份方案
    2024-01-15
    ***数据备份方案.产品功能.自动化备份:定期自动备份***上的数据,无需人工干预,确保数据的及时、准确备份。.数据恢复
  • ***软件
    ***软件
    2023-12-06
    ***软件产品介绍.产品描述.我们的服务器软件是一款高性能、稳定可靠的服务器管理软件,具有强大的功能和灵活的配置,适用于
  • 移动应用开发
    移动应用开发
    2023-12-01
    移动应用开发.产品描述.移动应用开发是一种专注于为移动设备(如智能手机、平板电脑)开发应用程序的技术和流程。这些应用程序