数据处理方法、数据配置方法、装置及计算机设备
文献发布时间:2023-06-19 19:07:35
技术领域
本发明涉及互联网技术领域,尤其涉及一种数据处理方法、数据配置方法、装置及计算机设备。
背景技术
目前市面上对日志数据的管理,普遍采用ELK方案。ELK方案由Elasticsearch组件、Logstash组件和Kibana组件组成。Elasticsearch组件负责对日志数据进行存储和索引,用户就可以通过对应的索引检索到相应的日志数据。Logstash组件负责对新增的日志数据进行解析,并将解析后的日志数据传输到Elasticsearch组件。Kibana组件可以显示可视化界面,用于展示存储在Elasticsearch组件中的日志数据,同时也可以通过图表的形式展示日志数据的变化情况。
现有的日志管理方案,需要在用户对日志过滤规则比较了解的情况下,才能较好的对新增的日志数据进行过滤和解析。可见目前对日志管理方案的对用户的要求较高,导致日志管理的效率较低,因此如何提高日志管理的效率是当前亟待解决的一个技术问题。
发明内容
本申请实施例提出了一种数据处理方法、数据配置方法、装置及计算机设备,可以提高对日志管理的效率。
一方面,本申请实施例提供了一种数据处理方法,该方法包括:
在监听到日志新增事件时,从消息队列中间件中获取待处理日志数据;
若待处理日志数据与日志过滤规则匹配,则根据日志过滤规则对待处理日志数据进行解析处理,生成解析后的目标日志数据,日志过滤规则是通过日志管理界面配置的;
在日志搜索组件中将目标日志数据与日志过滤规则对应的目标索引进行关联存储。
一方面,本申请实施例提供了一种数据配置方法,该方法包括:
显示日志管理界面,日志管理界面包括至少一个日志配置项;
在日志管理界面中获取针对每个日志配置项所录入的日志配置数据;
根据获取得到的各个日志配置项对应的日志配置数据,生成日志过滤规则;
向日志管理服务器发送日志过滤规则,以使日志管理服务器在监听到日志新增事件时,根据日志过滤规则对待处理日志数据进行解析处理,生成解析后的目标日志数据。
一方面,本申请实施例提供了一种数据处理装置,该装置包括:
获取单元,用于在监听到日志新增事件时,从消息队列中间件中获取待处理日志数据;
处理单元,用于若待处理日志数据与日志过滤规则匹配,则根据日志过滤规则对待处理日志数据进行解析处理,生成解析后的目标日志数据,日志过滤规则是通过日志管理界面配置的;
存储单元,用于在日志搜索组件中将目标日志数据与日志过滤规则对应的目标索引进行关联存储。
一方面,本申请实施例提供了一种数据配置装置,该装置包括:
显示单元,用于显示日志管理界面,日志管理界面包括至少一个日志配置项;
获取单元,用于在日志管理界面中获取针对每个日志配置项所录入的日志配置数据;
处理单元,用于根据获取得到的各个日志配置项对应的日志配置数据,生成日志过滤规则;
发送单元,用于向日志管理服务器发送日志过滤规则,以使日志管理服务器在监听到日志新增事件时,根据日志过滤规则对待处理日志数据进行解析处理,生成解析后的目标日志数据。
一方面,本申请实施例提供一种计算机设备,该计算机设备包括存储器和处理器,存储器存储有一条或多条计算机程序,计算机程序被处理器执行时,使得处理器执行上述的方法。
一方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被计算机设备的处理器读取并执行时,使得计算机设备执行上述的方法。
一方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述的方法。
通过本申请实施例,在监听到日志新增事件时,可以从消息队列中间件中获取待处理日志数据。在确定待处理日志数据与日志过滤规则匹配的情况下,可以根据日志过滤规则对待处理日志数据进行解析处理,从而得到解析后的目标日志数据。其中,日志过滤规则是通过日志管理界面配置的。另外,在日志搜索组件中可以将目标日志数据与日志过滤规则对应的目标索引进行关联存储。可见,本申请实施例可以基于日志过滤规则对新增的待处理日志数据进行解析处理,从而得到固定格式的目标日志数据,并且基于日志过滤规则可以创建相应的索引并关联存储。进一步地,由于日志过滤规则是通过日志管理界面配置得到的,无需用户了解日志过滤规则的相关语法,因此可以提高对日志管理的效率。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种数据处理系统的架构示意图;
图2是本申请实施例提供的另一种数据处理系统的架构示意图;
图3是本申请实施例提供的一种数据处理方法的流程示意图;
图4是本申请实施例提供的一种配置日志过滤规则的流程示意图;
图5是本申请实施例提供的一种日志管理界面的示意图;
图6是本申请实施例提供的一种创建日志过滤规则的交互流程示意图;
图7是本申请实施例提供的一种配置图表管理规则的流程示意图;
图8是本申请实施例提供的一种图表管理界面的示意图;
图9是本申请实施例提供的一种创建图表管理规则的交互流程示意图;
图10是本申请实施例提供的一种数据处理装置的结构示意图;
图11是本申请实施例提供的一种数据配置装置的结构示意图;
图12是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
本申请实施例提出一种数据处理方案,该方案可以提高对日志管理的效率。其中,该方案的大致原理如下:在监听到日志新增事件时,可以从消息队列中间件中获取待处理日志数据。在确定待处理日志数据与日志过滤规则匹配的情况下,可以根据日志过滤规则对待处理日志数据进行解析处理,从而得到解析后的目标日志数据。其中,日志过滤规则是通过日志管理界面配置的。另外,在日志搜索组件中可以将目标日志数据与日志过滤规则对应的目标索引进行关联存储。可见,本申请实施例可以基于日志过滤规则对新增的待处理日志数据进行解析处理,从而得到固定格式的目标日志数据,并且基于日志过滤规则可以创建相应的索引并关联存储。进一步地,由于日志过滤规则是通过日志管理界面配置得到的,无需用户了解日志过滤规则的相关语法,因此可以提高对日志管理的效率。
接下来,结合本申请涉及的技术术语对上述提及的数据处理方案进行介绍:
在一种可能的实现方式中,本申请可以应用于云技术、人工智能、智慧交通、辅助驾驶等各种场景,具体可以为云技术领域下的云存储技术。例如,本申请中所涉及到的待处理日志数据、日志过滤规则、目标日志数据以及日志过滤规则对应的目标索引等数据,在存储上述数据时需要巨大的存储空间,因此在本申请中,可以由云存储技术获取足够的存储空间,并将这些数据进行存储以使后续方便获取这些数据。其中,所谓云存储(cloudstorage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统(以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。
在一种可能的实现方式中,本申请可以与区块链技术相结合。例如可以将本申请中的待处理日志数据、日志过滤规则、目标日志数据以及日志过滤规则对应的目标索引等数据,上传至区块链中进行保存,可以保证区块链上的数据不易被篡改。其中,区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
在一种可能的实现方式中,本申请实施例提供的数据处理方案可以由终端设备和服务器共同执行,需要说明的是,本申请中的终端设备和服务器都可统称为计算机设备;其中,终端设备和服务器之间可以通过有线或无线通信方式进行直接或间接地连接。在此情况下,终端设备和服务器可以构成一个数据处理系统,如图1所示,图1是本申请实施例提供的一种数据处理系统的结构示意图。其中,在执行该数据处理方案时,图1所示的服务器可以实时监听日志新增事件,当服务器监听到日志新增事件时,可以从消息队列中间件中获取待处理日志数据;若服务器确定出待处理日志数据与日志过滤规则匹配,则服务器可以根据日志过滤规则对待处理日志数据进行解析处理,生成解析后的日志数据。其中,日志过滤规则可以是用户通过终端设备所显示的日志管理界面配置得到的,然后终端设备将日志过滤规则发送给服务器。进一步地,服务器还可以在日志搜索组件中将目标日志数据与日志过滤规则对应的目标索引进行关联存储。后续,用户可以利用终端设备发起日志查看请求,其中,日志查看请求中可以携带目标索引,然后终端设备将该日志查看请求发送至服务器,以使服务器根据目标索引获取目标日志数据,并将获取到的目标日志数据返回至终端设备。
其中,用户可以在终端设备配置日志过滤规则。配置日志过滤规则的大致过程如下:首先,终端设备可以显示日志管理界面,日志管理界面包括至少一个日志配置项;然后在日志管理界面中获取针对每个日志配置项所录入的日志配置数据;最后,终端设备根据获取得到的各个日志配置项对应的日志配置数据,生成日志过滤规则,并将日志过滤规则发送至服务器。
应理解的是,上述只是示例性地说明了终端设备和服务器所负责执行的各个步骤,并不对此进行限定。例如,在其他实施例中,也可以是由终端设备来负责执行监听日志新增事件,并在终端设备监听到日志新增事件时,从消息队列中间件中获取待处理日志数据;此情况下,终端设备可以向服务器发送待处理日志数据,使得服务器基于日志过滤规则对待处理日志数据进行解析处理,生成解析后的目标日志数据。
进一步地,可以将图1所提供的数据处理系统部署在区块链的节点,例如可以将服务器和终端设备均当成区块链的节点设备,共同构成区块链网络。因此本申请中确定多个破损维修关系组的数据处理流程可以在区块链上执行,这样既可以保证数据处理流程的公平公正化,同时可以使得数据处理流程具备可追溯性,从而提升数据处理流程的安全性。
请参见图2,图2是本申请实施例提供的另一种数据处理系统的结构示意图。该数据处理的系统结构图至少可以包括:终端设备201、日志管理服务器202、业务服务器集群203、日志抓取组件204、消息队列中间件205、日志处理组件206、日志搜索组件207、以及数据库208。其中,业务服务器集群203可以包括至少一个业务服务器,每个业务服务器可以用于生成日志数据。另外,日志管理服务器202可以分别与终端设备201、日志搜索组件207、以及数据库208之间通过有线或无线通信方式进行直接或间接地连接;日志抓取组件204可以分别与业务服务器集群203和消息队列中间件205之间通过有线或无线通信方式进行直接或间接地连接;日志处理组件206可以分别与消息队列中间件205和日志搜索组件207之间通过有线或无线通信方式进行直接或间接地连接等等,本申请对此不做具体限定。
图2所示的终端设备201可以包括但不限于:手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(MID,mobile internet device)、智能语音交互设备、车载终端、路边设备、飞行器、可穿戴设备、智能家电、或者例如智能手表、智能手环、计步器等具有数据处理功能的可穿戴设备,等等。
图2所示的日志管理服务器202可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content DeliveryNetwork,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器,等等。
图2所示的业务服务器集群203所包括的业务服务器可以与日志管理服务器202为相同类型的服务器,也可以为不相同类型的服务器,本申请实施例对此不做具体限定。另外,数据库208可以用于存储日志数据。
可以理解的是,基于图2实施例中的日志抓取组件204、消息队列中间件205、日志处理组件206、日志搜索组件207可以共同实现对业务日志的管理监控,在对业务日志的管理监控过程中,采用的是一种ELK方案。其中,ELK是指:Elastic公司提供的一套完整的日志收集以及展示的解决方案,是三个产品的首字母缩写,分别是Elasticsearch组件(日志搜索组件207)、Logstash组件(日志处理组件206)和Kibana组件(日志抓取组件204)。接下来,对日志搜索组件207、日志处理组件206、日志抓取组件204以及消息队列中间件205的功能与作用进行相关介绍:
Elasticsearch组件(日志搜索组件207):一个分布式、高扩展、高实时的搜索与数据分析组件。它能很方便的使大量数据具有搜索、分析和探索的能力。充分利用Elasticsearch组件的水平伸缩性,能使数据在生产环境变得更有价值。Elasticsearch组件的实现原理主要分为以下几个步骤:首先,用户将数据提交到Elasticsearch数据库中;其次,通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据;然后,当用户搜索数据时候,再根据权重将结果排名,打分;最后,将返回结果呈现给用户。
Logstash组件(日志处理组件206):是一款开源的数据收集组件,具备实时管道处理能力,作为数据源与数据存储分析工具之间的桥梁,结合Elasticsearch组件能够极大方便数据的处理与分析。
Filebeat组件(日志抓取组件204):这是一款用于转发和集中日志数据的轻量级传送工具。Filebeat组件会监视指定的日志文件或位置,收集日志事件,并将它们转发到Elasticsearch组件或Logstash组件进行索引。其中,所谓的索引是指:定义了数据的逻辑存储和字段类型,每个索引可以包含多个文档类型,文档类型是文档的集合,文档以索引定义的逻辑存储模型。比如,指定分片和副本的数量,配置刷新频率,分配分析器等,存储在索引中的海量文档分布式存储在ElasticSearch组件集群中,并且能够被检索到。
Kafka组件(消息队列中间件205):Kafka组件是由Apache软件基金会开发的一个开源流处理平台,使用Scala和Java语言编写。它是一个分布式发布订阅消息系统,能为实时数据提供一个统一、高通量、低等待的消息传递平台。
需要说明的是,图2是本申请实施例提供的一种示例性的系统架构图。在一种可能的实现方式中,图2所示的日志抓取组件204、日志处理组件206、日志搜索组件207可以分别是独立的计算机设备;或者,日志抓取组件204、日志处理组件206、日志搜索组件207也可以共同集成于同一台计算机设备中,并且该计算机设备可以与日志管理服务器202之间通过有线或无线通信方式进行直接或间接地连接;或者,日志抓取组件204、日志处理组件206、日志搜索组件207均集成于日志管理服务器202中,本申请对此不做具体限定。
在一种可能的实现方式中,可以将图2实施例提供的数据处理系统部署在区块链的节点,例如可以将图2实施例中系统架构图中的每个设备(终端设备201、日志管理服务器202、业务服务器集群203、日志抓取组件204、消息队列中间件205、日志处理组件206、日志搜索组件207、以及数据库208)均当成区块链的节点设备,共同构成区块链网络。因此本申请中对待处理日志数据的数据处理流程可以在区块链上执行,这样既可以保证数据处理流程的公平公正化,同时可以使得数据处理流程具备可追溯性,提升数据处理流程的安全性。
可以理解的是,本申请实施例描述的系统架构示意图是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
基于以上分析,下面结合图3对本申请的数据处理方法进行描述。请参见图3,图3是本申请实施例提供的一种数据处理方法的流程示意图。该数据处理方法可由上述所提及的计算机设备执行,计算机设备可以为日志管理服务器。
参见图3所示,该数据处理方法可包括步骤S301~S304:
S301:在监听到日志新增事件时,从消息队列中间件中获取待处理日志数据。
在一种可能的实现方式中,日志管理服务器可以通过调用日志抓取组件监听日志新增事件,在日志抓取组件监听到日志文件中存在新增日志数据时,确定监听到日志新增事件;然后,日志管理服务器基于容器镜像获取新增日志数据,并将新增日志数据添加到消息队列中间件中;最后,日志管理服务器调用日志处理组件从消息队列中间件中获取待处理日志数据,待处理日志数据包括任意一个新增日志数据。其中,日志处理组件可以是运行于日志管理服务器中的一个组件,日志处理组件也可以是独立于日志管理服务器的一台计算机设备,本申请实施例对此不做具体限定。
具体实现时,可以由日志抓取组件负责监听日志新增事件,日志抓取组件例如可以为Filebeat组件,Filebeat组件负责监听需要被监控到的所有业务日志的新增事件,一旦监测到日志新增,就会将新增的日志数据进行抓取,并推送到消息队列中间件中,其中,消息队列中间件例如可以为Kafka队列。可见,在Filebeat组件监听日志新增事件的过程中,新增的日志数据不需要主动上报业务,而是通过Filebeat组件监听日志文件的变化,因此不会对业务造成干扰。同时,本申请实施例利用容器化技术,为业务侧定制了基于Filebeat组件的Docker镜像(容器镜像),开发人员只要基于该Docker镜像对业务服务进行业务镜像构建与部署,就可以实现待处理日志数据的抓取,无需关心待处理日志数据抓取过程中的具体配置。这样使得日志上报的门槛降低,开发人员可以更加专注于业务开发。
S302:若待处理日志数据与日志过滤规则匹配,则根据日志过滤规则对待处理日志数据进行解析处理,生成解析后的目标日志数据,日志过滤规则是通过日志管理界面配置的。
在一种可能的实现方式中,在日志管理服务器从消息队列中间件中获取到待处理日志数据之后,可以对待处理日志数据进行有效性校验,若日志管理服务器对待处理日志数据有效性校验通过,则可以确定待处理日志数据与日志过滤规则匹配。其中,日志管理服务器对待处理日志数据进行有效性校验的方式可以为:根据日志过滤规则中所包括的关键字段以及关键字段的字段类型,判断待处理日志数据中是否包括关键字段或者关键字段的字段类型,若包括,则可以确定对待处理日志数据的有效性校验通过;若不包括,则可以确定对待处理日志数据的有效性校验不通过。
进一步地,若待处理日志数据与日志过滤规则匹配,则确定待处理日志数据为有效的日志数据,并触发执行日志管理服务器根据日志过滤规则对待处理日志数据进行解析处理的步骤。若待处理日志数据与日志过滤规则不匹配,则确定待处理日志数据为无效的日志数据,则日志管理服务器可以忽略或者删除该无效的待处理日志数据。
在一种可能的实现方式中,若待处理日志数据与日志过滤规则匹配,则日志管理服务器可以调用日志处理组件(Logstash组件)根据日志过滤规则对待处理日志数据进行解析处理,生成解析后的目标日志数据。其中,解析后的目标日志数据可以显示于固定的模板中,固定的模板例如可以为表格。
进一步地,日志管理界面可以显示于终端设备中,用户可以基于终端设备所显示的日志管理界面配置得到日志过滤规则。然后,日志管理服务器可以接收来自终端设备发送的日志过滤规则。通过这种方式,对日志过滤规则配置,不需要用户手动编写配置文件,而是采用可视化方式配置,并自动生成日志过滤规则,因此可以提高对日志管理的效率。
S303:在日志搜索组件中将目标日志数据与日志过滤规则对应的目标索引进行关联存储。
具体实现时,在用户定义日志过滤规则并根据日志过滤规则生成解析后的目标日志数据后,日志管理服务器可以通过调用日志处理组件(Logstash组件)将目标日志数据发送至日志搜索组件(Elasticsearch组件),Elasticsearch组件在接收到Logstash传输过来的目标日志数据后,会对日志数据进行索引存储,即在Elasticsearch组件中可以创建与日志过滤规则对应的目标索引,并将目标日志数据与所创建的目标索引之间进行关联存储。后续,用户可以从Elasticsearch组件中检索到与目标索引关联的目标日志数据。
在一种可能的实现方式中,日志管理服务器获取日志过滤规则包括的日志属性信息;然后,日志管理服务器根据日志属性信息在日志搜索组件中创建日志过滤规则对应的目标索引,日志属性信息包括以下至少一种:关键字段、字段类型。例如,用户自定义的日志过滤规则中包括多个关键字段以及每个关键字段的字段类型,那么,可以将多个关键字段中的任一个或多个作为日志过滤规则的目标索引。当然,也可以将多个关键字段中的任一个或多个和对应字段的字段类型共同作为日志过滤规则的目标索引,本申请实施例对此不做具体限定。
在一种可能的实现方式中,日志管理服务器还可以基于预设的定时任务从日志搜索组件中获取目标时长内的目标日志数据;然后,日志管理服务器利用图表管理规则对应的预处理脚本对目标时长内的目标日志数据进行关键信息的提取处理,生成目标时长对应的预处理数据,目标时长对应的预处理数据用于生成图表数据;最后,日志管理服务器将目标时长对应的预处理数据添加到预处理数据表中。其中,预设的定时任务可以是用户预先设置的,也可以是日志管理服务器自动生成的,并且目标时长与预设的定时任务之间具有对应关系。例如,预设的定时任务可以为每间隔一分钟进行一次日志数据的获取,那么,所谓的目标时长可以为一分钟。
在一种可能的实现方式中,日志管理服务器接收终端设备发送的日志图表查看请求;然后,日志管理服务器可以响应日志图表查看请求,从预处理数据表中获取至少一个目标时长对应的预处理数据;接下来,日志管理服务器可以利用图表管理规则以及至少一个目标时长对应的预处理数据,生成目标日志图表的图表数据;最后,日志管理服务器向终端设备发送目标日志图表的图表数据。其中,日志管理服务器所获取得到的图表管理规则是通过用户在图表管理界面配置的,图表管理界面可以显示于终端设备中,用户可以基于终端设备所显示的图表管理界面配置得到图表管理规则。然后,日志管理服务器可以接收来自终端设备发送的图表管理规则。
具体实现时,用户在定义图表管理规则时可以指定需要过滤的日志数据,需要统计的指标、以及需要展示图表样式等。在用户定义图表管理规则后,日志管理服务器会智能生成预处理脚本,通过定时任务,定时向Elasticsearch组件查询相关日志的新增情况,并利用前述生成的预处理脚本对目标时长内获取得到的日志数据进行预处理。以此类推,日志管理服务器会为每个目标时长内获取到的日志数据生成一个对应的预处理数据,并将这些生成的预处理数据记录至预处理数据表中,预处理数据表可以存储于数据库中。后续,用户需要查询图表时,可以直接从数据库中读取需要查询的日志数据所对应的预处理数据,无需再对需要查询的日志数据进行实时的处理,从而可以提高图表处理的效率和性能。
通过本申请实施例,在监听到日志新增事件时,可以从消息队列中间件中获取待处理日志数据。在确定待处理日志数据与日志过滤规则匹配的情况下,可以根据日志过滤规则对待处理日志数据进行解析处理,从而得到解析后的目标日志数据。其中,日志过滤规则是通过日志管理界面配置的。另外,在日志搜索组件中可以将目标日志数据与日志过滤规则对应的目标索引进行关联存储。可见,本申请实施例可以基于日志过滤规则对新增的待处理日志数据进行解析处理,从而得到固定格式的目标日志数据,并且基于日志过滤规则可以创建相应的索引并关联存储。进一步地,由于日志过滤规则是通过日志管理界面配置得到的,无需用户了解日志过滤规则的相关语法,因此可以提高对日志管理的效率。进一步地,本申请实施例中的图表管理规则是通过图表管理界面配置得到的,通过预设的定时任务可以在固定时间段内对日志数据进行预处理操作,并存储得到的预处理数据,可以减少图表频繁刷新对日志管理服务器的性能损耗,并大大提高了图表显示效率。
基于以上描述,接下来结合附图分别对日志过滤规则和图表管理规则的配置进行详细说明。请参见图4,图4是本申请实施例提供的一种配置日志过滤规则的流程示意图。本申请实施例中,对日志过滤规则的配置可以由计算机设备执行,计算机设备可以为终端设备。如图4所示,该日志过滤规则的配置方法可包括步骤S401~S404:
S401:显示日志管理界面,日志管理界面包括至少一个日志配置项。
举例来说,请参见图5,图5是本申请实施例提供的一种日志管理界面的示意图。如图5所示的日志管理界面中可以包括多个日志功能,例如日志过滤配置功能50和日志查看功能51。当终端设备检测到针对日志过滤配置的触发事件时,可以显示日志管理界面,例如用户点击(如单击、双击或者长按等)图5所示的日志过滤配置功能50,即可确定检测到一个针对日志过滤配置的触发事件,并显示日志管理配置界面。图5所示的日志管理配置界面中可以包括多个日志配置项(501、502、503、504、505、506、507)。
S402:在日志管理界面中获取针对每个日志配置项所录入的日志配置数据。
举例来说,如图5所示的多个日志配置项中,用户可以自定义输入对应的日志配置数据,例如针对日志配置项501输入日志配置数据“time”;针对日志配置项502输入日志配置数据“空格”;针对日志配置项503输入日志配置数据“level”;日志配置项504输入日志配置数据“空格”;针对日志配置项505输入日志配置数据“file”;针对日志配置项506输入日志配置数据“冒号(:)”;针对日志配置项507输入日志配置数据“line”。
S403:根据获取得到的各个日志配置项对应的日志配置数据,生成日志过滤规则。
其中,根据用户在图5所示的各个日志配置项中输入的日志配置数据,可以生成对应的日志过滤规则。
S404:向日志管理服务器发送日志过滤规则,以使日志管理服务器在监听到日志新增事件时,根据日志过滤规则对待处理日志数据进行解析处理,生成解析后的目标日志数据。
如图5所示,待处理日志数据假设为:“2021-08-06 20:06:28.624DEBUG filters/reqlog.go:52from:9.215.31.40:41379”。日志管理界面中还可以包括日志解析控件52,若用户点击日志解析控件。则终端设备可以将日志过滤规则发送至日志管理服务器,以使日志管理服务器对待处理日志数据进行解析处理,得到固定格式的目标日志数据。其中,所谓的固定格式的目标日志数据可以按照表格的形式进行展示,如图5中表格53所示,该表格中可以显示通过用户在日志配置界面中所定义的日志过滤规则对待处理日志数据进行解析后得到的目标日志数据,例如至少一个字段以及每个字段对应的值。
综上所述,在对日志过滤规则的配置过程中,接下来请参见图6,图6是本申请实施例提供的一种创建日志过滤规则的交互流程示意图。其中,日志搜索组件(Elasticsearch组件)和日志处理组件(Logstash组件)可以是集成于日志管理服务器的组件,日志搜索组件和日志处理组件也可以是独立的设备,本申请实施例对此不做具体限定。如图6所示,该交互流程示意图可以包括步骤S61~S67:
S61:新增日志过滤提取。
S62:日志管理服务器获取用户输入的日志配置数据。
S63:日志管理服务器调用日志搜索组件创建日志过滤规则对应的目标索引。
S64:日志搜索组件完成索引创建。
S65:日志管理服务器生成过滤提取配置文件(可以包括多个日志配置数据),并向日志处理组件发送过滤提取配置文件。
S66:日志处理组件加载并执行日志过滤规则,生成日志过滤规则。
S67:日志管理服务器向终端设备发送创建成功后的日志过滤规则。
本申请实施例中,可以基于日志过滤规则对新增的待处理日志数据进行解析处理,从而得到固定格式的目标日志数据,并且基于日志过滤规则可以创建相应的索引并关联存储。进一步地,由于日志过滤规则是通过日志管理界面配置得到的,无需用户了解日志过滤规则的相关语法,因此可以提高对日志管理的效率。
接下来,请参见图7,图7是本申请实施例提供的一种配置图表管理规则的流程示意图。本申请实施例中,对图表管理规则的配置可以由计算机设备执行,计算机设备可以为终端设备。如图7所示,该日志过滤规则的配置方法可包括步骤S701~S703:
S701:显示图表管理界面,图表管理界面中显示有至少一个图表配置项。
举例来说,请参见图8,图8是本申请实施例提供的一种图表管理界面的示意图。如图8所示的图表管理界面中可以包括多个图表功能,例如图表配置功能80和图表查看功能81。当终端设备检测到针对图表配置的触发事件时,可以显示图表管理界面,例如用户点击(如单击、双击或者长按等)图8所示的图表配置功能80,即可确定检测到一个针对图表配置的触发事件,并显示图表管理配置界面。图8所示的图表管理配置界面中可以包括多个图表配置项,如图表名801、日志数据802、过滤条件803、统计指标804、图表类型805、时间间隔806等等。
S703:在图表管理界面中获取针对每个图表配置项所录入的图表配置数据。
举例来说,如图8所示的多个图表配置项中,用户可以自定义输入对应的图表配置数据,例如过滤条件803中输入图表配置数据“level等于INFO,ip等于127.0.01”,统计指标804中输入图表配置数据“累加量”、图表类型805中输入“折线图”,时间间隔806中输入图表配置数据“5分钟”。
S704:根据获取得到的各个图表配置项对应的图表配置数据,生成图表管理规则,以使日志管理服务器利用图表管理规则以及至少一个目标时长对应的预处理数据,生成目标日志图表的图表数据。
举例来说,如图8所示的图表管理界面中,用户在该图表管理界面中自定义图表管理规则之后,可以获取日志管理服务器发送的目标日志图表的图表数据,然后通过渲染组件对目标日志图表的图表数据的渲染处理,输出并显示目标日志图表82。
综上所述,在对图表管理规则的配置过程中,接下来请参见图9,图9是本申请实施例提供的一种创建图表管理规则的交互流程示意图。其中,日志搜索组件(Elasticsearch组件)可以是集成于日志管理服务器的组件,日志搜索组件也可以是独立的设备,本申请实施例对此不做具体限定。进一步地,如图6所示,该交互流程示意图中包括了:图表管理规则创建模块包括的步骤S901~S906,日志数据预处理模块包括的步骤S911~S915,以及图表查看模块包括的步骤S921~S925。接下来,分别对各个模块所包括的步骤进行相关说明:
一、图表管理规则的创建:
S901:用户自定义图表。
S902:日志管理服务器生成预处理脚本。
S903:日志管理服务器创建预处理数据表,并将所创建的预处理数据表存储于数据库中。
S904:数据库向日志管理服务器发送预处理数据表创建成功的指令。
S905:用户在日志管理服务器注册定时任务,其中,所谓的定时任务可以指定日志管理服务器在目标时长内监听并获取新增的日志数据。并且,定时任务可以是用户自定义设置,也可以是日志管理服务器系统设置,本申请实施例对此不做具体限定。例如,用户自定义设置的定时任务可以为:每间隔一分钟获取新增的日志数据,那么,定时任务所对应的目标时长即为一分钟。
S906:日志管理服务器向终端设备发送完成图表管理规则的创建的指令。
二、日志数据预处理:
S911:日志管理服务器调用日志搜索组件每间隔一分钟监听并获取相应的目标日志数据。
S912:日志搜索组件向日志管理服务器返回一分钟内的目标日志数据。
S913:日志管理服务器在获取到一分钟内的目标日志数据之后,可以执行前述所生成的预处理脚本对一分钟内的目标日志数据进行数据预处理,得到目标时长对应的预处理数据。其中,所谓的数据预处理可以包括对一分钟内的目标日志数据进行关键信息的提取处理,所谓的关键信息可以是指可以用于生成目标日志图表的图表数据。
S914:日志管理服务器将目标时长对应的预处理数据写入数据库中的预处理数据表中。即预处理数据表中存储有利用预处理脚本对每一分钟的目标日志数据进行预处理后的预处理数据。
S915:数据库向日志管理服务器返回预处理数据写入预处理数据表成功的指令。
三、日志图表查看:
S921:终端设备向日志管理服务器发送图表查看请求。其中,图表查看请求中可以指示用户需要查看目标时间范围内的预处理数据。
S922:日志管理服务器根据图表查看请求中所指示的目标时间范围,从数据库中获取目标时间范围内的预处理数据。例如,用户指定的目标时间范围可以为5分钟,那么,日志管理服务器可以从数据库中获取5分钟内的预处理数据。其中,在目标时长为1分钟的情况下,所谓的5分钟内的预处理数据是指五个目标时长对应的预处理数据。
S923:数据库向日志管理服务器发送五个目标时长对应的预处理数据。
S924:日志管理服务器利用图表管理规则以及五个目标时长对应的预处理数据进行数据聚合计算,从而生成目标日志图表的图表数据。
S925:日志管理服务器向终端设备发送目标日志图表的图表数据。后续,终端设备可以调用渲染组件对目标日志图表的图表数据进行图表渲染处理,从而展示目标日志图表。例如图8所示的图表82,可以是终端设备通过调用渲染组件对5分钟内的预处理数据进行图表渲染处理后得到的图表。
本申请实施例中,图表管理规则是通过图表管理界面配置得到的,通过预设的定时任务可以在固定时间段内对日志数据进行预处理操作,并存储得到的预处理数据,可以减少图表频繁刷新对日志管理服务器的性能损耗,并大大提高了图表显示效率。
请参见图10,图10是本申请实施例提供的一种数据处理装置的结构示意图。该数据处理装置1000可应用于前文对应的方法实施例中的计算机设备。数据处理装置1000可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该数据处理装置1000为一个应用软件;该装置可以用于执行本申请实施例提供的方法中的相应步骤。该数据处理装置1000可包括:
获取单元1001,用于在监听到日志新增事件时,从消息队列中间件中获取待处理日志数据;
处理单元1002,用于若待处理日志数据与日志过滤规则匹配,则根据日志过滤规则对待处理日志数据进行解析处理,生成解析后的目标日志数据,日志过滤规则是通过日志管理界面配置的;
存储单元1003,用于在日志搜索组件中将目标日志数据与日志过滤规则对应的目标索引进行关联存储。
在一种可能的实现方式中,处理单元1002还用于执行以下操作:
基于预设的定时任务从日志搜索组件中获取目标时长内的目标日志数据;
利用图表管理规则对应的预处理脚本对目标时长内的目标日志数据进行关键信息的提取处理,生成目标时长对应的预处理数据,目标时长对应的预处理数据用于生成图表数据;
将目标时长对应的预处理数据添加到预处理数据表中。
在一种可能的实现方式中,处理单元1002还用于执行以下操作:
接收终端设备发送的日志图表查看请求;
响应日志图表查看请求,从预处理数据表中获取至少一个目标时长对应的预处理数据;
利用图表管理规则以及至少一个所述目标时长对应的预处理数据,生成目标日志图表的图表数据;
向终端设备发送目标日志图表的图表数据。
在一种可能的实现方式中,处理单元1002还用于执行以下操作:
获取图表管理规则,图表管理规则是通过图表管理界面配置的;
生成图表管理规则对应的预处理脚本;
创建图表管理规则对应的预处理数据表。
在一种可能的实现方式中,获取单元1001在监听到日志新增事件时,从消息队列中间件中获取待处理日志数据,用于执行以下操作:
在监听到日志文件中存在新增日志数据时,确定监听到日志新增事件;
基于容器镜像获取新增日志数据,并将新增日志数据添加到消息队列中间件中;
调用日志处理组件从消息队列中间件中获取待处理日志数据,待处理日志数据包括任意一个新增日志数据。
在一种可能的实现方式中,处理单元1002还用于执行以下操作:
获取日志过滤规则包括的日志属性信息;
根据日志属性信息在日志搜索组件中创建所述日志过滤规则对应的目标索引,日志属性信息包括以下至少一种:关键字段、字段类型。
请参见图11,图11是本申请实施例提供的一种数据配置装置的结构示意图。该数据配置装置1100可应用于前文对应的方法实施例中的计算机设备。数据配置装置1100可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该数据配置装置1100为一个应用软件;该装置可以用于执行本申请实施例提供的方法中的相应步骤。该数据配置装置1100可包括:
显示单元1101,用于显示日志管理界面,日志管理界面包括至少一个日志配置项;
获取单元1102,用于在日志管理界面中获取针对每个日志配置项所录入的日志配置数据;
处理单元1103,用于根据获取得到的各个日志配置项对应的日志配置数据,生成日志过滤规则;
发送单元1104,用于向日志管理服务器发送日志过滤规则,以使日志管理服务器在监听到日志新增事件时,根据日志过滤规则对待处理日志数据进行解析处理,生成解析后的目标日志数据。
在一种可能的实现方式中,显示单元1101,还用于显示图表管理界面,图表管理界面中显示有至少一个图表配置项;
获取单元1102,还用于在图表管理界面中获取针对每个图表配置项所录入的图表配置数据;
处理单元1103,还用于根据获取得到的各个图表配置项对应的图表配置数据,生成图表管理规则,以使日志管理服务器利用图表管理规则以及至少一个目标时长对应的预处理数据,生成目标日志图表的图表数据。
请参见图12,图12是本申请实施例提供的一种计算机设备的结构示意图。该计算机设备1200用于执行前文对应的方法实施例中计算机设备所执行的步骤,该计算机设备1200包括:一个或多个处理器1210;一个或多个输入设备1220,一个或多个输出设备1230和存储器1240。上述处理器1210、输入设备1220、输出设备1230和存储器1240通过总线1250连接。存储器1240用于存储计算机程序,所述计算机程序包括程序指令,处理器1210用于调用存储器1240存储的程序指令,执行以下操作:
在监听到日志新增事件时,从消息队列中间件中获取待处理日志数据;
若待处理日志数据与日志过滤规则匹配,则根据日志过滤规则对待处理日志数据进行解析处理,生成解析后的目标日志数据,日志过滤规则是通过日志管理界面配置的;
在日志搜索组件中将目标日志数据与日志过滤规则对应的目标索引进行关联存储。
在一种可能的实现方式中,处理器1210还用于执行以下操作:
基于预设的定时任务从日志搜索组件中获取目标时长内的目标日志数据;
利用图表管理规则对应的预处理脚本对目标时长内的目标日志数据进行关键信息的提取处理,生成目标时长对应的预处理数据,目标时长对应的预处理数据用于生成图表数据;
将目标时长对应的预处理数据添加到预处理数据表中。
在一种可能的实现方式中,处理器1210还用于执行以下操作:
接收终端设备发送的日志图表查看请求;
响应日志图表查看请求,从预处理数据表中获取至少一个目标时长对应的预处理数据;
利用图表管理规则以及至少一个所述目标时长对应的预处理数据,生成目标日志图表的图表数据;
向终端设备发送目标日志图表的图表数据。
在一种可能的实现方式中,处理器1210还用于执行以下操作:
获取图表管理规则,图表管理规则是通过图表管理界面配置的;
生成图表管理规则对应的预处理脚本;
创建图表管理规则对应的预处理数据表。
在一种可能的实现方式中,处理器1210在监听到日志新增事件时,从消息队列中间件中获取待处理日志数据,用于执行以下操作:
在监听到日志文件中存在新增日志数据时,确定监听到日志新增事件;
基于容器镜像获取新增日志数据,并将新增日志数据添加到消息队列中间件中;
调用日志处理组件从消息队列中间件中获取待处理日志数据,待处理日志数据包括任意一个新增日志数据。
在一种可能的实现方式中,处理器1210还用于执行以下操作:
获取日志过滤规则包括的日志属性信息;
根据日志属性信息在日志搜索组件中创建所述日志过滤规则对应的目标索引,日志属性信息包括以下至少一种:关键字段、字段类型。
在一种可能的实现方式中,处理器1210用于调用存储器1240存储的程序指令,还用于执行以下操作:
显示日志管理界面,日志管理界面包括至少一个日志配置项;
在日志管理界面中获取针对每个日志配置项所录入的日志配置数据;
根据获取得到的各个日志配置项对应的日志配置数据,生成日志过滤规则;
向日志管理服务器发送日志过滤规则,以使日志管理服务器在监听到日志新增事件时,根据日志过滤规则对待处理日志数据进行解析处理,生成解析后的目标日志数据。
在一种可能的实现方式中,处理器1210还用于执行以下操作:
显示图表管理界面,图表管理界面中显示有至少一个图表配置项;
在图表管理界面中获取针对每个图表配置项所录入的图表配置数据;
根据获取得到的各个图表配置项对应的图表配置数据,生成图表管理规则,以使日志管理服务器利用图表管理规则以及至少一个目标时长对应的预处理数据,生成目标日志图表的图表数据。
通过本申请实施例,在监听到日志新增事件时,可以从消息队列中间件中获取待处理日志数据。在确定待处理日志数据与日志过滤规则匹配的情况下,可以根据日志过滤规则对待处理日志数据进行解析处理,从而得到解析后的目标日志数据。其中,日志过滤规则是通过日志管理界面配置的。另外,在日志搜索组件中可以将目标日志数据与日志过滤规则对应的目标索引进行关联存储。可见,本申请实施例可以基于日志过滤规则对新增的待处理日志数据进行解析处理,从而得到固定格式的目标日志数据,并且基于日志过滤规则可以创建相应的索引并关联存储。进一步地,由于日志过滤规则是通过日志管理界面配置得到的,无需用户了解日志过滤规则的相关语法,因此可以提高对日志管理的效率。
此外,这里需要指出的是:本申请实施例还提供了一种计算机存储介质,且计算机存储介质中存储有计算机程序,且该计算机程序包括程序指令,当处理器执行上述程序指令时,能够执行前文所对应实施例中的方法,因此,这里将不再进行赘述。对于本申请所涉及的计算机存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,程序指令可以被部署在一个计算机设备上,或者在位于一个地点的多个计算机设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算机设备上执行。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机程序,该计算机程序存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备可以执行前文所对应实施例中的方法,因此,这里将不再进行赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
- 数据仓库内数据处理方法、装置、计算机设备和存储介质
- 一种数据处理方法、数据处理装置、计算机设备及可读存储介质
- 数据处理方法、装置、计算机设备及计算机可读存储介质
- 财报数据处理方法、装置、计算机设备和存储介质
- 测试数据表的处理方法、装置、计算机设备和存储介质
- 用于在电信网络与电信终端设备之间传输参数数据且用于在电信终端设备上激活和/或改变和/或停用通过参数数据限定或表示的通信配置文件的方法、用于传输参数数据的系统、用于传输参数数据的电信终端设备、计算机程序以及计算机程序产品
- 基于配置管理系统的数据处理方法、装置和计算机设备