CN114493720A - 监控Kafka消费者的方法、装置、存储介质及设备 - Google Patents

监控Kafka消费者的方法、装置、存储介质及设备 Download PDF

Info

Publication number
CN114493720A
CN114493720A CN202210133462.5A CN202210133462A CN114493720A CN 114493720 A CN114493720 A CN 114493720A CN 202210133462 A CN202210133462 A CN 202210133462A CN 114493720 A CN114493720 A CN 114493720A
Authority
CN
China
Prior art keywords
consumer
consumption
time period
preset time
progress
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
CN202210133462.5A
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.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
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 China Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN202210133462.5A priority Critical patent/CN114493720A/zh
Publication of CN114493720A publication Critical patent/CN114493720A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data

Landscapes

  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Data Mining & Analysis (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Alarm Systems (AREA)

Abstract

本申请公开了一种监控Kafka消费者的方法、装置、存储介质及设备,对于消费者组中的每个消费者,调用预先配置的消费进度采集工具,按照预设时间周期定期采集消费者在集群所包含的各个消息分区中的指标数据;对每个预设时间周期内所采集的各个消费进度累加求和,得到总消费进度;根据总消费进度确定消费者的运行状态;基于消费者在各个预设时间周期内的总消费进度、运行状态和消费者在各个消息分区的消费进度,生成消费者的消费日志并存储到数据库中;综上所述,在运行状态为非正常运行时发出告警提示,可及时通知用户进行相应处理,缩短发现问题的时间,避免因为处理问题不及时而引发重要生产事件,实现对消费者组中每个消费者的有效监控。

Description

监控Kafka消费者的方法、装置、存储介质及设备
技术领域
本申请涉及监控技术领域,尤其涉及一种监控Kafka消费者的方法、装置、存储介质及设备。
背景技术
Kafka集群(本申请简称为集群)是企业存储数据较为常用的一种方式,对于集群来说,Kafka生产者(本申请简称为生产者)将自身的数据发送给集群中进行统一汇总和处理,Kafka消费者(本申请简称为消费者)从集群中读取数据进行分析处理。通过消费者的运行状态,可以感知集群是否正常运行。为此,监控消费者的运行状态成为本领域人员所关注的重点。
目前,现有监控消费者的运行状态的方式为:监控整体消费者组的运行状态。显然,现有的监控方式所监控的对象为整个消费者组,无法感知任意一个消费者个体的运行状态,较为局限,且对于消费者众多的集群使用场景而言,单纯利用消费者组的运行状态来判定集群是否正常运行,是较为不合理的。
发明内容
本申请提供了一种监控Kafka消费者的方法、装置、存储介质及设备,目的在于实现对消费者组中每个消费者的有效监控。
为了实现上述目的,本申请提供了以下技术方案:
一种监控Kafka消费者的方法,包括:
对于消费者组中的每个消费者,调用预先配置的消费进度采集工具,按照预设时间周期定期采集所述消费者在集群所包含的各个消息分区中的指标数据;其中,所述指标数据至少包括消费进度;
对于每个所述预设时间周期,对所述预设时间周期内所采集的各个所述消费进度进行累加求和,得到所述消费者在所述预设时间周期内的总消费进度;
根据所述总消费进度,确定所述消费者在所述预设时间周期内的运行状态;
基于所述消费者在各个所述预设时间周期内的所述总消费进度和所述运行状态,以及各个所述预设时间周期内所述消费者在各个所述消息分区的所述消费进度,生成所述消费者的消费日志,并将所有所述消费者的消费日志均存储到数据库中。
可选的,所述根据所述总消费进度,确定所述消费者在所述预设时间周期内的运行状态,包括:
在所述总消费进度小于等于第二预设阈值的情况下,确定所述消费者在所述预设时间周期内的运行状态为正常运行,将所述消费者的状态标识更新为第一标识。
可选的,所述根据所述总消费进度,确定所述消费者在所述预设时间周期内的运行状态,包括:
在所述总消费进度小于第一预设阈值、且大于第二预设阈值的情况下,确定所述消费者在所述预设时间周期内的运行状态为缓慢运行,将所述消费者的状态标识更新为第二标识,并向所述用户发送所述消费者消费速度下降的告警提示;其中,所述第二预设阈值小于所述第一预设阈值。
可选的,所述根据所述总消费进度,确定所述消费者在所述预设时间周期内的运行状态,包括:
在所述总消费进度大于等于第一预设阈值的情况下,确定所述消费者在所述预设时间周期内的运行状态为停止运行,将所述消费者的状态标识更新为第三标识,向所述用户发送所述消费者异常的告警提示。
可选的,还包括:
在接收到所述用户的日志查询指令的情况下,从所述数据库中获取与所述日志查询指令所示的消费者的消费日志,并通过预设前端界面向所述用户展示所述消费日志。
可选的,还包括:
对于每个所述消费者的消费日志,按照所述预设时间间隔定时统计所述消费日志中所包含的各条纪录的总数;所述纪录包括在同一所述预设时间周期内获得的总消费进度、运行状态、消费者在各个消息分区的消费进度;
在所述总数大于第三预设阈值的情况下,删除所述消费日志中满足预设条件的纪录,以使所述消费日志中所保留的各个纪录的总数等于所述第三预设阈值;所述预设条件为:位于纪录序列中前n位的纪录,n为正整数;所述纪录序列基于对所述消费日志中所包含的各个纪录进行排序得到。
可选的,所述基于对所述消费日志中所包含的各个纪录进行排序得到所述纪录序列,包括:
按照发生时间由早到晚的顺序,对所述消费日志中所包含的各个纪录进行排序,得到所述纪录序列。
一种监控Kafka消费者的装置,包括:
采集单元,用于对于消费者组中的每个消费者,调用预先配置的消费进度采集工具,按照预设时间周期定期采集所述消费者在集群所包含的各个消息分区中的指标数据;其中,所述指标数据至少包括消费进度;
求和单元,用于对于每个所述预设时间周期,对所述预设时间周期内所采集的各个所述消费进度进行累加求和,得到所述消费者在所述预设时间周期内的总消费进度;
确定单元,用于根据所述总消费进度,确定所述消费者在所述预设时间周期内的运行状态;
生成单元,用于基于所述消费者在各个所述预设时间周期内的所述总消费进度和所述运行状态,以及各个所述预设时间周期内所述消费者在各个所述消息分区的所述消费进度,生成所述消费者的消费日志,并将所有所述消费者的消费日志均存储到数据库中。
一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,所述程序执行所述的监控Kafka消费者的方法。
一种监控Kafka消费者的设备,包括:处理器、存储器和总线;所述处理器与所述存储器通过所述总线连接;
所述存储器用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行所述的监控Kafka消费者的方法。
本申请提供的技术方案,对于消费者组中的每个消费者,调用预先配置的消费进度采集工具,按照预设时间周期定期采集消费者在集群所包含的各个消息分区中的指标数据;对于每个预设时间周期,对预设时间周期内所采集的各个消费进度进行累加求和,得到消费者在预设时间周期内的总消费进度;根据总消费进度,确定消费者在预设时间周期内的运行状态;基于消费者在各个预设时间周期内的总消费进度和运行状态,以及各个预设时间周期内消费者在各个消息分区的消费进度,生成消费者的消费日志,并将所有消费者的消费日志均存储到数据库中。可见,本申请所示方案通过采集消费者在集群中每个消息分区的指标数据(即消费进度),将对各个消费进度进行累加求和得到总消费进度,基于总消费进度确定消费者的运行状态,并在运行状态为非正常运行(即缓慢运行、停止运行)时发出告警提示,通过告警提示可及时通知用户进行相应处理,缩短了发现问题的时间,避免因为处理问题不及时而引发重要生产事件,实现对消费者组中每个消费者的有效监控。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种监控Kafka消费者的方法的流程图;
图2为本申请实施例提供的另一种监控Kafka消费者的方法的流程图;
图3为本申请实施例提供的一种监控Kafka消费者的装置的架构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如图1所示,为本申请实施例提供的一种监控Kafka消费者的方法的流程图,包括:
S101:对于消费者组中的每个消费者,调用预先配置的消费进度采集工具,按照预设时间周期定期采集消费者在集群所包含的各个消息分区中的指标数据。
其中,预先配置的消费采集工具包括但不限于为:burrow工具。所谓的消息分区,是指将各个生产者生成消息分区进行存放。指标数据至少包括消费进度(consumer lag),所谓的消费进度,是指消费者消费速度相比于生产者生成消息的滞后程度。
具体的,假设集群中包含有第一消息分区、第二消息分区和第三消息分区,对于第一消息分区的每个消费者,调用预先配置的消息进度采集工具,按照预设时间周期定期采集消费者在第一消息分区中的指标数据;对于第二消息分区的每个消费者,调用预先配置的消费进度采集工具,按照预设时间周期定期采集消费者在第二消息分区中的指标数据;对于第三消息分区的每个消费者,调用预先配置的消费进度采集工具,按照预设时间周期采集消费者在第三消息分区中的指标数据。
需要说明的是,采集消费者在各个消息分区的消费进度,可以是同时采集,不存在先后顺序。
S102:对于每个预设时间周期,对预设时间周期内所采集的消费者在各个消息分区的消费进度进行累加求和,得到消费者在预设时间周期内的总消费进度。
其中,总消费进度,可以理解为消费者消费集群中所有消息的进度。
需要说明的是,对于集群中只存在一个消息分区的情况下,对于每个预设的时间周期,对一个消息分区中的不同分区的消费者进度进行累加求和,得到消费者在预设时间周期内的总消费进度。
具体的,假设集群包含有第一消息分区、第二消息分区和第三消息分区,消费者在第一消息分区的消费进度为第一消费进度,在第二消息分区的消费进度为第二消费进度,在第三消息分区的消费进度为第三消费进度。为此,将第一消费进度、第二消费进度和第三消费进度进行累加求和,得到消费者在预设时间周期内的总消费进度。
S103:根据消费者在预设时间周期内的总消费进度,确定消费者在预设时间周期内的运行状态。
其中,在总消费进度大于等于第一预设阈值的情况下,确定消费者的运行状态为停止运行;在总消费进度小于第一预设阈值、且大于第二预设阈值的情况下,确定消费者的运行状态为缓慢运行;在总消费进度小于等于第二预设阈值的情况下,确定消费者的运行状态为正常运行。
一般来讲,第二预设阈值小于第一预设阈值。此外,消费进度以及总消费进度各自的取值,通常均为非负数。
S104:当消费者的运行状态为正常运行时,则将消费者的状态标识更新为第一标识。
其中,第一标识的具体表现形式可以设为“ok”。
S105:当消费者的运行状态为缓慢运行时,则将消费者的状态标识更新为第二标识,并向用户发送消费者消费速度下降的告警提示。
其中,消费者的运行状态为缓慢运行,则代表消费者虽然正在工作(即消费集群中的消息),但消费者消费集群中的消息的速度,已经落后于集群中消息的生产速度。
另外,第二标识的具体表现形式可以设为“WARNING”。
S106:当消费者的运行状态为停止运行时,则将消费者的状态标识更新为第三标识,向用户发送消费者异常的告警提示。
其中,消费者的运行状态为停止运行,则代表消费已经停止消费集群中的消息,此时的消费者可能发生异常(例如因网络故障导致消费者离线),需要提示用户进行检查。
此外,第三标识的具体表现形式可以设为“ERROR”。
S107:基于消费者在各个预设时间周期内的总消费进度和运行状态,以及各个预设时间周期内消费者在各个消息分区的消费进度,生成消费者的消费日志,并将所有消费者的消费日志均存储到数据库中。
其中,对于任意一个消费者的消费日志而言,可以按照发生时间从早到晚的顺序,对消费日志中所包含的各条纪录(包括在同一预设时间周期内获得的总消费进度、运行状态、消费者在各个消息分区的消费进度)进行排序,得到纪录序列,以方便用户查阅。
具体的,假设消费者的消费日志包括第一纪录、第二纪录以及第三纪录,第一纪录、第二纪录以及第三纪录都在同一天发生,但是,第一纪录的发生时间为14:01,第二纪录的发生时间为14:05,第三纪录的发生时间为14:10。为此,按照发生时间由早到晚的顺序,对第一纪录、第二纪录以及第三纪录进行排序,得到纪录序列。在纪录序列中,第一纪录的序位高于第二纪录的序位,第二纪录的序位高于第三纪录的序位。
S108:在接收到用户的日志查询指令的情况下,从数据库中获取与日志查询指令所示的消费者的消费日志,并通过预设前端界面向用户展示消费日志。
S109:对于每个消费者的消费日志,按照预设时间间隔定时统计消费日志中所包含的各条纪录的总数。
S110:在总数大于第三预设阈值的情况下,删除消费日志中满足预设条件的纪录,以使消费日志中所保留的各个纪录的总数等于第三预设阈值。
其中,预设条件包括但不限于为:位于纪录序列中前n位的纪录,n为正整数。纪录序列基于对消费日志中所包含的各个纪录进行排序得到,可选的,可以按照发生时间由早到晚的顺序,对消费日志中所包含的各个纪录进行排序,得到纪录序列。
综上所述,本实施例所示的方案通过采集消费者在集群中每个消息分区的指标数据(即消费进度),将对各个消费进度进行累加求和得到总消费进度,基于总消费进度确定消费者的运行状态,并在运行状态为非正常运行(即缓慢运行、停止运行)时发出告警提示,通过告警提示可及时通知用户进行相应处理,缩短了发现问题的时间,避免因为处理问题不及时而引发重要生产事件,实现对消费者组中每个消费者的有效监控。
如图2所示,为本申请实施例提供的另一种监控Kafka消费者的方法的流程图,包括:
S201:对于消费者组中的每个消费者,调用预先配置的消费进度采集工具,按照预设时间周期定期采集消费者在集群所包含的各个消息分区中的指标数据。
其中,指标数据至少包括消费进度。
S202:对于每个预设时间周期,对预设时间周期内所采集的各个消费进度进行累加求和,得到消费者在预设时间周期内的总消费进度。
S203:根据总消费进度,确定消费者在预设时间周期内的运行状态。
S204:基于消费者在各个预设时间周期内的总消费进度和运行状态,以及各个预设时间周期内消费者在各个消息分区的消费进度,生成消费者的消费日志,并将所有消费者的消费日志均存储到数据库中。
综上所述,本实施例所示的方案通过采集消费者在集群中每个消息分区的指标数据(即消费进度),将对各个消费进度进行累加求和得到总消费进度,基于总消费进度确定消费者的运行状态,并在运行状态为非正常运行(即缓慢运行、停止运行)时发出告警提示,通过告警提示可及时通知用户进行相应处理,缩短了发现问题的时间,避免因为处理问题不及时而引发重要生产事件,实现对消费者组中每个消费者的有效监控。
如图3所示,为本申请实施例提供的一种监控Kafka消费者的装置的架构示意图,包括:
采集单元100,用于对于消费者组中的每个消费者,调用预先配置的消费进度采集工具,按照预设时间周期定期采集消费者在集群所包含的各个消息分区中的指标数据;其中,指标数据至少包括消费进度。
求和单元200,用于对于每个预设时间周期,对预设时间周期内所采集的各个消费进度进行累加求和,得到消费者在预设时间周期内的总消费进度。
确定单元300,用于根据总消费进度,确定消费者在预设时间周期内的运行状态。
确定单元300具体用于:在总消费进度小于等于第二预设阈值的情况下,确定消费者在预设时间周期内的运行状态为正常运行,将消费者的状态标识更新为第一标识。
确定单元300具体用于:在总消费进度小于第一预设阈值、且大于第二预设阈值的情况下,确定消费者在预设时间周期内的运行状态为缓慢运行,将消费者的状态标识更新为第二标识,并向用户发送消费者消费速度下降的告警提示;其中,第二预设阈值小于第一预设阈值。
确定单元300具体用于:在总消费进度大于等于第一预设阈值的情况下,确定消费者在预设时间周期内的运行状态为停止运行,将消费者的状态标识更新为第三标识,向用户发送消费者异常的告警提示。
生成单元400,用于基于消费者在各个预设时间周期内的总消费进度和运行状态,以及各个预设时间周期内消费者在各个消息分区的消费进度,生成消费者的消费日志,并将所有消费者的消费日志均存储到数据库中。
展示单元500,用于在接收到用户的日志查询指令的情况下,从数据库中获取与日志查询指令所示的消费者的消费日志,并通过预设前端界面向用户展示消费日志。
统计单元600,用于对于每个消费者的消费日志,按照预设时间间隔定时统计消费日志中所包含的各条纪录的总数;纪录包括在同一预设时间周期内获得的总消费进度、运行状态、消费者在各个消息分区的消费进度。
删除单元700,用于在总数大于第三预设阈值的情况下,删除消费日志中满足预设条件的纪录,以使消费日志中所保留的各个纪录的总数等于第三预设阈值;预设条件为:位于纪录序列中前n位的纪录,n为正整数;纪录序列基于对消费日志中所包含的各个纪录进行排序得到。
删除单元700具体用于:按照发生时间由早到晚的顺序,对消费日志中所包含的各个纪录进行排序,得到纪录序列。
综上所述,本实施例所示的方案通过采集消费者在集群中每个消息分区的指标数据(即消费进度),将对各个消费进度进行累加求和得到总消费进度,基于总消费进度确定消费者的运行状态,并在运行状态为非正常运行(即缓慢运行、停止运行)时发出告警提示,通过告警提示可及时通知用户进行相应处理,缩短了发现问题的时间,避免因为处理问题不及时而引发重要生产事件,实现对消费者组中每个消费者的有效监控。
本申请还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的程序,其中,程序执行上述本申请提供监控Kafka消费者的方法。
本申请还提供了一种监控Kafka消费者的设备,包括:处理器、存储器和总线。处理器与存储器通过总线连接,存储器用于存储程序,处理器用于运行程序,其中,程序运行时执行上述本申请提供监控Kafka消费者的方法,包括如下步骤:
对于消费者组中的每个消费者,调用预先配置的消费进度采集工具,按照预设时间周期定期采集所述消费者在集群所包含的各个消息分区中的指标数据;其中,所述指标数据至少包括消费进度;
对于每个所述预设时间周期,对所述预设时间周期内所采集的各个所述消费进度进行累加求和,得到所述消费者在所述预设时间周期内的总消费进度;
根据所述总消费进度,确定所述消费者在所述预设时间周期内的运行状态;
基于所述消费者在各个所述预设时间周期内的所述总消费进度和所述运行状态,以及各个所述预设时间周期内所述消费者在各个所述消息分区的所述消费进度,生成所述消费者的消费日志,并将所有所述消费者的消费日志均存储到数据库中。
可选的,所述根据所述总消费进度,确定所述消费者在所述预设时间周期内的运行状态,包括:
在所述总消费进度小于等于第二预设阈值的情况下,确定所述消费者在所述预设时间周期内的运行状态为正常运行,将所述消费者的状态标识更新为第一标识。
可选的,所述根据所述总消费进度,确定所述消费者在所述预设时间周期内的运行状态,包括:
在所述总消费进度小于第一预设阈值、且大于第二预设阈值的情况下,确定所述消费者在所述预设时间周期内的运行状态为缓慢运行,将所述消费者的状态标识更新为第二标识,并向所述用户发送所述消费者消费速度下降的告警提示;其中,所述第二预设阈值小于所述第一预设阈值。
可选的,所述根据所述总消费进度,确定所述消费者在所述预设时间周期内的运行状态,包括:
在所述总消费进度大于等于第一预设阈值的情况下,确定所述消费者在所述预设时间周期内的运行状态为停止运行,将所述消费者的状态标识更新为第三标识,向所述用户发送所述消费者异常的告警提示。
可选的,还包括:
在接收到所述用户的日志查询指令的情况下,从所述数据库中获取与所述日志查询指令所示的消费者的消费日志,并通过预设前端界面向所述用户展示所述消费日志。
可选的,还包括:
对于每个所述消费者的消费日志,按照所述预设时间间隔定时统计所述消费日志中所包含的各条纪录的总数;所述纪录包括在同一所述预设时间周期内获得的总消费进度、运行状态、消费者在各个消息分区的消费进度;
在所述总数大于第三预设阈值的情况下,删除所述消费日志中满足预设条件的纪录,以使所述消费日志中所保留的各个纪录的总数等于所述第三预设阈值;所述预设条件为:位于纪录序列中前n位的纪录,n为正整数;所述纪录序列基于对所述消费日志中所包含的各个纪录进行排序得到。
可选的,所述基于对所述消费日志中所包含的各个纪录进行排序得到所述纪录序列,包括:
按照发生时间由早到晚的顺序,对所述消费日志中所包含的各个纪录进行排序,得到所述纪录序列。
本申请实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种监控Kafka消费者的方法,其特征在于,包括:
对于消费者组中的每个消费者,调用预先配置的消费进度采集工具,按照预设时间周期定期采集所述消费者在集群所包含的各个消息分区中的指标数据;其中,所述指标数据至少包括消费进度;
对于每个所述预设时间周期,对所述预设时间周期内所采集的各个所述消费进度进行累加求和,得到所述消费者在所述预设时间周期内的总消费进度;
根据所述总消费进度,确定所述消费者在所述预设时间周期内的运行状态;
基于所述消费者在各个所述预设时间周期内的所述总消费进度和所述运行状态,以及各个所述预设时间周期内所述消费者在各个所述消息分区的所述消费进度,生成所述消费者的消费日志,并将所有所述消费者的消费日志均存储到数据库中。
2.根据权利要求1所述的方法,其特征在于,所述根据所述总消费进度,确定所述消费者在所述预设时间周期内的运行状态,包括:
在所述总消费进度小于等于第二预设阈值的情况下,确定所述消费者在所述预设时间周期内的运行状态为正常运行,将所述消费者的状态标识更新为第一标识。
3.根据权利要求1所述的方法,其特征在于,所述根据所述总消费进度,确定所述消费者在所述预设时间周期内的运行状态,包括:
在所述总消费进度小于第一预设阈值、且大于第二预设阈值的情况下,确定所述消费者在所述预设时间周期内的运行状态为缓慢运行,将所述消费者的状态标识更新为第二标识,并向所述用户发送所述消费者消费速度下降的告警提示;其中,所述第二预设阈值小于所述第一预设阈值。
4.根据权利要求1所述的方法,其特征在于,所述根据所述总消费进度,确定所述消费者在所述预设时间周期内的运行状态,包括:
在所述总消费进度大于等于第一预设阈值的情况下,确定所述消费者在所述预设时间周期内的运行状态为停止运行,将所述消费者的状态标识更新为第三标识,向所述用户发送所述消费者异常的告警提示。
5.根据权利要求1所述的方法,其特征在于,还包括:
在接收到所述用户的日志查询指令的情况下,从所述数据库中获取与所述日志查询指令所示的消费者的消费日志,并通过预设前端界面向所述用户展示所述消费日志。
6.根据权利要求1所述的方法,其特征在于,还包括:
对于每个所述消费者的消费日志,按照所述预设时间间隔定时统计所述消费日志中所包含的各条纪录的总数;所述纪录包括在同一所述预设时间周期内获得的总消费进度、运行状态、消费者在各个消息分区的消费进度;
在所述总数大于第三预设阈值的情况下,删除所述消费日志中满足预设条件的纪录,以使所述消费日志中所保留的各个纪录的总数等于所述第三预设阈值;所述预设条件为:位于纪录序列中前n位的纪录,n为正整数;所述纪录序列基于对所述消费日志中所包含的各个纪录进行排序得到。
7.根据权利要求6所述的方法,其特征在于,所述基于对所述消费日志中所包含的各个纪录进行排序得到所述纪录序列,包括:
按照发生时间由早到晚的顺序,对所述消费日志中所包含的各个纪录进行排序,得到所述纪录序列。
8.一种监控Kafka消费者的装置,其特征在于,包括:
采集单元,用于对于消费者组中的每个消费者,调用预先配置的消费进度采集工具,按照预设时间周期定期采集所述消费者在集群所包含的各个消息分区中的指标数据;其中,所述指标数据至少包括消费进度;
求和单元,用于对于每个所述预设时间周期,对所述预设时间周期内所采集的各个所述消费进度进行累加求和,得到所述消费者在所述预设时间周期内的总消费进度;
确定单元,用于根据所述总消费进度,确定所述消费者在所述预设时间周期内的运行状态;
生成单元,用于基于所述消费者在各个所述预设时间周期内的所述总消费进度和所述运行状态,以及各个所述预设时间周期内所述消费者在各个所述消息分区的所述消费进度,生成所述消费者的消费日志,并将所有所述消费者的消费日志均存储到数据库中。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的程序,其中,所述程序执行权利要求1-7任一所述的监控Kafka消费者的方法。
10.一种监控Kafka消费者的设备,其特征在于,包括:处理器、存储器和总线;所述处理器与所述存储器通过所述总线连接;
所述存储器用于存储程序,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1-7任一所述的监控Kafka消费者的方法。
CN202210133462.5A 2022-02-14 2022-02-14 监控Kafka消费者的方法、装置、存储介质及设备 Pending CN114493720A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210133462.5A CN114493720A (zh) 2022-02-14 2022-02-14 监控Kafka消费者的方法、装置、存储介质及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210133462.5A CN114493720A (zh) 2022-02-14 2022-02-14 监控Kafka消费者的方法、装置、存储介质及设备

Publications (1)

Publication Number Publication Date
CN114493720A true CN114493720A (zh) 2022-05-13

Family

ID=81480497

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210133462.5A Pending CN114493720A (zh) 2022-02-14 2022-02-14 监控Kafka消费者的方法、装置、存储介质及设备

Country Status (1)

Country Link
CN (1) CN114493720A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116132395A (zh) * 2022-11-15 2023-05-16 马上消费金融股份有限公司 消息处理方法、电子设备及计算机可读存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116132395A (zh) * 2022-11-15 2023-05-16 马上消费金融股份有限公司 消息处理方法、电子设备及计算机可读存储介质

Similar Documents

Publication Publication Date Title
CN110661659B (zh) 一种告警方法、装置、系统及电子设备
EP3425524A1 (en) Cloud platform-based client application data calculation method and device
CN108599977B (zh) 基于统计方法监控系统可用性的系统及方法
CN113297183B (zh) 一种时间窗口的告警分析方法及装置
CN109885453B (zh) 基于流数据处理的大数据平台监控系统
CN111679958A (zh) 一种服务器监控系统
CN111314158B (zh) 大数据平台监控方法、装置及设备、介质
CN108764596A (zh) 计量自动化系统的停电状态的监测方法和监测系统
CN111984495A (zh) 一种大数据监控方法、装置和存储介质
CN114356499A (zh) Kubernetes集群告警根因分析方法及装置
CN114201201A (zh) 一种对业务系统异常检测方法、装置及设备
CN110990245A (zh) 基于调用链数据的微服务运行状态判断方法及装置
CN114493720A (zh) 监控Kafka消费者的方法、装置、存储介质及设备
CN113448805A (zh) 基于cpu动态阈值的监控方法、装置、设备及存储介质
CN110677304A (zh) 一种分布式问题追踪系统及设备
CN111221890A (zh) 通用指标类自动监控预警方法及装置
CN108304293A (zh) 一种基于大数据技术的软件系统监控方法
CN110928663A (zh) 一种跨平台多线程监控方法及装置
JP2006331026A (ja) メッセージ分析システム及びメッセージ分析プログラム
CN113472881B (zh) 在线终端设备的统计方法和装置
CN112965793B (zh) 一种面向标识解析数据的数据仓库任务调度方法和系统
CN112527887A (zh) 一种应用于Gbase数据库的可视化运维方法及装置
CA3140769A1 (en) Method and system for positioning fault root cause of service system
CN109976967B (zh) 一种基于智能调度的缴费复机监测预警方法和系统
CN112308731A (zh) 一种采集系统多任务并发处理的云计算方法及系统

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