CN106100902A - 云端指标监控方法和装置 - Google Patents

云端指标监控方法和装置 Download PDF

Info

Publication number
CN106100902A
CN106100902A CN201610635745.4A CN201610635745A CN106100902A CN 106100902 A CN106100902 A CN 106100902A CN 201610635745 A CN201610635745 A CN 201610635745A CN 106100902 A CN106100902 A CN 106100902A
Authority
CN
China
Prior art keywords
monitoring data
user
monitoring
defined counter
clouds
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.)
Granted
Application number
CN201610635745.4A
Other languages
English (en)
Other versions
CN106100902B (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201610635745.4A priority Critical patent/CN106100902B/zh
Publication of CN106100902A publication Critical patent/CN106100902A/zh
Application granted granted Critical
Publication of CN106100902B publication Critical patent/CN106100902B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种云端指标监控方法和装置,所述方法包括:接收第一终端上报的自定义指标对应的监控数据;读取所述自定义指标对应的统计方式和告警规则;根据所述统计方式对所述监控数据进行统计,得到统计后的监控数据;当所述统计后的监控数据符合所述告警规则时,生成告警信息,并将所述告警信息发送至第二终端。采用本方法能够对用户自定义指标进行监控,由此方便用户及时了解自定义指标的运行状况。

Description

云端指标监控方法和装置
技术领域
本发明涉及云计算技术领域,特别是涉及一种云端指标监控方法和装置。
背景技术
随着计算机技术与互联网技术的发展,近年来云计算也得到了迅猛发展,涌现出了多种云产品,例如,云服务器和云数据库等。通过云监控可以及时了解云产品的状况和性能。在传统的云监控方式中,只是对一些常见的通用指标进行监控,例如,对CPU(CentralProcessing Unit,中央处理器)使用率、内存使用率以及磁盘读写速率等进行监控。但是用户不能根据自己的业务需求来自定义指标,从而导致用户所关注的指标无法进行监控,给用户带来不便。
发明内容
基于此,有必要针对上述技术问题,提供一种能够方便用户进行自定义指标进行监控的云端指标监控方法和装置。
一种云端指标监控方法,所述方法包括:
接收第一终端上报的自定义指标对应的监控数据;
读取所述自定义指标对应的统计方式和告警规则;
根据所述统计方式对所述监控数据进行统计,得到统计后的监控数据;
当所述统计后的监控数据符合所述告警规则时,生成告警信息,并将所述告警信息发送至第二终端。
一种云端指标监控装置,所述装置包括:
接收模块,用于接收第一终端上报的自定义指标对应的监控数据;
获取模块,用于读取所述自定义指标对应的统计方式和告警规则;
统计模块,用于根据所述统计方式对所述监控数据进行统计,得到统计后的监控数据;
告警模块,用于当所述统计后的监控数据符合所述告警规则时,生成告警信息;
发送模块,用于将所述告警信息发送至第二终端。
上述云端指标监控方法和装置,通过第一终端上报自定义指标对应的监控数据。读取自定义指标对应的统计方式和告警规则,从而根据该统计方式对监控数据进行统计,得到统计后的监控数据。当统计后的监控数据符合告警规则时,则触发告警规则生效,生成相应的告警信息,并且将告警信息发送至第二终端。由于自定义指标数用户根据自己的业务需要设定的,通过对自定指标对应的监控数据进行统计,对于符合告警规则的就进行相应的告警,由此能够对用户关注的自定义指标进行有效监控,为用户及时了解自定义指标的运行状况提供了方便。
附图说明
图1为一个实施例中云端指标监控方法的应用环境图;
图2为图1中云端的结构示意图;
图3为一个实施例中云端指标监控方法的流程图;
图4为一个实施例中新增配置项的配置页面示意图;
图5为一个实施例中自定义指标的统计结果示意图;
图6为一个实施例中云端指标监控装置的结构示意图;
图7为又一个实施例中云端指标监控装置的结构示意图;
图8为再一个实施例中云端指标监控装置的结构示意图;
图9为另一个实施例中云端指标监控装置的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
可以理解,本发明所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本发明的范围的情况下,可以将第一客户端称为第二客户端,且类似地,可将第二客户端称为第一客户端。第一客户端和第二客户端两者都是客户端,但其不是同一客户端。
本发明实施例中提供的云端指标监控方法可以应用于如图1所示的应用环境中。第一终端102通过网络与云端104连接。第二终端106通过网络与云端104连接。用户通过第一终端102访问云端104,云端104向第一终端102返回配置页面。用户通过第一终端102在配置页面中创建自定义指标的配置项,并且为自定义指标创建对应的告警规则。第一终端102上安装了自定义指标的采集程序。第一终端102通过采集程序来采集自定义指标对应的监控数据,通过云API(Application Programming Interface,应用程序编程接口)将监控数据上报至云端104。云端104接收第一终端102上报的自定义指标对应的监控数据,读取自定义指标对应的统计方式和告警规则。云端104根据统计方式对监控数据进行统计,得到统计后的监控数据。当统计后的监控数据符合告警规则时,云端104生成告警信息,并将告警信息发送至第二终端106。其中,第一终端102可以是服务器,第二终端106可以是台式电脑、个人笔记本、平板电脑或者手机等。通过云端对用户自定义指标进行监控,由此能够方便用户及时了解自定义指标的运行状况。
图2为一个实施例中云端的内部结构示意图。该云端包括通过系统总线连接的处理器、非易失性存储介质、内存储器和网络接口。其中,该云端的非易失性存储介质存储有操作系统、数据库和云端指标监控装置,数据库中存储有自定义指标配置项、告警规则和自定义指标监控配置文件等,该云端指标监控装置用于实现适用于云端的一种云端指标监控方法。该云端的处理器用于提供计算和控制能力,支撑整个服务器的运行。该云端的内存储器为非易失性存储介质中的云端指标监控装置的运行提供环境,该内存储器中可储存有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种云端指标监控方法。该云端的网络接口用于据以与外部的终端通过网络连接通信,比如接收第一终端上传的以及向第二终端发送告警信息等。云端可以用独立的服务器或者是多个服务器组成的服务器集群来实现。本领域技术人员可以理解,图2中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,如图3所示,提供了一种云端指标监控方法,以该方法应用于云端为例进行说明,具体包括:
步骤302,接收第一终端上报的自定义指标对应的监控数据。
用户通过第一终端访问云端,云端向第一终端返回配置页面。云端运行了用户的应用程序,用户可以根据自己的业务需要通过第一终端在配置页面中创建自定义指标的配置项。自定义指标是指出除了通用指标之外的,用户根据自己的业务需求来设定的指标。例如,用户可以监控某个进程的CPU占用率,或者监控某个日志文件的大小等。通过对自定义指标的监控来及时了解应用程序的运行状况。例如,应用程序为互联网游戏,当处于游戏高峰期期时,会有大量玩家访问该应用程序。通过对业务服务器进程等自定义指标进行监控,可以及时了解应用程序的运行状况,一旦发现异常可以及时处理。
自定义指标的配置项包括自定义命名空间、自定义指标、维度、统计方式和统计周期等。自定义命名空间是自定义指标的容器,不同自定义命名空间中的自定义指标彼此独立。来自不同应用程序的自定义指标可以避免被错误的聚合到相同的统计结果中。自定义监控允许自定义命名空间分地域存储。例如,proc_monitor,表示广州地域A进程监控。自定义指标是自定义监控的变量,该变量随时间的变化值可以用数据点来表示。维度是对监控对象进行唯一标识的结构。自定义指标在确定维度值之后才有意义。例如,维度为接入机IP(Internet Protocol,网络之间互连的协议)、进程名proc_name,在这两个维度确定之后,即可确定一个监控对象,即监控对象(IP=1.1.1.1&proname=test),该监控对象对应的接入机IP地址为1.1.1.1,进程名为test。
统计方式是自定义指标对应的监控数据的计算方式,包括max(取最大值)、min(取最小值)、sum(求和)、avg(取平均)和last(取统计周期内最后一个监控数据)等。统计周期是计算指监控数据的时间,例如,统计周期为:1天、1小时、5分钟或1分钟等。
自定义的配置项举例如下:命名空间:proc_monitor(进程监控);指标:proc_cpu(进程级CPU使用率);维度:proc_name(进程名)、ip(接入机IP地址);统计方法:取统计周期内上报的所有监控数据的最大值;统计周期:5分钟。
云端接收第一终端上传的自定义指标的配置请求,配置请求中携带了自定义命名空间、自定义指标、维度和统计方式,云端根据该配置请求通过自定义命名空间、自定义指标、维度和统计方式等完成自定义配置项的创建。如图4所示,为新增配置项的配置页面。用户通过第一终端在该配置页面中可以输入自定义命名空间、维度、自定义指标、指标中文名称和单位,点击“确定”按钮后,云端可以完成自定义配置项的创建。
云端还可以接收第一终端上传的告警规则的创建请求,根据创建请求对自定义指标创建对应的告警规则。例如,告警规则可以是对CPU使用率超过80%并且持续2个统计周期以上的进程和接入机IP地址进行告警。告警规则创建之后,云端生成告警规则标识,通过云API向第一终端返回相应的告警规则标识。
云端接收第一终端发送的告警规则与监控对象的绑定请求,绑定请求中携带了一个或多个告警规则标识、监控对象和告警接收组,云端监控平台根据绑定请求将一个或多个告警规则标识与监控对象以及告警接收组进行绑定。通过绑定告警接收组可以将告警信息发送给接收告警信息的人。多个告警规则之间是或的关系,监控对象满足任意一条被绑定的告警规则,云端都会触发告警规则生效,生成告警信息。
第一终端上安装了自定义指标的采集程序。该采集程序可以是用户根据自己的业务需求来设计的。不同的用户可以设计不同的采集程序。第一终端通过采集程序来采集自定义指标对应的监控数据,通过云API将监控数据上报至云端。云端通过接入机来接收第一终端上报的监控数据。接入机可以部署在多个地域,接入机上运行了自定义监控组件。通过多个地域的接收机可以接收多个地域上报的监控数据。通过自定义监控组件对接收到的监控数据进行校验,以此确保监控数据的准确性。
步骤304,读取自定义指标对应的统计方式和告警规则。
云端在创建自定义配置项与告警规则后,将自定义配置项与告警规则存储在数据库中。数据库可以兼容MySQL(一种关系型数据库)协议的数据库。例如,数据库可以是云数据库(Cloud Database,简称CDB)。云端在接收到自定义指标对应的监控数据之后,会根据第一终端的应用标识在数据库中获取自定义配置项和告警规则。
步骤306,根据统计方式对监控数据进行统计,得到统计后的监控数据。
云端通过自定义监控组件获取第一终端对应的应用标识,根据应用标识和自定义指标监控配置文件来选择路由,并将路由映射到对应的拓扑。根据拓扑将监控数据发送至第一缓存。自定义指标监控配置文件可以云端对自定指标进行监控的配置文件,其内容可以是云端后来设定的。第一缓存可以采用分布式集群,例如,kafka(一种高吞吐量的分布式发布订阅消息系统)集群。
云端运行了分布式实时计算系统。例如,分布式实时计算系统为storm。通过分布式实时计算系统根据自定义指标对应的统计方式对监控数据进行统计。具体的,云端分布式实时计算系统读取第一缓存中的监控数据。分布式实时计算系统按照设定的频率从数据库中读取告警规则,并且将告警规则的路由确定为与监控数据的路由一致。由此确保自定义指标对应的监控数据与告警规则相匹配。其中,告警规则和自定义指标监控配置文件可以按照设定的频率同步到第二缓存。第二缓存可以是海量分布式存储系统,例如,第二缓存为CKV(一种分布式数据库)。
步骤308,当统计后的监控数据达告警条件时,生成告警信息,并将告警信息发送至第二终端。
云端通过分布式实时计算系统根据统计方式对监控数据进行统计,得到统计后的监控数据,即统计结果。当统计后的监控数据符合告警规则,则触发告警规则生效,生成告警信息。告警信息可以邮件、社交网络信息或短信等多种形式。云端获取已绑定的告警接收组,根据告警接收组将告警信息发送至第二终端。
例如,自定义指标为进程级CPU使用率,统计方式为取统计周期内所有监控数据的最大值,统计周期为5分钟。告警规则为对CPU使用率超过80%并且持续2个统计周期的以上的进程进行告警。分布式实时计算系统计算5分钟内进程级CPU使用率的最大值。若统计后的监控数据符合告警规则,则触发告警规则生效,生成相应的告警信息。云端根据告警接收组将告警信息发送至第二终端。
在传统的指标监控方式中,监控指标的告警规则是通过告警模型来配置的。其中,告警模型中包括了告警策略组、告警策略和告警规则。监控指标需要被配置告警策略组,然后被配置相应的告警策略,最后被配置告警规则。一个监控对象只能被配置一个告警策略组,而一个告警策略组中只有一条告警策略,一个告警策略下只有一条告警规则。也就是说,在传统的指标监控方式中,一个监控指标只能配置一条告警规则,而且告警规则的配置方式较为复杂。
本实施例中,自定义指标可以直接被配置相应的告警规则。无需通过告警策略组和告警策略才能配置告警规则,告警模型得以简化。并且一个自定义指标可以被配置多条告警规则,多条告警规则之间是或的关系。从而使得告警规则的配置方式更加灵活。监控对象满足任意一条被绑定的告警规则,云端都会触发告警规则生效,生成告警信息。从而进一步为用户进行自定义监控提供了方便。
在传统的指标监控方式中,所有地域智能采用同一套告警配置,但实际上用户有时会需要对不同地域的监控对象配置不同的告警规则。本实施例中,不同地域的监控对象可以被配置不同的告警规则,不同地域的监控对象被配置的告警规则可以分开存储。不同地域的监控对象还可以被配置多条告警规则,多条告警规则之间是或的关系。监控对象满足任意一条被绑定的告警规则,云端都会触发告警规则生效,生成告警信息。由此为用户对不同地域的监控对象进行监控提供了方便。
本实施例中,通过第一终端上报自定义指标对应的监控数据。读取自定义指标对应的统计方式和告警规则,从而根据该统计方式对监控数据进行统计,得到统计后的监控数据。当统计后的监控数据符合告警规则时,则触发告警规则生效,生成相应的告警信息,并且将告警信息发送至第二终端。由于自定义指标数用户根据自己的业务需要设定的,通过对自定指标对应的监控数据进行统计,对于符合告警规则的就进行相应的告警,由此能够对用户关注的自定义指标进行有效监控,为用户及时了解自定义指标的运行状况提供了方便。
进一步的,第一终端通过访问云端,可以随时查看自定义指标的统计结果。如图5所示,为自定义指标进程级CPU平均负载在30分钟内的曲线。
在一个实施例中,在接收终端上报的自定义指标对应的监控数据的步骤之后,还包括:对监控数据进行校验;获取第一终端访问请求中携带的签名串,对签名串进行验证;若监控数据通过校验并且签名串通过验证,则生成上报成功的提示信息,并将上报成功的提示信息返回至第一终端。
本实施例中,为了确保监控数据的合法性和有效性,云端在接收到第一终端上传的监控数据之后,需要对监控数据进行校验以及对调用云API上传监控数据的使用者进行身份验证。
云端获取自定义指标被配置的上报格式,判断监控数据是否符合该上报格式,若是,则确定监控数据是合法的。其中,自定义指标被配置的上报格式可以根据自定义指标的配置项来确定。上报格式包括自定义命名空间、自定义指标、维度、统计方式和统计周期等内容。
由于自定义指标在确定维度值之后才有意义,因此云端还会对监控数据的维度进行强一致性验证。具体的,云端获取自定义指标被配置的维度和维度值,判断监控数据中携带的维度和维度值是否与自定义指标被配置的维度和维度值是否一致,若一致,则确定监控数据的维度强一致。从而确保监控数据的有效性。
第一终端通过云API上报自定义指标对应的监控数据时,云API对第一终端的访问请求会进行身份验证。访问请求中的请求参数中包含了签名信息,通过对前面信息进行验证以此来验证请求者的身份。签名信息由安全凭证生成,安全凭证包括SecretId和SecretKey。其中,SecretId用于标识API调用者身份,SecretKey用于加密签名字符串和服务器端验证签名字符串的密钥。通过SecretId和SecretKey生成签名串。具体的,对所有请求参数按照参数名进行排序,将排序后的请求参数进行格式化,格式化的形式可以是“参数名称”=“参数值”,将格式化后的多个请求参数进行拼接,生请求字符串。利用请求字符串生成签名原文字符串,通过签名原文字符串进行签名生成签名串。其中,对参数名进行排序可以采用字典序升序排列的方式。字典序升序排列如同在字典中排列单词一样排序,按照字母表或数字表里递增顺序的排列次序,即先考虑第一个“字母”,在相同的情况下考虑第二个“字母”,依此类推。格式化后的多个请求参数进行拼接时可以采用预设字符或字符串进行连接,例如,采用“&”进行连接。对签名原文字符串进行签名时,可以采用HMAC-SHA1(从SHA1哈希函数构造的一种键控哈希算法)算法对签名原文字符串进行签,然后将生成的签名串使用Base64(一种编码方法)进行编码,从而获得最终的签名串。
云端通过云API中的云安全鉴权接口对签名串进行验证,若验证成功,则获得用户的应用标识。若验证失败,则丢弃自定义指标对应的监控数据。由此确保了监控数据的有效性。
上述校验通过后,云端生成上报成功的提示信息,并将上报成功的提示信息返回至第一终端。进一步的,云端可以按照在统计周期对监控数据进行验证和签名串进行验证。上述校验中若有至少一项未通过,则云端生成上报失败的提示信息,并将上报失败的提示信息返回至第一终端。通过向第一终端返回上报成功的提示信息或上报失败的提示信息,能够方便用户及时了解自定义指标对应的监控数据是否上报成功。
在一个实施例中,在根据统计方式对监控数据进行统计的步骤之前,还包括:获取第一终端对应的应用标识;读取自定义指标监控配置文件;根据应用标识和自定义指标监控配置文件选择监控数据对应的路由,并将路由映射到对应的拓扑。
本实施例中,数据库中存储了自定义监控组件所需的多个自定义指标监控配置文件。由于多个自定义指标监控配置文件会被频繁拉取,如果直接从数据库中读取自定义指标监控配置文件,很容易导致数据库出现性能瓶颈。为了有效避免数据库出现性能瓶颈,云端通过同步脚本从数据库中读取多个自定义指标监控配置文件,将多个自定义指标监控配置文件同步到第二缓存。进一步的,云端可以按照设定的频率将多个自定义指标监控配置文件进行同步,例如,设定的频率为每分钟一次。因此,云端在对自定义指标对应的监控数据进行统计时,可以从第二缓存中拉取多个自定义指标监控配置文件,从而有效避免了数据库出现性能瓶颈的问题。
本实施例中,云端对调用云API上传自定义指标对应的监控数据的使用者的身份进行验证之后,可以得到用户的应用标识,即第一终端对应的应用标识。云端从第二缓存中拉取多个自定义指标监控配置文件,遍历多个自定义指标监控配置文件,获取应用标识的范围以及该范围对应的路由,判断第一终端对应的应用标识是否落入该应用标识的范围,若是,则确定该监控数据对应的路由,并将该路由映射到对应的拓扑,从而通过拓扑将监控数据进行转发至第一缓存。通过根据应用标识确定的路由映射到对应的拓扑,有利于后续集群扩容,以及平滑扩容。进一步的,云端遍历多个自定义指标监控配置文件之后,如果第一终端对应的应用标识落入多个应用标识的范围,云端可以为监控数据确定多个路由,并将多个路由分别映射到对应的拓扑。由此可以将监控数据进行多路转发。由于监控数据可以进行多路转发,若一个路由出现故障时,监控数据依然能通过其他路由进行转发,从而有效提高了云端的容灾性。
在一个实施例中,监控数据中包括命名空间;根据统计方式对监控数据进行统计的步骤包括:对监控数据进行时间戳过滤,得到过滤后的监控数据;根据统计方式对过滤后的监控数据按照命名空间进行统计。
本实施例中,多个自定义指标监控配置文件等会在监控数据被统计之前完成同步。云端从第一缓存中读取自定义指标对应的监控数据。第一缓存可以有多个,为了提高监控数据的读取速度还可以通过启动参数来读取多个第一缓存中的监控数据。如果上传监控数据的终端时间不准确,会使得上传的监控数据成为未来数据或者历史数据,从而导致自定义指标的监控无法体现实际状况,无法达到监控目的。云端将读取到的监控数据进行时间戳过滤,以确保过滤后的监控数据有效。
具体的,根据应用标识在第二缓存中读取自定义指标监控配置文件,获取时间戳调整字段,时间戳调整字段中包括时间戳调整上限和时间戳调整下限。获取当前时间戳,根据当前时间戳、时间戳调整上限和时间戳调整下限生成时间戳调整范围,获取监控数据中携带的上报时间戳,判断上报时间戳是否落入时间戳调整范围,若否,则将该监控数据丢弃。例如,时间戳调整上限用tsup来表示,时间戳调整下限用tsdown来表示,云端的当前时间戳用now来表示,监控数据中携带的上报时间戳用timestamp来表示,时间戳调整范围可以用[now-tsdown,now+tsup]。如果timestamp不在[now-tsdown,now+tsup]范围内,则将该监控数据丢弃。若在第二缓存中读取自定义指标监控配置文件未配置时间戳调整字段,则获取自定义指标监控配置文件中的默认值来确定时间戳调整字段。
由于不同自定义命名空间中的自定义指标彼此独立,来自不同应用程序的自定义指标可以避免被错误的聚合到相同的统计结果中。为了确保对自定义指标的监控能够彼此独立,云端将过滤后的监控数据,根据自定义命名空间进行哈希,根据统计方式对过滤后的监控数据进行统计,得到统计结果。
进一步的,为了防止异常数据结果导致内存不足,需要对自定义命名空间下的自定义指标数量和时间戳数量进行控制。内存数据的数据存储可以采用如下存储结构:自定义命名空间->监控对象->自定义指标->上报时间戳->监控数据。
云端根据告警规则对统计结果进行异常判断,如果统计结果满足告警规则,则触发告警规则生效,生成告警信息。云端获取自定义指标对应的告警接收组,根据告警接收组将告警信息发送至第二终端。进一步的,云端可以向第二终端只推送一次告警信息,也可以按照设定的时间间隔多次向第二终端推送告警信息。
面对海量数据,云端将统计结果存入HBase(一种分布式存储数据库)。存储格式可以采用row(一种数据存储格式)格式,具体包括:md5(Message Digest Algorithm MD5,消息摘要算法第五版)值+维度组合+统计周期+统计方式。云端将统计结果分表存储,例如,可以按照监控数据上报的时间来分别存储统计结果。在存储时,每个应用标识分别对应一张监控对象表和一张实时表。其中,监控对象表中包括自定义命名空间和md5值,实时表中包括监控对象所有指标对应的监控数据和上报时间戳。进一步的,云端还可以将统计结果存入多个HBase进行存储,从而能够提高数据的可靠性。
在一个实施例中,该方法还包括:获取对云端应用程序进行访问的当前请求数的发送频率和自定义指标数的发送频率;读取自定义指标监控配置文件,自定义指标监控配置文件中包括被配置的请求数和被配置的指标数发送频率;若当前请求数的发送频率大于被配置的请求数的发送频率和/或自定义指标数的发送频率大于被配置的指标数发送频率,则拒绝对应用程序访问的服务。
本实施例中,通过接入机可以访问在云端运行的应用程序,云端上运行的应用程序可以有多个。为了防止海量访问会导致接入机的性能下降,需要对接入机进行限频保护。所谓限频是指限制通过接入机访问应用程序的请求的发送频率或者自定义指标的发送频率。限频可以是单机限频,有可以是全局限频。单机限频是指限制通过单台接入机访问应用程序的请求的发送频率或者自定义指标的发送频率。全局限频是指现在通过多台接入机访问应用程序的请求的发送频率或者自定义指标的发送频率。
具体的,通过自定义指标监控配置文件可以在每台接入机本地维护一个总的请求数的发送频率。总的请求数可以是对通过该接入机访问所有应用程序的总的请求数。获取通过单台接入机访问云端运行的应用程序的当前总的请求数的发送频率和自定义指标数的发送频率,若当前总的请求数的发送频率超过被配置的请求数的发送频率和/或自定义指标数的发送频率大于被配置的指标数发送频率,则拒绝对所有应用程序访问的服务。
通过自定义指标监控配置文件也可以在单台接入机上维护对每个应用程序的请求数的发送频率。当某个应用程序的当前请求数的发送频率大于被配置的请求数的发送频率和/或自定义指标数的发送频率大于被配置的指标数发送频率,则拒绝对该应用程序访问的服务。
为了数据吞吐量,还可以进行全局限频。云端可以添加计数实例,将通过应用标识将计数实例映射到多个第二缓存。云端在获取当前多个接入机访问云端运行的应用程序的当前请求数的发送频率和自定义指标数的发送频率,通过计数实例进行计数,得到多个接入机当前总的请求数的发送频率和总的自定义指标数的发送频率。读取与全局限频对应的自定义指标监控配置文件,获取被配置的总的请求数的发送频率和总的自定义指标数的发送频率。若当前总的请求数的发送频率超过被配置的请求数的发送频率和/或自定义指标数的发送频率大于被配置的指标数发送频率,则拒绝通过所有接入机对应用程序访问的服务。
在一个实施例中,在根据统计方式对监控数据进行统计,得到统计后的监控数据的步骤之后,还包括:读取自定义指标监控配置文件;根据应用标识获取自定义指标监控配置文件中的染色字值;获取云端的当前时间戳,判断当前时间戳是否小于染色值,若是,则生成统计后的监控数据对应的序列号,并将序列号和统计后的监控数据写入日志中。
本实施例中,云端对监控数据进行统计之后,对于满足告警规则的监控数据,云端会将其进行染色并写入日志,以便在海量数据中能够快速查找这些数据。自定义指标监控配置文件中包括染色字段,染色字段中的染色值可以采用时间戳来表示。获取云端的当前时间戳,判断所述当前时间戳是否小于所述染色值,若是,则生成统计后的监控数据对应的序列号,并将所述序列号和统计后的监控数据写入日志中。
在一个实施例中,如图6所示,提供了一种云端指标监控装置,该装置包括:接收模块602、获取模块604、统计模块606、告警模块608和发送模块610,其中:
接收模块602,用于接收第一终端上报的自定义指标对应的监控数据。
获取模块604,用于读取自定义指标对应的统计方式和告警规则。
统计模块606,用于根据统计方式对监控数据进行统计,得到统计后的监控数据。
告警模块608,用于当统计后的监控数据符合告警规则时,生成告警信息。
发送模块610,用于将告警信息发送至第二终端。
在一个实施例中,如图7所示,该装置还包括:校验模块612和鉴权模块614,其中:
校验模块612,用于对监控数据进行校验。
鉴权模块614,用于获取第一终端访问请求中携带的签名串,对签名串进行验证。
发送模块610还用于若监控数据通过校验并且签名串通过验证,则生成上报成功的提示信息,并将上报成功的提示信息返回至第一终端。
在一个实施例中,获取模块604还用于获取第一终端对应的应用标识;读取自定义指标监控配置文件;统计模块606还用于根据应用标识和自定义指标监控配置文件选择监控数据对应的路由,并将路由映射到对应的拓扑。
在一个实施例中,监控数据中包括命名空间;统计模块606还用于对监控数据进行时间戳过滤,得到过滤后的监控数据;根据统计方式对过滤后的监控数据按照命名空间进行统计。
在一个实施例中,获取模块604还用于获取对云端应用程序进行访问的当前请求数的发送频率和自定义指标数的发送频率;读取自定义指标监控配置文件,自定义指标监控配置文件中包括被配置的请求数和被配置的指标数发送频率;如图8所示,该装置还包括:限频模块616,用于若当前请求数的发送频率大于被配置的请求数的发送频率和/或自定义指标数的发送频率大于被配置的指标数发送频率,则拒绝对应用程序访问的服务。
在一个实施例中,获取模块604还用于读取自定义指标监控配置文件;根据应用标识获取自定义指标监控配置文件中的染色字值;如图8所示,该装置还包括:染色模块618,用于获取云端的当前时间戳,若当前时间戳小于染色值,则生成统计后的监控数据对应的序列号,并将序列号和统计后的监控数据写入日志中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (12)

1.一种云端指标监控方法,所述方法包括:
接收第一终端上报的自定义指标对应的监控数据;
读取所述自定义指标对应的统计方式和告警规则;
根据所述统计方式对所述监控数据进行统计,得到统计后的监控数据;
当所述统计后的监控数据符合所述告警规则时,生成告警信息,并将所述告警信息发送至第二终端。
2.根据权利要求1所述的方法,其特征在于,在所述接收终端上报的自定义指标对应的监控数据的步骤之后,还包括:
对所述监控数据进行校验;
获取第一终端访问请求中携带的签名串,对所述签名串进行验证;
若所述监控数据通过校验并且所述签名串通过验证,则生成上报成功的提示信息,并将所述上报成功的提示信息返回至所述第一终端。
3.根据权利要求1所述的方法,其特征在于,在所述根据所述统计方式对所述监控数据进行统计的步骤之前,还包括:
获取所述第一终端对应的应用标识;
读取自定义指标监控配置文件;
根据所述应用标识和所述自定义指标监控配置文件选择所述监控数据对应的路由,并将所述路由映射到对应的拓扑。
4.根据权利要求1所述的方法,其特征在于,所述监控数据中包括命名空间;所述根据所述统计方式对所述监控数据进行统计的步骤包括:
对所述监控数据进行时间戳过滤,得到过滤后的监控数据;
根据所述统计方式对过滤后的监控数据按照所述命名空间进行统计。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取对云端应用程序进行访问的当前请求数的发送频率和自定义指标数的发送频率;
读取自定义指标监控配置文件,所述自定义指标监控配置文件中包括被配置的请求数和被配置的指标数发送频率;
若当前请求数的发送频率大于被配置的请求数的发送频率和/或自定义指标数的发送频率大于被配置的指标数发送频率,则拒绝对应用程序访问的服务。
6.根据权利要求1所述的方法,其特征在于,在所述根据所述统计方式对所述监控数据进行统计,得到统计后的监控数据的步骤之后,还包括:
读取自定义指标监控配置文件;
根据应用标识获取所述自定义指标监控配置文件中的染色字值;
获取云端的当前时间戳,若所述当前时间戳小于所述染色值,则生成统计后的监控数据对应的序列号,并将所述序列号和统计后的监控数据写入日志中。
7.一种云端指标监控装置,其特征在于,所述装置包括:
接收模块,用于接收第一终端上报的自定义指标对应的监控数据;
获取模块,用于读取所述自定义指标对应的统计方式和告警规则;
统计模块,用于根据所述统计方式对所述监控数据进行统计,得到统计后的监控数据;
告警模块,用于当所述统计后的监控数据符合所述告警规则时,生成告警信息;
发送模块,用于将所述告警信息发送至第二终端。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
校验模块,用于对所述监控数据进行校验;
鉴权模块,用于获取第一终端访问请求中携带的签名串,对所述签名串进行验证;
所述发送模块还用于若所述监控数据通过校验并且所述签名串通过验证,则生成上报成功的提示信息,并将所述上报成功的提示信息返回至所述第一终端。
9.根据权利要求7所述的装置,其特征在于,所述获取模块还用于获取所述第一终端对应的应用标识;读取自定义指标监控配置文件;所述统计模块还用于根据所述应用标识和所述自定义指标监控配置文件选择所述监控数据对应的路由,并将所述路由映射到对应的拓扑。
10.根据权利要求7所述的装置,其特征在于,所述监控数据中包括命名空间;所述统计模块还用于对所述监控数据进行时间戳过滤,得到过滤后的监控数据;根据所述统计方式对过滤后的监控数据按照所述命名空间进行统计。
11.根据权利要求7所述的装置,其特征在于,所述获取模块还用于获取对云端应用程序进行访问的当前请求数的发送频率和自定义指标数的发送频率;读取自定义指标监控配置文件,所述自定义指标监控配置文件中包括被配置的请求数和被配置的指标数发送频率;
所述装置还包括:
限频模块,用于若当前请求数的发送频率大于被配置的请求数的发送频率和/或自定义指标数的发送频率大于被配置的指标数发送频率,则拒绝对应用程序访问的服务。
12.根据权利要求7所述的装置,其特征在于,所述获取模块还用于读取自定义指标监控配置文件;根据应用标识获取所述自定义指标监控配置文件中的染色字值;
所述装置还包括:
染色模块,用于获取云端的当前时间戳,若所述当前时间戳小于所述染色值,则生成统计后的监控数据对应的序列号,并将所述序列号和统计后的监控数据写入日志中。
CN201610635745.4A 2016-08-04 2016-08-04 云端指标监控方法和装置 Active CN106100902B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610635745.4A CN106100902B (zh) 2016-08-04 2016-08-04 云端指标监控方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610635745.4A CN106100902B (zh) 2016-08-04 2016-08-04 云端指标监控方法和装置

Publications (2)

Publication Number Publication Date
CN106100902A true CN106100902A (zh) 2016-11-09
CN106100902B CN106100902B (zh) 2020-04-03

Family

ID=57453997

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610635745.4A Active CN106100902B (zh) 2016-08-04 2016-08-04 云端指标监控方法和装置

Country Status (1)

Country Link
CN (1) CN106100902B (zh)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106878064A (zh) * 2017-01-16 2017-06-20 腾讯科技(深圳)有限公司 数据监控方法和装置
CN107392774A (zh) * 2017-07-20 2017-11-24 上海金大师网络科技有限公司 基于云端指标的自动平仓系统的实现方法
CN107402865A (zh) * 2017-07-05 2017-11-28 上海精数信息科技有限公司 客户端数据监控方法及装置
CN107566498A (zh) * 2017-09-08 2018-01-09 深圳市智物联网络有限公司 一种基于物联网的数控机床监控方法及系统
CN108111328A (zh) * 2016-11-24 2018-06-01 腾讯科技(深圳)有限公司 一种异常处理方法及装置
CN108228431A (zh) * 2018-01-04 2018-06-29 北京中关村科金技术有限公司 一种配置化爬虫质量监测的方法及系统
CN109246190A (zh) * 2018-08-07 2019-01-18 深圳市先河系统技术有限公司 网络寻址方法、数据编辑方法、装置及存储介质
CN109447598A (zh) * 2018-09-25 2019-03-08 平安科技(深圳)有限公司 支付数据处理方法、装置、计算机设备和存储介质
CN109783319A (zh) * 2019-01-17 2019-05-21 珠海金山网络游戏科技有限公司 一种服务器与进程性能指标定点采样与生成报告的方法
CN110674013A (zh) * 2019-10-08 2020-01-10 浪潮云信息技术有限公司 一种云平台可自定义监控的gpu监控告警系统
CN110688281A (zh) * 2019-09-25 2020-01-14 凡普数字技术有限公司 监控系统中的告警方法、装置以及存储介质
CN111111211A (zh) * 2019-12-25 2020-05-08 上海米哈游天命科技有限公司 游戏数据的上报方法、装置、系统、设备及存储介质
CN111651322A (zh) * 2020-05-29 2020-09-11 山东中创软件商用中间件股份有限公司 一种进程监控告警方法、系统及装置
CN111934920A (zh) * 2020-07-28 2020-11-13 北京青云科技股份有限公司 监控告警方法、装置、设备和存储介质
CN112052134A (zh) * 2020-07-21 2020-12-08 北京奇艺世纪科技有限公司 一种业务数据的监控方法及装置
CN112115026A (zh) * 2020-09-15 2020-12-22 招商局金融科技有限公司 服务器集群监控方法、装置、电子设备及可读存储介质
CN112256533A (zh) * 2019-11-04 2021-01-22 北京京东振世信息技术有限公司 数据监控报警的处理方法、装置、介质及电子设备
CN112948132A (zh) * 2021-04-07 2021-06-11 广西师范大学 云服务事件及服务等级合约数据的向量化方法
CN113032220A (zh) * 2021-03-29 2021-06-25 中国南方电网有限责任公司 一种基于会话染色实现全链路性能安全追踪的方法
CN113421131A (zh) * 2021-07-21 2021-09-21 赛诺数据科技(南京)有限公司 基于大数据内容智能营销系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103501349A (zh) * 2013-10-18 2014-01-08 南京九度网络科技有限公司 一种可基于发布位置精确统计访问数据的二维码云服务系统及方法
CN104657250A (zh) * 2014-12-16 2015-05-27 无锡华云数据技术服务有限公司 一种对云主机进行性能监控的监控方法
CN105471671A (zh) * 2015-11-10 2016-04-06 国云科技股份有限公司 一种云平台资源自定义监控规则的方法
CN105610643A (zh) * 2015-12-23 2016-05-25 深圳市华讯方舟软件技术有限公司 一种云计算监控方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103501349A (zh) * 2013-10-18 2014-01-08 南京九度网络科技有限公司 一种可基于发布位置精确统计访问数据的二维码云服务系统及方法
CN104657250A (zh) * 2014-12-16 2015-05-27 无锡华云数据技术服务有限公司 一种对云主机进行性能监控的监控方法
CN105471671A (zh) * 2015-11-10 2016-04-06 国云科技股份有限公司 一种云平台资源自定义监控规则的方法
CN105610643A (zh) * 2015-12-23 2016-05-25 深圳市华讯方舟软件技术有限公司 一种云计算监控方法及装置

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108111328A (zh) * 2016-11-24 2018-06-01 腾讯科技(深圳)有限公司 一种异常处理方法及装置
CN108111328B (zh) * 2016-11-24 2021-03-26 腾讯科技(深圳)有限公司 一种异常处理方法及装置
CN106878064A (zh) * 2017-01-16 2017-06-20 腾讯科技(深圳)有限公司 数据监控方法和装置
CN106878064B (zh) * 2017-01-16 2021-08-13 腾讯科技(深圳)有限公司 数据监控方法和装置
CN107402865B (zh) * 2017-07-05 2020-10-16 上海精数信息科技有限公司 客户端数据监控方法及装置
CN107402865A (zh) * 2017-07-05 2017-11-28 上海精数信息科技有限公司 客户端数据监控方法及装置
CN107392774A (zh) * 2017-07-20 2017-11-24 上海金大师网络科技有限公司 基于云端指标的自动平仓系统的实现方法
CN107566498A (zh) * 2017-09-08 2018-01-09 深圳市智物联网络有限公司 一种基于物联网的数控机床监控方法及系统
CN108228431A (zh) * 2018-01-04 2018-06-29 北京中关村科金技术有限公司 一种配置化爬虫质量监测的方法及系统
CN109246190A (zh) * 2018-08-07 2019-01-18 深圳市先河系统技术有限公司 网络寻址方法、数据编辑方法、装置及存储介质
CN109447598A (zh) * 2018-09-25 2019-03-08 平安科技(深圳)有限公司 支付数据处理方法、装置、计算机设备和存储介质
CN109783319A (zh) * 2019-01-17 2019-05-21 珠海金山网络游戏科技有限公司 一种服务器与进程性能指标定点采样与生成报告的方法
CN110688281A (zh) * 2019-09-25 2020-01-14 凡普数字技术有限公司 监控系统中的告警方法、装置以及存储介质
CN110674013A (zh) * 2019-10-08 2020-01-10 浪潮云信息技术有限公司 一种云平台可自定义监控的gpu监控告警系统
CN112256533A (zh) * 2019-11-04 2021-01-22 北京京东振世信息技术有限公司 数据监控报警的处理方法、装置、介质及电子设备
CN111111211A (zh) * 2019-12-25 2020-05-08 上海米哈游天命科技有限公司 游戏数据的上报方法、装置、系统、设备及存储介质
CN111111211B (zh) * 2019-12-25 2023-11-21 上海米哈游天命科技有限公司 游戏数据的上报方法、装置、系统、设备及存储介质
CN111651322A (zh) * 2020-05-29 2020-09-11 山东中创软件商用中间件股份有限公司 一种进程监控告警方法、系统及装置
CN112052134A (zh) * 2020-07-21 2020-12-08 北京奇艺世纪科技有限公司 一种业务数据的监控方法及装置
CN111934920A (zh) * 2020-07-28 2020-11-13 北京青云科技股份有限公司 监控告警方法、装置、设备和存储介质
CN112115026B (zh) * 2020-09-15 2022-09-16 招商局金融科技有限公司 服务器集群监控方法、装置、电子设备及可读存储介质
CN112115026A (zh) * 2020-09-15 2020-12-22 招商局金融科技有限公司 服务器集群监控方法、装置、电子设备及可读存储介质
CN113032220A (zh) * 2021-03-29 2021-06-25 中国南方电网有限责任公司 一种基于会话染色实现全链路性能安全追踪的方法
CN112948132A (zh) * 2021-04-07 2021-06-11 广西师范大学 云服务事件及服务等级合约数据的向量化方法
CN113421131A (zh) * 2021-07-21 2021-09-21 赛诺数据科技(南京)有限公司 基于大数据内容智能营销系统
CN113421131B (zh) * 2021-07-21 2023-11-28 赛诺数据科技(南京)有限公司 基于大数据内容智能营销系统

Also Published As

Publication number Publication date
CN106100902B (zh) 2020-04-03

Similar Documents

Publication Publication Date Title
CN106100902A (zh) 云端指标监控方法和装置
AU2019204090B2 (en) Networking flow logs for multi-tenant environments
US10708289B2 (en) Secured event monitoring leveraging blockchain
US11108559B2 (en) Producing proof of receipt, existence and other data provenance evidence
US20180143891A1 (en) Testing and improving performance of mobile application portfolios
CN106548402B (zh) 资源转移监控方法及装置
CN107426252B (zh) 提供web应用防火墙服务的方法和设备
CN110266872B (zh) 通讯录数据的管控方法、装置及云通讯录系统、计算机设备、计算机可读存储介质
US20150121461A1 (en) Method and system for detecting unauthorized access to and use of network resources with targeted analytics
CN109460223A (zh) 一种api网关管理系统及其方法
CN109672582A (zh) 全路径监测方法、设备、存储介质及装置
JP2012150805A (ja) システムアプリケーション処理に関連する詐欺を検出するシステムおよび方法
CN111353172B (zh) 基于区块链的Hadoop集群大数据访问方法及系统
CN109543459A (zh) 一种数据存证方法及设备
CN111343212B (zh) 消息处理方法、装置、设备以及存储介质
CN109493224A (zh) 一种区块链图片社交系统
CN111680900A (zh) 一种工单发布方法、装置、电子设备及存储介质
CN108965317A (zh) 一种网络数据防护系统
CN104704521A (zh) 多因素简档和安全指纹分析
CN111048164A (zh) 一种医学大数据长期保存系统
CN114338684A (zh) 一种能源管理系统及方法
Li BCES: a blockchain based credible e-bidding system
CN114253797A (zh) 一种微服务系统的故障处理方法及相关装置
CN107294766A (zh) 一种集中管控的方法及系统
CN110716726A (zh) 客户端更新方法及装置、电子设备和计算机可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant