税务端系统日志实时分析方法、设备、介质及系统与流程

文档序号:20917765发布日期:2020-05-29 13:45阅读:327来源:国知局
税务端系统日志实时分析方法、设备、介质及系统与流程

本发明涉及数据处理领域,更具体地,涉及一种税务端系统日志实时分析方法、设备、介质及系统。



背景技术:

防伪税控系统税务局端在运行过程中会产生大量的日志,会记录每一个纳税人的每一个操作等日志数据,这些日志以文件的形式存储在本地。当发现问题后,开发人员或者运维人员在排查问题时,需要逐个排查每个文件,从中查找与问题相关的日志数据,有时需要统计一个纳税人识别号在某一个时间段内做了多少个操作,或者某个业务如主机分退票业务在某一时间段内一共被执行了多少次。有时这些日志数据是杂乱无序的,也可能并不在一个文件中,这就需要工作人员逐个排查日志文件去分析统计,花费了大量时间,严重影响了工作效率。

因此需要提出一种新的税务端日志分析方法,能够快速准确的获取到相关日志数据信息,从而快速定位系统问题、提高工作效率。



技术实现要素:

本发明的目的是提出一种税务端系统日志实时分析方法、设备、介质及系统,实现快速准确的获取到相关日志数据信息,从而快速定位系统问题、提高工作效率。

为实现上述目的,本发明提出了一种税务端系统日志实时分析方法,包括:

步骤1:对税务端系统业务操作产生的日志数据进行多线程分布式实时采集;

步骤2:将采集的所述日志数据缓存至消息队列集群中,同时将采集的所述日志数据作为原始日志数据进行分布式存储;

步骤3:提取所述消息队列集群中的所述日志数据并基于流计算工具对所述日志数据进行实时分析处理,同时将分析结果进行实时存储;

步骤4:提供操作界面,通过所述操作界面基于大数据计算引擎对所述原始日志数据进行查询、查询结果展示以及离线分析处理,或通过所述操作界面根据查询条件对实时存储的所述分析结果进行实时查询和查询结果展示。

可选地,所述步骤1包括:在税务端服务器上部署至少一个flume日志采集客户端,所述flume日志采集客户端基于配置文件对税务端系统进行多线程的日志数据采集。

可选地,所述步骤2包括:通过kafka消息队列集群对实时采集的所述日志数据进行缓存,同时将采集的所述日志数据存储至hadoop分布式文件系统中,作为原始日志数据进行持久化保持;

对所述kafka消息队列集群设置自动清理机制,以对过期的日志数据进行清理。

可选地,所述通过kafka消息队列集群对采集的所述日志数据进行缓存包括:通过所述kafka消息队列集群创建的分区以及与日志数据关联的消息类别对所述日志数据进行缓存。

可选地,所述步骤3包括:通过spark流实时计算程序拉取所述kafka消息队列集群中缓存的日志数据进行分析以获取每个业务操作的完整信息,并实时输出分析结果,同时将所述分析结果进行存储。

可选地,在所述步骤4中,所述基于大数据计算引擎对所述原始日志数据进行离线分析处理包括:通过所述操作界面利用spark计算引擎对所述原始日志数据进行离线分析处理。

本发明还提出一种电子设备,所述电子设备包括:

至少一个处理器;以及,

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的税务端系统日志实时分析方法。

本发明还提出一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行上述的税务端系统日志实时分析方法。

本发明还提出一种税务端系统日志实时分析系统,包括:

日志采集模块,用于多线程实时采集税务端系统每个业务操作的产生的日志数据;

日志缓存模块,用于将采集的所述日志数据缓存至消息队列集群中;

日志存储模块,用于将采集的所述日志数据作为原始日志数据进行分布式存储;

日志分析模块,用于提取所述消息队列集群中的所述日志数据并基于流计算工具对所述日志数据进行实时分析处理,同时将分析结果进行实时存储;

日志展示模块,用于提供操作界面,通过所述操作界面基于大数据计算引擎对所述原始日志数据进行查询、查询结果展示以及离线分析处理,或通过所述操作界面根据查询条件对实时存储的所述分析结果进行实时查询和查询结果展示。

可选地,所述日志采集模块包括至少一个flume日志采集客户端,所述flume日志采集客户端基于配置文件对税务端系统进行多线程的日志数据采集;

所述日志缓存模块包括kafka消息队列集群,所述kafka消息队列集群用于对实时采集的所述日志数据进行缓存;

所述日志存储模块包括hadoop分布式文件系统,所述hadoop分布式文件系统用于将采集的所述日志数据作为原始日志数据进行持久化的分布式存储;

所述日志分析模块包括spark流实时计算程序和spark计算引擎,其中,所述spark流实时计算程序用于拉取所述kafka消息队列集群中缓存的日志数据进行分析以获取每个业务操作的完整信息,并实时输出分析结果;所述spark计算引擎用于对所述原始日志数据进行离线分析处理。

本发明的有益效果在于:

通过多线程的目标日志读取,并将读取到的日志数据传输至消息队列集群进行日志数据的缓存,基于基于流计算工具对缓存的日志数据进行提取分析,实时输出日志分析结果并将分析结果进行存储,能够将每个业务的完整信息获取并存储;利用大数据计算引擎分析原始日志数据,以及根据不同的查询条件进行日志分析结果实时查询,能够准确快速的获取到相关信息,从而快速定位系统问题。

本发明的装置具有其它的特性和优点,这些特性和优点从并入本文中的附图和随后的具体实施方式中将是显而易见的,或者将在并入本文中的附图和随后的具体实施方式中进行详细陈述,这些附图和具体实施方式共同用于解释本发明的特定原理。

附图说明

通过结合附图对本发明示例性实施例进行更详细的描述,本发明的上述以及其它目的、特征和优势将变得更加明显,在本发明示例性实施例中,相同的参考标号通常代表相同部件。

图1示出了根据本发明的一种税务端系统日志实时分析方法的步骤图。

图2示出了根据本发明的一个实施例的一种税务端系统日志实时分析系统架构图。

具体实施方式

下面将参照附图更详细地描述本发明。虽然附图中显示了本发明的优选实施例,然而应该理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本发明更加透彻和完整,并且能够将本发明的范围完整地传达给本领域的技术人员。

图1示出了根据本发明的一种税务端系统日志实时分析方法的步骤图。

如图1所示,根据本发明的一种税务端系统日志实时分析方法,包括:

步骤1:对税务端系统业务操作产生的日志数据进行多线程分布式实时采集;

步骤2:将采集的日志数据缓存至消息队列集群中,同时将采集的日志数据作为原始日志数据进行分布式存储;

步骤3:提取消息队列集群中的日志数据并基于流计算工具对日志数据进行实时分析处理,同时将分析结果进行实时存储;

步骤4:提供操作界面,通过操作界面基于大数据计算引擎对原始日志数据进行查询、查询结果展示以及离线分析处理,或通过操作界面根据查询条件对实时存储的分析结果进行实时查询和查询结果展示。

具体地,通过多线程的目标日志读取,并将读取到的日志数据传输至消息队列集群进行日志数据的缓存,基于基于流计算工具对缓存的日志数据进行提取分析,实时输出日志分析结果并将分析结果进行存储,能够将每个业务的完整信息获取并存储;利用大数据计算引擎分析原始日志数据,以及根据不同的查询条件进行日志分析结果实时查询,能够准确快速的获取到相关信息,从而快速定位系统问题。

本实施例中,在税务端服务器上部署至少一个flume日志采集客户端,flume日志采集客户端基于配置文件对税务端系统进行多线程的日志数据采集。通过kafka消息队列集群对实时采集的日志数据进行缓存,同时将采集的日志数据存储至hadoop分布式文件系统中,作为原始日志数据进行持久化保持。其中,通过kafka消息队列集群创建的分区以及与日志数据关联的消息类别对日志数据进行缓存。并对kafka消息队列集群设置自动清理机制,以对过期的日志数据进行清理。

具体地,在税务端服务器上部署多个flume客户端,kafka集群等。通过配置flume配置文件,进行多线程的目标日志读取,并将读取到的日志数据传输至kafka集群,kafka集群通过创建的分区以及与日志数据关联的消息类别(topic)进行日志数据的缓存;并配置了kafka自动清理机制,清理过期的日志数据。在日志存储模块中,日志数据被持久化存储到hadoop分布式文件系统(hdfs)中,并且设置hdfs存储的日志是原始日志信息。

本实施例中,步骤3包括:通过spark流实时计算程序拉取kafka消息队列集群中缓存的日志数据进行分析以获取每个业务操作的完整信息,并实时输出分析结果,同时将分析结果进行存储。

具体地,日志数据被传输至kafka消息队列中,通过spark流(sparkstreaming)实时计算程序拉取kafka中日志信息进行分析处理,实时输出日志处理信息,并将处理结果进行存储。

本实施例中,在步骤4中,基于大数据计算引擎对原始日志数据进行离线分析处理包括:通过操作界面利用spark计算引擎对原始日志数据进行离线分析处理。

具体地,在日志展示模块中,可以利用spark对这些原始数据进行离线分析处理,得到工作人员想要得到的相关结果,同时支持工作人员实时的根据不同条件进行查询数据,并通过不同的展示方法将结果展示给工作人员。

本发明实施例还提出一种电子设备,电子设备包括:

至少一个处理器;以及,

与至少一个处理器通信连接的存储器;其中,

存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述的税务端系统日志实时分析方法。

本发明实施例还提出一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行上述的税务端系统日志实时分析方法。

图2示出了根据本发明的一个实施例的一种税务端系统日志实时分析系统架构图。

如图2所示,本发明实施例还提出一种税务端系统日志实时分析系统,包括:

日志采集模块,用于多线程实时采集税务端系统每个业务操作的产生的日志数据;

日志缓存模块,用于将采集的日志数据缓存至消息队列集群中;

日志存储模块,用于将采集的日志数据作为原始日志数据进行分布式存储;

日志分析模块,用于提取消息队列集群中的日志数据并基于流计算工具对日志数据进行实时分析处理,同时将分析结果进行实时存储;

日志展示模块,用于提供操作界面,通过操作界面基于大数据计算引擎对原始日志数据进行查询、查询结果展示以及离线分析处理,或通过操作界面根据查询条件对实时存储的分析结果进行实时查询和查询结果展示。

本实施例中,日志采集模块包括至少一个flume日志采集客户端,flume日志采集客户端基于配置文件对税务端系统进行多线程的日志数据采集;

日志缓存模块包括kafka消息队列集群,kafka消息队列集群用于对实时采集的日志数据进行缓存;

日志存储模块包括hadoop分布式文件系统,hadoop分布式文件系统用于将采集的日志数据作为原始日志数据进行持久化的分布式存储;

日志分析模块包括spark流实时计算程序和spark计算引擎,其中,spark流实时计算程序用于拉取kafka消息队列集群中缓存的日志数据进行分析以获取每个业务操作的完整信息,并实时输出分析结果;spark计算引擎用于对原始日志数据进行离线分析处理。

具体地,flume是一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。

kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中所有动作流数据。kafka的目的是通过hadoop并行加载机制统一线上和离线消息处理,并通过集群提供实时消息。kafka架构包括:类别(topic)、分区(partition)、消息生产者(producer)、消息消费者(consumer);通常,一个普通的工作流程是kafka的producer向topic写入消息,consumer从topic中读取消息。topic与日志相关联,日志是存储在系统磁盘上的数据结构,kafka将producer的记录附加到topic日志的末尾。topic日志由分布在多个文件上的许多分区组成,这些文件可以分布在多个kafka集群节点上。kafka在集群的不同节点上分发topic日志分区,以实现具有水平可伸缩性的高性能。spreading分区有助于快速写入数据,kafka将分区复制到许多节点以提供故障转移。

spark是专为大规模数据处理而设计的快速通用的计算引擎,sparkstreaming为构建在spark上处理流数据的框架,基本的原理是将流数据分成小的时间片段(几秒),以类似batch批量处理的方式来处理这小部分数据,是对于spark核心api的拓展,从而支持对于实时数据流的可拓展,高吞吐量和容错性流处理。

同时系统还需配套使用分布式应用程序协调服务组件(zookeeper),zookeeper是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

flume、kafka、spark和zookeeper均为现有技术,此处不再赘述。

综上,本发明利用大数据技术,通过实时分析日志,获取每一个业务相关的全部日志信息,并可以按照不同条件进行过滤、存储;利用spark分析历史数据,根据不同的查询条件进行查询,如某一个纳税人在时间范围内执行纸质发票申领等业务的总次数等信息;还可以通过页面展示给开发人员或运维人员。不仅能够使运维人员可以及时定位到系统问题,也能够在发生异常时,及时做出相关措施。很大程度上节约了工作人员的时间和精力,提高了企业的工作效率。

以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1