CN114116421A - 一种基于elk的用户习惯分析方法及*** - Google Patents

一种基于elk的用户习惯分析方法及*** Download PDF

Info

Publication number
CN114116421A
CN114116421A CN202111390708.9A CN202111390708A CN114116421A CN 114116421 A CN114116421 A CN 114116421A CN 202111390708 A CN202111390708 A CN 202111390708A CN 114116421 A CN114116421 A CN 114116421A
Authority
CN
China
Prior art keywords
data
log data
log
user
analysis
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111390708.9A
Other languages
English (en)
Inventor
黄河
邓永晖
荣星
黄兴
严亚伟
冯中华
苏怀方
盘善海
唐林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CETC 30 Research Institute
Original Assignee
CETC 30 Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CETC 30 Research Institute filed Critical CETC 30 Research Institute
Priority to CN202111390708.9A priority Critical patent/CN114116421A/zh
Publication of CN114116421A publication Critical patent/CN114116421A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种基于ELK的用户习惯分析方法及***,该方法包括以下步骤:S1,日志数据缓存:将日志数据写入磁盘文件,供后续数据预处理使用;S2,数据预处理:将经日志数据缓存的各数据源的日志数据作归一化处理,供后续日志数据检索使用;S3,数据检索:实时检索所需的经数据预处理的日志数据,供后续用户行为习惯分析使用;S4,用户行为习惯分析:对经数据检索得到的日志数据进行建模,分析用户的用户行为习惯。本发明解决了现有技术存在的以下问题:针对来源较多、种类繁杂甚至是网络异构的日志数据,传统的日志处理手段由于缺乏实时的数据分析能力,无法及时对日志数据完成处理,且传统日志处理***的数据处理方式较为简陋。

Description

一种基于ELK的用户习惯分析方法及***
技术领域
本发明涉及网络日志数据处理技术领域,具体是一种基于ELK的用户习惯分析方法及***。
背景技术
随着互联网技术的不断发展,信息***由较为简单的单节点应用逐渐转变成分布式应用。信息***日志,如用户行为日志、***操作日志、应用状态与流量监控日志等,对于保证***的使用以及运维等有着重要意义。信息***产生的日志,可以记录***运行时的相关数据,通过数值、图标等形式可直观反映出***用户的活跃时间与事件等相关信息。用户习惯分析主要以***日志为数据基础,从基本的用户行为日志以及***操作日志分析,再到应用状态与流量监控日志的辅助分析,日志信息越全面,反映出的用户习惯更加真实,进而辅助应用程序的不断完善与提高以及资源的合理运用。通常情况下,应用日志数据多存在于各个服务器上,对这些服务器上的日志数据进行收集、处理以及分析,对应用的正常运行提供了有力保障。
目前已有一些开源的日志***可以辅助日志分析。Scribe作为Facebook公司开源的一个用于对流数据聚合的日志收集***,能够从多种数据源中收集日志并最终将日志数据存储在目标存储***中,但是该日志***并不提供对日志数据的实时分析。Chukwa是Hadoop的一个子项目,用于弥补日志处理与Hadoop生态***之间的差距,通过对不同数据源的日志进行汇聚再转交给MapReduce进行处理,使得MapReduce能够发挥出最佳性能。但是Chukwa并不能够达到实时处理日志数据的要求,且Chukwa的存储***高度依赖Hadoop。Apache Flume虽然为日志数据的收集与聚合提供了一种可靠的分布式服务,但是由于Flume的客户端需要用户自行实现代码,且实时数据的收集是通过命令行方式,可靠性较差,其没有实现对文件新增记录的监控,且对数据的过滤和解析能力较差。
基于日志数据,对数据进行建模可分析出用户使用***的行为习惯,实现对用户使用行为的跟踪,分析出用户在各环节的使用情况,找出用户在各环节可能产生的脏数据以及造成的潜在问题,分析流程的合理性并做出改进,优化操作流程,降低使用门槛;同时优化资源分配,依据用户使用占比灵活配置各功能模块所占有的资源。
为满足不断采集的多源网络日志数据,需要对各日志数据进行转换,能够实现用户可灵活配置日志处理规则。此外日志***还需支持实时分析处理的能力,能够对用户行为习惯进行实时反应。因此需具备高并发、低延迟与高可用的特点。
发明内容
为克服现有技术的不足,本发明提供了一种基于ELK的用户习惯分析方法及***,解决现有技术存在的以下问题:针对来源较多、种类繁杂甚至是网络异构的日志数据,传统的日志处理手段由于缺乏实时的数据分析能力,无法及时对日志数据完成处理,且传统日志处理***的数据处理方式较为简陋。
本发明解决上述问题所采用的技术方案是:
一种基于ELK的用户习惯分析方法,包括以下步骤:
S1,日志数据缓存:将日志数据写入磁盘文件,供后续数据预处理使用;
S2,数据预处理:将经日志数据缓存的各数据源的日志数据作归一化处理,供后续日志数据检索使用;
S3,数据检索:实时检索所需的经数据预处理的日志数据,供后续用户行为习惯分析使用;
S4,用户行为习惯分析:对经数据检索得到的日志数据进行建模,分析用户的用户行为习惯。
作为一种优选的技术方案,步骤S3中,利用ElasticSearch实时检索所需的经数据预处理的日志数据。
作为一种优选的技术方案,步骤S2中,利用LogStash将经日志数据缓存的各数据源的日志数据作归一化处理。
作为一种优选的技术方案,步骤S3还包括以下步骤:
S31,利用Kibana实现对经数据检索得到的日志数据的可视化。
作为一种优选的技术方案,步骤S4中,用户行为习惯包括用户在使用***软件时的浏览习惯、软件操作习惯、和/或***操作习惯。
作为一种优选的技术方案,步骤S4中,分析用户的用户行为习惯的方法为以下的一种或多种:
路径分析,用以判断出当前软件中最为频繁访问的路径;
序列模式,用以在时间戳有序的事务集合中发现高频率出现的具有关联性的内部事务;
分类分析,用以给出识别一个特殊群体的公共属性的描述;
聚类分析,用以找出用户中具有相似特征的用户,将数据划分为不同的类;
统计,用以从***历史日志数据中对用户活跃时间与事件进行频度、平均值的统计分析,分析出***运行时资源的消耗情况;和/或;用以对应用状态与流量进行统计,对于可能影响***正常运行的情况做出及时预警;
漏斗分析,用以找出用户在***功能各环节的使用情况。
根据权利要求6所述的一种基于ELK的用户习惯分析方法,其特征在于,步骤S1~S4中的日志数据包括用户行为日志、***操作日志、应用状态日志和/或流量监控日志。
作为一种优选的技术方案,步骤S1中,日志数据首先进入缓存中间件中存储,当缓存中间件接收到一定数量的日志数据或者到达某一时间阈值时,将缓存中的所有日志数据全部一次性通过磁盘IO写入磁盘文件。
一种基于ELK的用户习惯分析***,包括以下模块:
日志数据缓存模块:用以将日志数据写入磁盘文件,供后续数据预处理模块使用;
数据预处理模块:用以将经日志数据缓存模块的各数据源的日志数据作归一化处理,供后续日志数据检索模块使用;
数据检索模块:用以实时检索所需的经数据预处理模块的日志数据,供后续用户行为习惯分析模块使用;
用户行为习惯分析模块:用以对经数据检索模块得到的日志数据进行建模,分析用户的用户行为习惯。
本发明相比于现有技术,具有以下有益效果:
(1)本发明采用ELK技术,实现对大量多源日志数据的采集、处理与治理,将数据以服务的形式提供给用户行为习惯分析与展示模块,提升了***的运行效率。同时结合缓存中间件技术,提升日志产生端的性能;
(2)本发明对用户行为习惯进行分析,考虑到单一分析方法无法对所有日志数据进行全面准确地评估分析,采用了多种分析方法,充分发挥各分析方法优势,得到更加准确全面的用户行为习惯评估分析结果。
附图说明
图1为本发明所述一种基于ELK的用户习惯分析方法的步骤示意图;
图2为本发明所述一种基于ELK的用户习惯分析***的结构框图;
图3为本发明所述一种基于ELK的用户习惯分析方法的总体架构图;
图4为本发明用户行为习惯分析与展示示意图。
具体实施方式
下面结合实施例及附图,对本发明作进一步的详细说明,但本发明的实施方式不限于此。
实施例
如图1至图4所示,基于背景技术指出来的技术问题,提出一种基于ELK的用户习惯分析,为信息提供的不断完善以及资源的合理利用提供解决方案。
针对来源较多、种类繁杂甚至是网络异构的日志数据,传统的日志处理手段由于缺乏实时的数据分析能力,无法及时对日志数据完成处理,且传统日志处理***的数据处理方式较为简陋。因此需要设计能够支持实时的日志分析解决方案,提供灵活日志数据处理规则,在保证高并发与低延迟的要求下,完成对多源日志数据的分析处理,及时准确的反映出用户行为习惯,对***的改善以及资源的合理分配有着重要意义。
具体来讲:
1)采用ELK(ElasticSearch,LogStash和Kibana)作为日志数据收集、处理和分析的核心模块,能够从多种数据源收集日志数据并对日志数据进行处理,提供近乎实时的分析处理能力,快速检索到所需的日志数据,并提供了日志检索的可视化界面。同时,在日志产生端可添加缓存中间件技术来减少磁盘IO,提升***并发能力。
2)建立用户行为习惯分析模型,从日志数据中分析出用户浏览习惯、软件使用习惯等,跟踪用户使用行为,分析用户在各环节的使用情况,分析软件操作流程的合理性并依此来对软件做出进一步改进,优化资源配置与用户使用体验,降低使用门槛。
(一)总体架构
基于ELK的用户行为习惯分析架构图如图1所示,由日志数据缓存、日志数据预处理、日志数据检索以及用户行为习惯分析处理等步骤组成:
步骤一:日志数据缓存。传统日志处理***或直接以日志文件的形式,亦或是以数据库的方式来存储日志数据,产生的日志数据通过磁盘IO与日志数据存储文件进行交互存储,大量产生的日志会带来大量的磁盘IO操作。而对于操作***来说,磁盘IO往往都是一个较大的性能瓶颈。通过引入日志缓存中间件技术,产生的日志数据首先进入缓存中间件中存储,当缓存中间件接收到一定数量的日志数据或者到达某一时间阈值,将缓存中的所有日志数据全部一次性通过磁盘IO写入日志数据存储文件,极大减少磁盘IO操作,对提升***响应有着重要作用。
步骤二:数据预处理。由于***日志数据可能来自于不同的子应用,各应用的日志格式、记录的日志数据内容可能不尽相同。在数据进行检索分析之前,需要将各数据源的日志数据作归一化处理供日志数据检索模块使用。
步骤三:数据检索。该模块需要提供实时的数据检索与分析功能,帮助技术人员快速检索所需的日志数据。同时向***开发人员提供日志数据检索接口,辅助开发人员完成用户行为习惯分析与展示。
步骤四:用户行为习惯分析处理与展示。对日志数据进行建模,分析用户的浏览习惯、软件使用习惯,对用户在软件功能各环节中的使用情况进行计算分析,分析软件功能模块流程设计的合理性,并不断改善软件功能流程。依据软件功能用户使用占比合理分配有限物理资源(如服务器资源,带宽资源),提升软件整体运行效率与性能。分析应用状态与流量监控日志能够对信息***面临的潜在问题做出预警,帮助运维人员及时抵御信息***可能遭受的风险,尽可能减少损失。
(二)具体方案
基于ELK的用户行为***伸缩性,使得数据在生产环境中变得更有价值;通过Kibana提供了日志数据检索的可视化界面,方便技术人员快捷检索日志数据;通过引入缓存中间件技术来减少磁盘IO操作,确保***对外提供较快的响应时间。
1.日志数据缓存
日志数据缓存是用户行为习惯分析的前提。传统日志处理***将产生的日志直接通过IO写入磁盘文件,对***的性能造成较大的瓶颈。通过引入缓存中间件技术,各模块产生的日志数据首先写入缓存中间件中,当缓存中间件接收到一定数量的日志数据,或者到达指定的时间阈值,将缓存中的日志数据一次性写入磁盘,减少应用与磁盘的IO次数。缓存中间件技术包括Redis,消息队列等。Redis是一种基于内存的NoSql数据库,可用作简单的消息队列来缓存日志数据。消息队列如Kafka MQ可将数据从一个程序传递到另一个程序。信息***只需关注数据的产生,而对数据如何写入磁盘并不关注,可明显提升***响应。当日志数据在成功写入磁盘后,日志上报模块FileBeat会监听到新的日志数据已被写入并将新的日志数据上传至日志数据预处理模块。
2.日志数据预处理
日志数据预处理主要是将***中多种格式,多种内容的日志数据进行统一的归一化。而LogStash丰富的插件生态使得用户能够方便快捷的处理不同格式的日志数据,各日志产生端刻意改变自己的日志产生方式。且LogStash对ElasticSearch具有良好的兼容性,可以轻松实现与ElasticSearch的整合。
3.日志数据检索
日志数据检索与分析是本方法的核心之一。传统的日志处理***通常对日志进行离线式处理,无法解决生产环境下遇到的即时性问题。本方法采用ElasticSearch实现日志数据的近乎实时检索与分析,其基于著名全文搜索引擎Lucene实现搜索引擎,检索性能可达百毫秒级别,并保证了数据的高可用。
4.用户行为习惯分析
用户行为习惯分析是本方法的核心内容。对用户行为日志、***操作日志、应用状态日志与流量监控日志等进行模式发现与分析,得出用户在使用***软件时的浏览习惯、使用习惯以及操作习惯等。具体来讲:
1)通过路径分析可以判断出当前软件中最为频繁访问的路径,以及一些其他的有关路径的信息,从而调整和优化软件结构,使得用户访问所需路径更加简单快捷。
2)通过序列模式,在时间戳有序的事务集合中发现那些高频率出现的具有关联性的内部事务。
3)通过分类分析可以给出识别一个特殊群体的公共属性的描述。
4)通过聚类分析可以找出用户中具有相似特征的用户,其会将数据划分为几个类,使得在同一类中的数据之间具有较高的相似度,而在不同类中的数据存在较大的差别。
5)通过统计可以从***历史日志数据中对用户活跃时间与事件进行频度、平均值的统计分析,分析出***运行时资源的消耗情况,对用户使用占比较多的功能配置更多的资源,协同改进***结构,提升***性能。同时还能够对应用状态与流量进行统计,对于可能影响***正常运行的情况做出及时预警。
6)通过漏斗分析可以找出用户在***功能各环节的使用情况,分析流程设计的合理性,分析漏斗合理性,缩短路径事件,降低用户使用门槛,协同改进***结构。
5.用户行为习惯展示
用户行为习惯展示能够将分析处理后的数据通过可视化的方式进行展示,使得相关技术人员等整个***使用情况、资源消耗情况、潜在风险预警等有着全局掌握。
五、有益效果和优点
本发明专利有着如下有益效果和优点:
1)本发明专利采用ELK技术,实现对大量多源日志数据的采集、处理与治理,将数据以服务的形式提供给用户行为习惯分析与展示模块,提升了***的运行效率。同时结合缓存中间件技术,提升日志产生端的性能。
2)本发明专利提出对用户行为习惯进行分析,考虑到单一分析方法无法对所有日志数据进行全面准确地评估分析,采用了多种分析方法,充分发挥各分析方法优势,得到更加准确全面的用户行为习惯评估分析结果。
如上所述,可较好地实现本发明。
本说明书中所有实施例公开的所有特征,或隐含公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合和/或扩展、替换。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,依据本发明的技术实质,在本发明的精神和原则之内,对以上实施例所作的任何简单的修改、等同替换与改进等,均仍属于本发明技术方案的保护范围之内。

Claims (9)

1.一种基于ELK的用户习惯分析方法,其特征在于,包括以下步骤:
S1,日志数据缓存:将日志数据写入磁盘文件,供后续数据预处理使用;
S2,数据预处理:将经日志数据缓存的各数据源的日志数据作归一化处理,供后续日志数据检索使用;
S3,数据检索:实时检索所需的经数据预处理的日志数据,供后续用户行为习惯分析使用;
S4,用户行为习惯分析:对经数据检索得到的日志数据进行建模,分析用户的用户行为习惯。
2.根据权利要求1所述的一种基于ELK的用户习惯分析方法,其特征在于,步骤S3中,利用ElasticSearch实时检索所需的经数据预处理的日志数据。
3.根据权利要求2所述的一种基于ELK的用户习惯分析方法,其特征在于,步骤S2中,利用LogStash将经日志数据缓存的各数据源的日志数据作归一化处理。
4.根据权利要求3所述的一种基于ELK的用户习惯分析方法,其特征在于,步骤S3还包括以下步骤:
S31,利用Kibana实现对经数据检索得到的日志数据的可视化。
5.根据权利要求4所述的一种基于ELK的用户习惯分析方法,其特征在于,步骤S4中,用户行为习惯包括用户在使用***软件时的浏览习惯、软件操作习惯、和/或***操作习惯。
6.根据权利要求5所述的一种基于ELK的用户习惯分析方法,其特征在于,步骤S4中,分析用户的用户行为习惯的方法为以下的一种或多种:
路径分析,用以判断出当前软件中最为频繁访问的路径;
序列模式,用以在时间戳有序的事务集合中发现高频率出现的具有关联性的内部事务;
分类分析,用以给出识别一个特殊群体的公共属性的描述;
聚类分析,用以找出用户中具有相似特征的用户,将数据划分为不同的类;
统计,用以从***历史日志数据中对用户活跃时间与事件进行频度、平均值的统计分析,分析出***运行时资源的消耗情况;和/或;用以对应用状态与流量进行统计,对于可能影响***正常运行的情况做出及时预警;
漏斗分析,用以找出用户在***功能各环节的使用情况。
7.根据权利要求6所述的一种基于ELK的用户习惯分析方法,其特征在于,步骤S1~S4中的日志数据包括用户行为日志、***操作日志、应用状态日志和/或流量监控日志。
8.根据权利要求1至7任一项所述的一种基于ELK的用户习惯分析方法,其特征在于,步骤S1中,日志数据首先进入缓存中间件中存储,当缓存中间件接收到一定数量的日志数据或者到达某一时间阈值时,将缓存中的所有日志数据全部一次性通过磁盘IO写入磁盘文件。
9.一种基于ELK的用户习惯分析***,其特征在于,包括以下模块:
日志数据缓存模块:用以将日志数据写入磁盘文件,供后续数据预处理模块使用;
数据预处理模块:用以将经日志数据缓存模块的各数据源的日志数据作归一化处理,供后续日志数据检索模块使用;
数据检索模块:用以实时检索所需的经数据预处理模块的日志数据,供后续用户行为习惯分析模块使用;
用户行为习惯分析模块:用以对经数据检索模块得到的日志数据进行建模,分析用户的用户行为习惯。
CN202111390708.9A 2021-11-23 2021-11-23 一种基于elk的用户习惯分析方法及*** Pending CN114116421A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111390708.9A CN114116421A (zh) 2021-11-23 2021-11-23 一种基于elk的用户习惯分析方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111390708.9A CN114116421A (zh) 2021-11-23 2021-11-23 一种基于elk的用户习惯分析方法及***

Publications (1)

Publication Number Publication Date
CN114116421A true CN114116421A (zh) 2022-03-01

Family

ID=80439572

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111390708.9A Pending CN114116421A (zh) 2021-11-23 2021-11-23 一种基于elk的用户习惯分析方法及***

Country Status (1)

Country Link
CN (1) CN114116421A (zh)

Similar Documents

Publication Publication Date Title
US11366859B2 (en) Hierarchical, parallel models for extracting in real time high-value information from data streams and system and method for creation of same
US10715598B1 (en) Implementation of a web-scale data fabric
US11182098B2 (en) Optimization for real-time, parallel execution of models for extracting high-value information from data streams
US11868373B2 (en) Method and apparatus for monitoring an in-memory computer system
CN109634818A (zh) 日志分析方法、***、终端及计算机可读存储介质
CN111984499A (zh) 一种大数据集群的故障检测方法和装置
US12008027B2 (en) Optimization for real-time, parallel execution of models for extracting high-value information from data streams
CN108183927A (zh) 一种分布式***中链路调用的监控方法及***
CN102902775B (zh) 互联网实时计算的方法和***
US10229210B2 (en) Search query task management for search system tuning
CN111143286A (zh) 一种云平台日志管理方法及***
US10467255B2 (en) Methods and systems for analyzing reading logs and documents thereof
CN113360554A (zh) 一种数据抽取、转换和加载etl的方法和设备
CN113312376B (zh) 一种用于Nginx日志实时处理分析的方法及终端
CN114880405A (zh) 一种基于数据湖的数据处理方法及***
CN110912757B (zh) 业务的监控方法和服务器
CN117076426A (zh) 基于流批一体化的交通智能引擎***构建方法及装置
CN107357919A (zh) 行为日志查询***及方法
CN112825165A (zh) 项目质量管理的方法和装置
CN112579552A (zh) 日志存储及调用方法、装置及***
CN116069618A (zh) 一种面向应用场景的国产化***评估方法
CN114116421A (zh) 一种基于elk的用户习惯分析方法及***
CN116225848A (zh) 日志监测方法、装置、设备和介质
CN112131302B (zh) 一种商业数据分析方法及平台
CN108268342A (zh) 大规模it监控数据的存储运算***及方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination