CN106357757A - 一种监控系统中的被监控装置及监控方法 - Google Patents

一种监控系统中的被监控装置及监控方法 Download PDF

Info

Publication number
CN106357757A
CN106357757A CN201610810463.3A CN201610810463A CN106357757A CN 106357757 A CN106357757 A CN 106357757A CN 201610810463 A CN201610810463 A CN 201610810463A CN 106357757 A CN106357757 A CN 106357757A
Authority
CN
China
Prior art keywords
monitoring
script
monitoring script
agent
state
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
CN201610810463.3A
Other languages
English (en)
Other versions
CN106357757B (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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201610810463.3A priority Critical patent/CN106357757B/zh
Publication of CN106357757A publication Critical patent/CN106357757A/zh
Application granted granted Critical
Publication of CN106357757B publication Critical patent/CN106357757B/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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2289Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by configuration test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种监控系统中的被监控装置和监控方法,用以增强监控系统对长时间运行脚本的监控能力。该被监控装置包括第一监控代理、第二监控代理和若干个监控脚本;第一监控代理用于调度第一监控脚本,在第一监控脚本的运行时间不超过第一设定阈值时,采集监控数据上报给监控服务器;第二监控代理用于估计第一监控脚本下一次被调度时运行时间的预算值,在预算值超过第一设定阈值时,接替第一监控代理来调度第一监控脚本,配置第一监控脚本的运行超时时间为第二设定阈值,第二设定阈值大于所述第一设定阈值,在第一监控脚本的运行时间不超过第二设定阈值时,采集监控数据上报给所述监控服务器。

Description

一种监控系统中的被监控装置及监控方法
技术领域
本申请涉及网络技术领域,特别涉及一种监控系统中的被监控装置及监控方法。
背景技术
Zabbix是一个开源分布式监控系统,可以对网络设备进行数据监控。如图1所示,Zabbix监控系统中包括服务主机100和若干个被监控主机101;图1中仅显示一个被监控主机101。服务主机100中包括Zabbix网络(即web)图形用户界面(英文:Graphical UserInterface,缩写:GUI)102,Zabbix数据库103和Zabbix服务器104。Zabbix实现的一种设备监控方案中,在被监控主机101中安装Zabbix代理105和监控脚本106。用户通过Zabbix网络GUI102在Zabbix服务器104中添加监控项等一些配置信息,在监控代理105的配置文件中配置监控项的key和对应的监控脚本106。Zabbix代理105会从Zabbix服务器104中同步监控项等一些配置信息,根据这些配置信息调度对应的监控脚本106采集监控数据,并把采集到的监控数据上报给Zabbix服务器104。Zabbix服务器104将收到的监控数据存入到Zabbix数据库103,用户通过Zabbix网络GUI102查看监控数据的结果。
Zabbix相关协议规定,监控代理105在调度对应的监控脚本106采集监控数据的过程中,若监控脚本106的执行时间超过设定值,比如30s,则停止运行,监控代理105无法正常获取监控数据。而很多工程中,由于业务需求,大多数监控脚本106的运行时间都比较长,超出了上述设定值,那么监控代理105就会无法正常获取监控数据,Zabbix监控系统无法正常监控。
综上,由于监控脚本运行时间超过Zabbix协议规定的时长,导致Zabbix监控系统无法正常监控,目前还没有很好的方法能够解决上述问题。
发明内容
本申请实施例提供一种监控系统中的被监控装置及监控方法,用以解决由于监控脚本运行时间超过监控协议规定的时长而导致监控系统无法正常监控的问题。
本申请实施例提供的具体技术方案如下:
第一方面,提供一种监控系统中的被监控装置,包括第一监控代理、第二监控代理和若干个监控脚本,第一监控代理是所述被监控装置中原来的监控代理,第二监控代理在原来的监控代理的基础上又增加的一个监控代理,新增加的第二监控代理将原来的第一监控代理调度的运行时间长的监控脚本转移到本地进行调度,原来的第一监控代理只调度运行时间不超过协议规定的时长的监控脚本,新增加的第二监控代理调度运行时间会超过协议规定的时长的监控脚本,这样解决了由于监控脚本运行时间超过监控协议规定的时长会导致监控系统无法正常监控的问题,增强了监控系统对长时间运行脚本的监控能力。
在一个可能的设计中,所述第一监控代理用于调度所述若干个监控脚本中的第一监控脚本,在所述第一监控脚本的运行时间不超过第一设定阈值时,通过所述第一监控脚本采集监控数据,并将采集到的监控数据上报给监控服务器,所述第二监控代理用于根据所述第一监控脚本的运行时间,估计所述第一监控脚本下一次被调度时运行时间的预算值,在判定所估计的预算值超过所述第一设定阈值时,接替所述第一监控代理来调度所述第一监控脚本,并配置所述第一监控脚本的运行超时时间为第二设定阈值,以及在所述第一监控脚本的运行时间不超过所述第二设定阈值时,通过所述第一监控脚本采集监控数据,并将采集到的监控数据上报给所述监控服务器,所述第二设定阈值大于所述第一设定阈值。这样避免第一监控代理调度下的监控脚本不会因为运行时间超过协议规定的时长而导致停止运行的问题,保证了运行时间长的监控脚本也能够正常监控数据,从而保证了监控系统的正常运行。
在一个可能的设计中,所述第二监控代理在根据所述第一监控脚本的运行时间,估计所述第一监控脚本的运行时间的预算值时,具体的实施方式可以是,记录所述第一监控脚本被所述第一监控代理每一次调度时的运行时间,根据连续n次记录的运行时间,估计所述第一监控脚本被所述第一监控代理第n+1次调度时的运行时间的预算值,n为大于等于1的自然数。这样可以有效准确的判断出可能会在第一监控代理调度下运行超时的监控脚本。
在一个可能的设计中,所述第二监控代理还用于在判定所估计的预算值超过所述第一设定阈值时,将所述第一监控代理的配置文件中有关所述第一监控脚本的配置信息转移到所述第二监控代理的配置文件中;所述配置文件中包括监控项、监控项对应的监控脚本和监控脚本的运行超时时间;
在一个可能的设计中,所述第二监控代理在配置所述第一监控脚本的运行超时时间为第二设定阈值时,具体通过以下实现方式,将从所述第一监控代理转移的配置文件中的监控脚本的运行超时时间修改为所述第二设定阈值。
在一个可能的设计中,所述第二监控代理还用于遍历由所述第二监控代理调度的至少一个监控脚本,若遍历到一个监控脚本,则记录或更新本次遍历到的监控脚本的状态和本次遍历到的监控脚本的状态对应的计数值;所述状态包括停止状态、等待状态和运行状态。这样可以通过第二监控代理调用的一个线程实现多个监控脚本的计时器的目的,避免多个监控脚本在中的每一个监控脚本均配置计时器带来的浪费资源的问题。
在一个可能的设计中,所述第二监控代理还用于:接替所述第一监控代理调度所述第一监控脚本后,将所述第一监控脚本的状态记录为停止状态;每当遍历到所述第一监控脚本时,将所述第一监控脚本的停止状态对应的计数值加1;当所述第一监控脚本的停止状态对应的计数值达到所述第一监控脚本的调用周期时,将所述第一监控脚本的状态记录为等待状态,并将所述第一监控脚本的停止状态对应的计数值设置为初始值;
在下一次遍历到所述第一监控脚本时,通知任务处理线程调度所述第一监控脚本采集监控数据,并将所述第一监控脚本的状态记录为运行状态;
每当遍历到所述第一监控脚本时,将所述第一监控脚本的运行状态对应的计数值加1;若在所述第一监控脚本的运行状态对应的计数值未达到所述第二设定阈值时,接收到所述任务处理线程返回的用于表示运行完毕的消息,则将所述运行状态对应的计数值设置为初始值,并将所述第一监控脚本的状态记录为停止状态;若在所述第一监控脚本的运行状态对应的计数值达到所述第二设定阈值时,未接收到所述任务处理线程返回的用于表示运行完毕的消息,则通过所述任务处理线程停止调度所述第一监控脚本采集监控数据,并将所述第一监控脚本的状态记录为停止状态,所述停止状态和所述运行状态对应的计数值的初始值均为0。
在一个可能的设计中,所述第一设定阈值为监控协议规定的监控脚本允许运行的最大时长。
第二方面,提供一种监控方法,该方法通过以下方式实现:在监控系统中的被监控装置原来的监控代理的基础上又增加了一个监控代理,新增加的监控代理将原来的监控代理调度的运行时间长的监控脚本转移到本地进行调度,原来的监控代理只调度运行时间不超过协议规定的时长的监控脚本,新增加的监控代理调度运行时间会超过协议规定的时长的监控脚本,解决了由于监控脚本运行时间超过监控协议规定的时长会导致监控系统无法正常监控的问题,增强了监控系统对长时间运行脚本的监控能力。
在一个可能的设计中,上述方法具体通过以下方式实现,通过第一监控代理调度若干个监控脚本中的第一监控脚本,在所述第一监控脚本的运行时间不超过第一设定阈值时,通过所述第一监控代理采集监控数据,并将采集到的监控数据上报给所述监控服务器,通过第二监控代理监控所述第一监控脚本的运行时间,根据所述第一监控脚本的运行时间估计所述第一监控脚本下一次被调度时运行时间的预算值,在判定所估计的预算值超过所述第一设定阈值时,接替所述第一监控代理来调度所述第一监控脚本,并配置所述第一监控脚本的运行超时时间为第二设定阈值,以及,在所述第一监控脚本的运行时间不超过所述第二设定阈值时,通过所述第一监控脚本采集监控数据,并将采集到的监控数据上报给所述监控服务器,所述第二设定阈值大于所述第一设定阈值。这样避免第一监控代理调度下的监控脚本不会因为运行时间超过协议规定的时长而导致停止运行的问题,保证了运行时间长的监控脚本也能够正常监控数据,从而保证了监控系统的正常运行。
在一个可能的设计中,根据所述第一监控脚本的运行时间,估计所述第一监控脚本的运行时间的预算值,具体的实施方式可以是,记录所述第一监控脚本被所述第一监控代理每一次调度时的运行时间,根据连续n次记录的运行时间,估计所述第一监控脚本被所述第一监控代理第n+1次调度时的运行时间的预算值,n为大于等于1的自然数。这样可以有效准确的判断出可能会在第一监控代理调度下运行超时的监控脚本。
在一个可能的设计中,所述方法还包括:在判定所估计的预算值超过所述第一设定阈值时,通过所述第二监控代理将所述第一监控代理的配置文件中有关所述第一监控脚本的配置信息转移到所述第二监控代理的配置文件中;所述配置文件中包括监控项、监控项对应的监控脚本和监控脚本的运行超时时间;在通过所述第二监控代理配置所述第一监控脚本的运行超时时间为第二设定阈值时,通过以下方式实现,通过所述第二监控代理,将从所述第一监控代理转移的配置文件中的监控脚本的运行超时时间修改为所述第二设定阈值。
在一个可能的设计中,所述方法还包括,通过所述第二监控代理遍历由所述第二监控代理调度的至少一个监控脚本;若遍历到一个监控脚本,则记录或更新本次遍历到的监控脚本的状态和本次遍历到的监控脚本的状态对应的计数值;所述状态包括停止状态、等待状态和运行状态。这样可以通过第二监控代理调用的一个线程实现多个监控脚本的计时器的目的,避免多个监控脚本在中的每一个监控脚本均配置计时器带来的浪费资源的问题。
在一个可能的设计中,所述方法还包括,通过所述第二监控代理,接替所述第一监控代理调度所述第一监控脚本后,将所述第一监控脚本的状态记录为停止状态;每当遍历到所述第一监控脚本时,将所述第一监控脚本的停止状态对应的计数值加1;当所述第一监控脚本的停止状态对应的计数值达到所述第一监控脚本的调用周期时,将所述第一监控脚本的状态记录为等待状态,并将所述第一监控脚本的停止状态对应的计数值设置为初始值;在下一次遍历到所述第一监控脚本时,通知任务处理线程调度所述第一监控脚本采集监控数据,并将所述第一监控脚本的状态记录为运行状态;每当遍历到所述第一监控脚本时,将所述第一监控脚本的运行状态对应的计数值加1;若在所述第一监控脚本的运行状态对应的计数值未达到所述第二设定阈值时,接收到所述任务处理线程返回的用于表示运行完毕的消息,则将所述运行状态对应的计数值设置为初始值,并将所述第一监控脚本的状态记录为停止状态;若在所述第一监控脚本的运行状态对应的计数值达到所述第二设定阈值时,未接收到所述任务处理线程返回的用于表示运行完毕的消息,则通过所述任务处理线程停止调度所述第一监控脚本采集监控数据,并将所述第一监控脚本的状态记录为停止状态;所述停止状态和所述运行状态对应的计数值的初始值均为0。
在一个可能的设计中,所述第一设定阈值为监控协议规定的监控脚本允许运行的最大时长。
第三方面,提供一种监控系统,包括:监控服务器和被监控装置,所述被监控装置包括第一监控代理、第二监控代理和监控脚本;所述第一监控代理和所述第二监控代理均用于调度所述监控脚本采集监控数据,并上报给所述监控服务器;其中,所述第一监控代理具有实现上述第一方面或第二方面中所述的第一监控代理的功能,所述第二监控代理具有实现上述第一方面或第二方面中所述的第二监控代理的功能。
第四方面,提供了另一种监控系统中的被监控装置,该监控系统中的被监控装置具有实现上述第一方面和任一种可能的设计中被监控装置行为的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,该监控系统中的被监控装置包括收发器和处理器,其中,处理器用于调用一组程序代码,以执行如第二方面和任一种可能的设计中所述的方法。
第五方面,提供了一种计算机存储介质,用于储存为上述方面所述的被监控装置所用的计算机软件指令,其包含用于执行上述方面所设计的程序。
本申请实施提供的监控系统中的被监控装置,解决了由于监控脚本运行时间超过监控协议规定的时长会导致监控系统无法正常监控的问题,增强了监控系统对长时间运行脚本的监控能力。
附图说明
图1为现有技术中Zabbix监控系统架构图;
图2为本申请实施例中监控系统架构图;
图3为本申请实施例中监控系统中的被监控装置架构图之一;
图4为本申请实施例中各个监控脚本计时程序的状态转换关系图;
图5为本申请实施例中监控方法流程图;
图6为本申请实施例中Zabbix监控系统中的监控方法流程图;
图7为本申请实施例中监控系统中的被监控装置架构图之二。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
本申请实施例提供一种监控系统中的被监控装置,在原来的监控代理的基础上又增加了一个监控代理,新增加的监控代理将原来的监控代理调度的运行时间长的监控脚本转移到本地进行调度,原来的监控代理只调度运行时间不超过协议规定的时长的监控脚本,新增加的监控代理调度运行时间会超过协议规定的时长的监控脚本,解决了由于监控脚本运行时间超过监控协议规定的时长会导致监控系统无法正常监控的问题,增强了监控系统对长时间运行脚本的监控能力。
本申请实施例中,监控系统的架构如图2所示,包括监控装置201和若干个被监控装置202,为方便说明,图2中仅显示一个被监控装置202,显示的被监控装置202为监控系统中的任意一个,被监控装置202中安装有第一监控代理203、第二监控代理204和若干个监控脚本205;监控装置201中包括监控服务器206,可选的,监控装置201还包括GUI 207,数据库208。用户可通过GUI 207对相应的被监控装置202中的各个被监控项目配置监控项等一些配置信息,其中,各个被监控项目如CPU、内存等,任意一个监控项中包括监控项的唯一标识(即Key)、类型、监控周期、历史数据保存时长以及趋势数据保存时长等信息。将配置信息存储在数据库208中,第一监控代理203和第二监控代理204会定时从监控服务器206同步配置信息。第一监控代理203根据配置信息调度监控脚本205采集监控数据,并将监控数据上报给监控服务器206;第二监控代理204用于识别第一监控代理203下运行时间长的监控脚本205,并接替第一监控代理203调度这些监控脚本205采集监控数据,并将监控数据上报给监控服务器206。
基于图2所示的监控系统的架构,下面将对本申请实施例提供的监控系统中的被监控装置及监控方法进行详细说明。
参阅图3所示,本申请实施例提供的监控系统中的被监控装置300包括第一监控代理301、第二监控代理302和若干个监控脚本303;
第一监控代理301,用于调度若干个监控脚本303中的第一监控脚本303,在第一监控脚本303的运行时间不超过第一设定阈值时,通过第一监控脚本303采集监控数据,并将采集到的监控数据上报给服务器;
第二监控代理302,用于根据第一监控脚本303的运行时间,估计第一监控脚本303下一次被调度时运行时间的预算值,在判定所估计的预算值超过第一设定阈值时,接替第一监控代理301来调度第一监控脚本303,并配置第一监控脚本303的运行超时时间为第二设定阈值,其中,第二设定阈值大于第一设定阈值;以及在第一监控脚本303的运行时间不超过所述第二设定阈值时,通过第一监控脚本303采集监控数据,并将采集到的监控数据上报给监控服务器206。
其中,第一监控脚本303为若干个监控脚本303中的任意一个监控脚本。
可选的,第一设定阈值为监控协议规定的监控脚本允许运行的最大时长。第二设定阈值为根据经验值确定的,一般监控脚本的运行时间都不会超过第二设定阈值,例如,第二设定阈值为30分钟。这样,若第一监控脚本303在第一监控代理301的调度下,其运行时间超过了第一设定阈值,就会发生运行停止,无法正常采集监控数据,但是本申请实施例在这种情况下,会将第一监控脚本303转移到第二监控代理302进行下一次调度,由于第一监控脚本303的运行时间不会超过第二设定阈值,因此可以实现正常采集监控数据。
可选的,在根据第一监控脚本303的运行时间,估计第一监控脚本303的运行时间的预算值时,第二监控代理302具体用于:
记录第一监控脚本303被第一监控代理301每一次调度时的运行时间,根据连续n次记录的运行时间,估计第一监控脚本303被第一监控代理301第n+1次调度时的运行时间的预算值,n为大于等于1的自然数。
具体地,第一监控脚本303会按照周期性的被第一监控代理301所调度,第二监控代理302会周期性的查询第一监控脚本303的运行时间,当然,第二监控代理302查询第一监控脚本303的运行时间的周期要远小于第一监控脚本303的调度周期,第二监控代理302记录第一监控脚本303在每一次调度过程中运行的时间,若连续n次运行时间都接近于或者等于第一设定阈值,那么第一监控脚本303在下一次被调度时的运行时间就可能超过第一设定阈值,从而发生停止运行的风险,导致无法正常监控数据。于此,在这种情况下,第二监控代理302就会接替第一监控代理301来调度第一监控脚本303。
可选的,第二监控代理302还用于:
在判定所估计的预算值超过第一设定阈值时,将第一监控代理301的配置文件中有关第一监控脚本303的配置信息转移到所述第二监控代理302的配置文件中;该配置文件中包括监控项、监控项对应的监控脚本和监控脚本的运行超时时间;
例如,配置文件中的各个配置项及含义如下表所示。
UserParameter=key[*],timeout,command
其中,UserParameter为多个用户定义的参数中的其中一个参数,该参数用来监测。key为监控项的唯一标识,Command为需要执行的监控脚本,Timeout为监控脚本Command的运行超时时间。
可选的,第二监控代理302在配置第一监控脚本303的运行超时时间为第二设定阈值时,具体用于:
第二监控代理302将从第一监控代理301转移的配置文件中的监控脚本的运行超时时间修改为第二设定阈值。
可选的,第二监控代理302还用于:
遍历由第二监控代理302调度的至少一个监控脚本;
若遍历到一个监控脚本,则记录或更新本次遍历到的监控脚本的状态和本次遍历到的监控脚本的状态对应的计数值;
其中,该状态包括停止状态、等待状态和运行状态。
可选的,第二监控代理302还用于:接替第一监控代理301调度第一监控脚本303后,将第一监控脚本303的状态记录为停止状态;
每当遍历到第一监控脚本303时,将第一监控脚本303的停止状态对应的计数值加1;
当第一监控脚本303的停止状态对应的计数值达到第一监控脚本303的调用周期时,将第一监控脚本303的状态记录为等待状态,并将第一监控脚本的停止状态对应的计数值设置为初始值;
在下一次遍历到第一监控脚本303时,通知任务处理线程调度第一监控脚本303采集监控数据,并将第一监控脚本303的状态记录为运行状态;
每当遍历到第一监控脚本303时,将第一监控脚本303的运行状态对应的计数值加1;
若在第一监控脚本303的运行状态对应的计数值未达到第二设定阈值时,接收到任务处理线程返回的用于表示运行完毕的消息,则将运行状态对应的计数值设置为初始值,并将第一监控脚本303的状态记录为停止状态;
若在第一监控脚本303的运行状态对应的计数值达到第二设定阈值时,未接收到任务处理线程返回的用于表示运行完毕的消息,则通过任务处理线程停止调度所述第一监控脚本303采集监控数据,并将第一监控脚本303的状态记录为停止状态。
停止状态和运行状态对应的计数值的初始值均为0。
具体地,第二监控代理302在启动时,加载每一个监控脚本303的配置信息,配置信息中包括各个监控脚本303的调用周期,到达调用周期时,第二监控代理302会调用监控脚本303去采集监控数据。在内存中记录每一个监控脚本的状态。在调度监控脚本303的过程中,建立一个调度线程,调度线程挨个遍历各个监控脚本303对应的计时程序,将监控脚本303的计时程序初始化的状态设置为停止状态(即Idle状态),并置监控脚本计时程序在停止状态的计数值设置为初始值,初始值为0;
调度线程遍历各个监控脚本303对应的计时程序,每遍历到一个监控脚本303,若未到该监控脚本303的调用周期,则将该监控脚本计时程序在停止状态的计数值加1,且状态一直保持为Idle状态;若到达该监控脚本303的调用周期,则调度线程将该监控脚本计时程序状态置为等待(即Waiting)状态,并将该监控脚本计时程序在停止状态的计数值清零。
当调度线程遍历到状态为Waiting状态的监控脚本计时程序时,则通知任务处理线程调用监控脚本采集监控数据,并将监控脚本计时程序的状态置为运行(即Running)状态;
当调度线程遍历到状态为Running状态的监控脚本计时程序时,若未加收到任务处理线程返回的ACK消息,则将监控脚本计时程序保持为Running状态,且将监控脚本计时程序在Running状态下的计数值加1;若已收到任务处理线程返回的ACK信息,则将监控脚本计时程序的状态置为Idle状态,且监控脚本计时程序的计数值清零;ACK消息用于表示监控脚本运行完毕。
若处于Running状态的监控脚本计时程序的计数值不断累加,以至于超过规定的时长,表明该监控脚本的运行时间已超过第二设定阈值,则调度线程停止该监控脚本,返回ACK消息,调度线程将监控脚本计时程序的状态置为Idle状态。
上述第二监控代理302监控各个监控脚本计时程序的状态转换关系可如图4所示。
上述利用调用线程统一处理各个监控脚本的调用周期、运行时间的超时监控,能够实现计时功能,且节省资源,当然,也可以基于每一个监控脚本设计一个计时器来实现上述调用线程的计时功能。
基于同一发明构思,本申请实施例还提供了一种监控方法,具体流程如图5所示。
步骤501:通过第一监控代理301调度若干个监控脚本303中的第一监控脚本303,在第一监控脚本303的运行时间不超过第一设定阈值时,通过第一监控代理301采集监控数据,并将采集到的监控数据上报给监控服务器206;
步骤502:通过第二监控代理302监控第一监控脚本303的运行时间,根据第一监控脚本303的运行时间估计第一监控脚本303下一次被调度时运行时间的预算值,在判定所估计的预算值超过第一设定阈值时,接替第一监控代理301来调度第一监控脚本303,并配置第一监控脚本303的运行超时时间为第二设定阈值,第二设定阈值大于第一设定阈值;以及,
在第一监控脚本303的运行时间不超过第二设定阈值时,通过第一监控脚本303采集监控数据,并将采集到的监控数据上报给监控服务器206。
可选的,在步骤502中,根据第一监控脚本303的运行时间,估计第一监控脚本303的运行时间的预算值,可以通过以下方式实现:
记录第一监控脚本303被第一监控代理301每一次调度时的运行时间,根据连续n次记录的运行时间,估计第一监控脚本303被第一监控代理301第n+1次调度时的运行时间的预算值,n为大于等于1的自然数。
可选的,在判定所估计的预算值超过第一设定阈值时,通过第二监控代理302将第一监控代理301的配置文件中有关第一监控脚本303的配置信息转移到第二监控代理302的配置文件中;配置文件中包括监控项、监控项对应的监控脚本303和监控脚本303的运行超时时间;
可选的,在步骤502中,通过第二监控代理302配置第一监控脚本303的运行超时时间为第二设定阈值,可以通过以下方式实现:
通过第二监控代理302,将从第一监控代理301转移的配置文件中的监控脚本303的运行超时时间修改为第二设定阈值。
可选的,通过第二监控代理302遍历由第二监控代理302调度的至少一个监控脚本303;若遍历到一个监控脚本303,则记录或更新本次遍历到的监控脚本303的状态和本次遍历到的监控脚本303的状态对应的计数值;其中,该状态包括停止状态、等待状态和运行状态。
可选的,通过第二监控代理302,接替第一监控代理301调度第一监控脚本303后,将第一监控脚本303的状态记录为停止状态;
每当遍历到第一监控脚本303时,将第一监控脚本303的停止状态对应的计数值加1;
当第一监控脚本303的停止状态对应的计数值达到第一监控脚本303的调用周期时,将第一监控脚本303的状态记录为等待状态,并将第一监控脚本303的停止状态对应的计数值设置为初始值;
在下一次遍历到第一监控脚本303时,通知任务处理线程调度第一监控脚本303采集监控数据,并将第一监控脚本303的状态记录为运行状态;
每当遍历到第一监控脚本303时,将第一监控脚本303的运行状态对应的计数值加1;
若在第一监控脚本303的运行状态对应的计数值未达到第二设定阈值时,接收到任务处理线程返回的用于表示运行完毕的消息,则将运行状态对应的计数值设置为初始值,并将第一监控脚本303的状态记录为停止状态;
若在第一监控脚本303的运行状态对应的计数值达到第二设定阈值时,未接收到任务处理线程返回的用于表示运行完毕的消息,则通过任务处理线程停止调度第一监控脚本303采集监控数据,并将第一监控脚本303的状态记录为停止状态,停止状态和运行状态对应的计数值的初始值均为0。
下面以监控系统为Zabbix监控系统为例,结合图6和具体的应用场景将本申请实施例提供的监控系统和监控方法做进一步详细的说明。Zabbix是公有云计算场景下的一个开源监控工具,通过图6所示的Zabbix监控系统和监控方法,能够有效解决Zabbix监控运行脚本超时造成的弊端。
如图6所示,Zabbix监控系统中包括监控装置601和任意一个被监控装置602,被监控装置602中安装有第一监控代理603、第二监控代理604和若干个监控脚本605;监控装置601中包括Zabbix服务器607和Zabbix网络GUI(即Zabbix web GUI)606。用户可通过Zabbixweb GUI 606对相应的被监控装置602中的各个被监控项目配置监控项等一些配置信息,其中,各个被监控项目如CPU、内存等,任意一个监控项中包括监控项的唯一标识(即Key)、类型、监控周期、历史数据保存时长以及趋势数据保存时长等信息。第一监控代理603和第二监控代理604会定时从Zabbix服务器607同步配置信息。第一监控代理603根据配置信息调度监控脚本605采集监控数据,并将监控数据上报给Zabbix服务器607;第二监控代理604用于识别第一监控代理603下运行时间长的监控脚本605,并接替第一监控代理603调度这些监控脚本605采集监控数据,并将监控数据上报给Zabbix服务器606。
第二监控代理604包括配置信息模块6041、监控任务识别模块6042、监控任务信息内存6043、监控任务调度线程6044、任务处理线程6045和发送模块6046。
通过图6所示的Zabbix监控系统,监控方法的具体流程如下步骤701~步骤707所述。
步骤701:用户通过Zabbix web GUI606向Zabbix服务器607配置监控项等一些配置信息。
例如,可以将监控脚本都配置为主动上报监控数据。
步骤702:第一监控代理603和第二监控代理604均与Zabbix服务器607之间同步配置信息。
具体地,第二监控代理中的配置信息模块6041向Zabbix服务器607查询配置信息,以及,通过第一监控代理603配置各个监控脚本的超时时间,这里的超时时间一般配置为大于各个监控脚本的运行时间。例如,配置为30分钟,可以根据经验值优化更新。
步骤703:第一监控代理603根据配置信息中的配置项,调度监控脚本605。
在第一监控代理604转移监控脚本605之前,监控脚本605都是由第一监控代理603来调度的。
步骤704:第二监控代理604中的监控任务识别模块6042会周期性的查询第一监控代理603下运行的监控脚本605的运行时间,并根据运行时间识别长时间监控脚本,将识别出的长时间运行脚本移到第二监控代理604下进行调度。
该长时间监控脚本是指在下次调度时该监控脚本的运行时间将会超过第一设定阈值导致无法正常监控。例如,一般根据Zabbix协议,脚本运行时间超过30s将会无法正常获取监控信息,可以将在下次调度时运行时间超过30s的监控脚本识别为长时间监控脚本。
识别方法是,监控任务识别模块6042会周期性的查询监控脚本605的运行时间,当然,监控任务识别模块6042查询监控脚本605的运行时间的周期要远小于监控脚本605的调度周期,监控任务识别模块6042记录监控脚本605在每一次调度过程中运行的时间,若连续n次(n值例如可以设置为3)运行时间都接近于或者等于第一设定阈值,那么监控脚本603在下一次被调度时的运行时间就可能超过第一设定阈值,从而发生停止运行的风险,在这种情况下,监控任务识别模块6042就会将该监控脚本605识别为长时间监控脚本,并将识别出来的长时间监控脚本存储在监控任务信息内存6043中,并将第一监控代理603的配置文件中有关该监控脚本605的配置信息转移到监控任务信息内存6043保存的配置文件中;该配置文件中包括监控项、监控项对应的监控脚本和监控脚本的运行超时时间,其中,将监控脚本的运行超时时间修改为第二设定阈值。
监控任务信息内存6043还保存有每一个监控脚本的详细配置信息。
步骤705:第二监控代理604中的监控任务调度线程6044会获取监控任务信息内存6043中各个监控脚本605的配置信息,按照配置信息统一处理各个监控脚本605的调用周期、运行时间的超时监控,实现计时功能。
步骤706:当监控脚本到达调用周期时,通知任务处理线程调用监控脚本采集监控数据;具体地,监控任务调度线程6044遍历第二监控代理604调度下的各个监控脚本605,并为每一个监控脚本605维护一个状态,包括图4所示的停止状态、等待状态和运行状态。监控任务调度线程6044若遍历到一个监控脚本605,则记录或更新本次遍历到的监控脚本的状态和本次遍历到的监控脚本的状态对应的计数值。计数值的初始值都设置为0。
将监控该脚本605从第一监控代理603转移后,记录为停止状态,之后每当遍历到该监控脚本605时,将其停止状态对应的计数值加1,当该监控脚本605的停止状态对应的计数值达到调用周期时,将该监控脚本605的状态记录为等待状态,并将该监控脚本605的停止状态对应的计数值设置为初始值;在下一次遍历到该监控脚本605时,通知任务处理线程6045调度该监控脚本605采集监控数据,并将该监控脚本605的状态记录为运行状态;每当遍历到该监控脚本605时,将该监控脚本605的运行状态对应的计数值加1;若在该监控脚本605的运行状态对应的计数值未达到第二设定阈值时,接收到任务处理线程6045返回的用于表示运行完毕的消息,则将运行状态对应的计数值设置为初始值,并将该监控脚本605的状态记录为停止状态;若在该监控脚本605的运行状态对应的计数值达到第二设定阈值时,未接收到任务处理线程6045返回的用于表示运行完毕的消息,则通过任务处理线程6045停止调度该监控脚本605采集监控数据,并将该监控脚本605的状态记录为停止状态。
步骤707:第二监控代理中的发送模块6046将采集到的监控数据发送给Zabbix服务器607。
基于同一发明构思,参阅图7所示,本申请实施例还提供了另一种监控系统中的被监控装置700,包括收发器701、处理器702、存储器703,收发器701、存储器703均与处理器702连接,需要说明的是图7所示的各部分之间的连接方式仅为一种可能的示例,也可以是,收发器701与存储器703均与处理器702连接,且收发器701与存储器703之间没有连接,或者,也可以是其他可能的连接方式。
其中,存储器703中存储一组程序,处理器702用于调用存储器703中存储的程序,执行以下操作:
通过第一监控代理调度若干个监控脚本中的第一监控脚本,在第一监控脚本的运行时间不超过第一设定阈值时,通过第一监控代理采集监控数据,并将采集到的监控数据通过收发器701上报给监控服务器;通过第二监控代理监控第一监控脚本的运行时间,根据第一监控脚本的运行时间估计第一监控脚本下一次被调度时运行时间的预算值,在判定所估计的预算值超过第一设定阈值时,接替第一监控代理来调度第一监控脚本,并配置第一监控脚本的运行超时时间为第二设定阈值,第二设定阈值大于第一设定阈值;以及,在第一监控脚本的运行时间不超过第二设定阈值时,通过第一监控脚本采集监控数据,并将采集到的监控数据通过收发器701上报给监控服务器。
可选的,第一设定阈值为监控协议规定的监控脚本允许运行的最大时长
可选的,处理器702具体用于,记录第一监控脚本被第一监控代理每一次调度时的运行时间,根据连续n次记录的运行时间,估计第一监控脚本被第一监控代理第n+1次调度时的运行时间的预算值,n为大于等于1的自然数。
可选的,处理器702还用于,在判定所估计的预算值超过第一设定阈值时,通过第二监控代理将第一监控代理的配置文件中有关第一监控脚本的配置信息转移到第二监控代理的配置文件中;配置文件中包括监控项、监控项对应的监控脚本和监控脚本的运行超时时间;
通过第二监控代理,将从第一监控代理转移的配置文件中的监控脚本的运行超时时间修改为第二设定阈值。
可选的,处理器702还用于,通过第二监控代理遍历由第二监控代理调度的至少一个监控脚本;若遍历到一个监控脚本,则记录或更新本次遍历到的监控脚本的状态和本次遍历到的监控脚本的状态对应的计数值;
状态包括停止状态、等待状态和运行状态。
可选的,处理器702还用于,通过第二监控代理,接替第一监控代理调度第一监控脚本后,将第一监控脚本的状态记录为停止状态;
每当遍历到第一监控脚本时,将第一监控脚本的停止状态对应的计数值加1;
当第一监控脚本的停止状态对应的计数值达到第一监控脚本的调用周期时,将第一监控脚本的状态记录为等待状态,并将第一监控脚本的停止状态对应的计数值设置为初始值;
在下一次遍历到第一监控脚本时,通知任务处理线程调度第一监控脚本采集监控数据,并将第一监控脚本的状态记录为运行状态;
每当遍历到第一监控脚本时,将第一监控脚本的运行状态对应的计数值加1;
若在第一监控脚本的运行状态对应的计数值未达到第二设定阈值时,接收到任务处理线程返回的用于表示运行完毕的消息,则将运行状态对应的计数值设置为初始值,并将第一监控脚本的状态记录为停止状态;
若在第一监控脚本的运行状态对应的计数值达到第二设定阈值时,未接收到任务处理线程返回的用于表示运行完毕的消息,则通过任务处理线程停止调度第一监控脚本采集监控数据,并将第一监控脚本的状态记录为停止状态;停止状态和运行状态对应的计数值的初始值均为0。
在图7中,处理器702可以是中央处理器(英文:central processing unit,缩写:CPU),网络处理器(英文:network processor,缩写:NP)或者CPU和NP的组合。
处理器702还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(英文:application-specific integrated circuit,缩写:ASIC),可编程逻辑器件(英文:programmable logic device,缩写:PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(英文:complex programmable logic device,缩写:CPLD),现场可编程逻辑门阵列(英文:field-programmable gate array,缩写:FPGA),通用阵列逻辑(英文:generic arraylogic,缩写:GAL)或其任意组合。
存储器701可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器701也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory),硬盘(英文:hard diskdrive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD);存储器701还可以包括上述种类的存储器的组合。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (12)

1.一种监控系统中的被监控装置,其特征在于,包括:第一监控代理、第二监控代理和若干个监控脚本;
所述第一监控代理,用于调度所述若干个监控脚本中的第一监控脚本,在所述第一监控脚本的运行时间不超过第一设定阈值时,通过所述第一监控脚本采集监控数据,并将采集到的监控数据上报给监控服务器;
所述第二监控代理,用于根据所述第一监控脚本的运行时间,估计所述第一监控脚本下一次被调度时运行时间的预算值,在判定所估计的预算值超过所述第一设定阈值时,接替所述第一监控代理来调度所述第一监控脚本,并配置所述第一监控脚本的运行超时时间为第二设定阈值,所述第二设定阈值大于所述第一设定阈值;以及
在所述第一监控脚本的运行时间不超过所述第二设定阈值时,通过所述第一监控脚本采集监控数据,并将采集到的监控数据上报给所述监控服务器。
2.如权利要求1所述的被监控装置,其特征在于,所述第二监控代理在根据所述第一监控脚本的运行时间,估计所述第一监控脚本下一次被调度时运行时间的预算值时,具体用于:
记录所述第一监控脚本被所述第一监控代理每一次调度时的运行时间,根据连续n次记录的运行时间,估计所述第一监控脚本被所述第一监控代理第n+1次调度时的运行时间的预算值,n为大于等于1的自然数。
3.如权利要求1或2所述的被监控装置,其特征在于,所述第二监控代理还用于:
在判定所估计的预算值超过所述第一设定阈值时,将所述第一监控代理的配置文件中有关所述第一监控脚本的配置信息转移到所述第二监控代理的配置文件中;所述配置文件中包括监控项、监控项对应的监控脚本和监控脚本的运行超时时间;
所述第二监控代理在配置所述第一监控脚本的运行超时时间为第二设定阈值时,具体用于:
所述第二监控代理将从所述第一监控代理转移的配置文件中的监控脚本的运行超时时间修改为所述第二设定阈值。
4.如权利要求1、2或3所述的被监控装置,其特征在于,所述第二监控代理还用于:
遍历由所述第二监控代理调度的至少一个监控脚本;
若遍历到一个监控脚本,则记录或更新本次遍历到的监控脚本的状态和本次遍历到的监控脚本的状态对应的计数值;
所述状态包括停止状态、等待状态和运行状态。
5.如权利要求4所述的被监控装置,其特征在于,所述第二监控代理还用于:接替所述第一监控代理调度所述第一监控脚本后,将所述第一监控脚本的状态记录为停止状态;
每当遍历到所述第一监控脚本时,将所述第一监控脚本的停止状态对应的计数值加1;
当所述第一监控脚本的停止状态对应的计数值达到所述第一监控脚本的调用周期时,将所述第一监控脚本的状态记录为等待状态,并将所述第一监控脚本的停止状态对应的计数值设置为初始值;
在下一次遍历到所述第一监控脚本时,通知任务处理线程调度所述第一监控脚本采集监控数据,并将所述第一监控脚本的状态记录为运行状态;
每当遍历到所述第一监控脚本时,将所述第一监控脚本的运行状态对应的计数值加1;
若在所述第一监控脚本的运行状态对应的计数值未达到所述第二设定阈值时,接收到所述任务处理线程返回的用于表示运行完毕的消息,则将所述运行状态对应的计数值设置为初始值,并将所述第一监控脚本的状态记录为停止状态;
若在所述第一监控脚本的运行状态对应的计数值达到所述第二设定阈值时,未接收到所述任务处理线程返回的用于表示运行完毕的消息,则通过所述任务处理线程停止调度所述第一监控脚本采集监控数据,并将所述第一监控脚本的状态记录为停止状态;
所述停止状态和所述运行状态对应的计数值的初始值均为0。
6.如权利要求1-5任一项所述的被监控装置,其特征在于,所述第一设定阈值为监控协议规定的监控脚本允许运行的最大时长。
7.一种监控方法,其特征在于,包括:
通过第一监控代理调度若干个监控脚本中的第一监控脚本,在所述第一监控脚本的运行时间不超过第一设定阈值时,通过所述第一监控代理采集监控数据,并将采集到的监控数据上报给监控服务器;
通过第二监控代理监控所述第一监控脚本的运行时间,根据所述第一监控脚本的运行时间估计所述第一监控脚本下一次被调度时运行时间的预算值,在判定所估计的预算值超过所述第一设定阈值时,接替所述第一监控代理来调度所述第一监控脚本,并配置所述第一监控脚本的运行超时时间为第二设定阈值,所述第二设定阈值大于所述第一设定阈值;以及,
在所述第一监控脚本的运行时间不超过所述第二设定阈值时,通过所述第一监控脚本采集监控数据,并将采集到的监控数据上报给所述监控服务器。
8.如权利要求7所述的方法,其特征在于,根据所述第一监控脚本的运行时间,估计所述第一监控脚本的运行时间的预算值,包括:
记录所述第一监控脚本被所述第一监控代理每一次调度时的运行时间,根据连续n次记录的运行时间,估计所述第一监控脚本被所述第一监控代理第n+1次调度时的运行时间的预算值,n为大于等于1的自然数。
9.如权利要求7或8所述的方法,其特征在于,还包括:
在判定所估计的预算值超过所述第一设定阈值时,通过所述第二监控代理将所述第一监控代理的配置文件中有关所述第一监控脚本的配置信息转移到所述第二监控代理的配置文件中;所述配置文件中包括监控项、监控项对应的监控脚本和监控脚本的运行超时时间;
通过所述第二监控代理配置所述第一监控脚本的运行超时时间为第二设定阈值,包括:
通过所述第二监控代理,将从所述第一监控代理转移的配置文件中的监控脚本的运行超时时间修改为所述第二设定阈值。
10.如权利要求6、7或8所述的方法,其特征在于,还包括:通过所述第二监控代理遍历由所述第二监控代理调度的至少一个监控脚本;若遍历到一个监控脚本,则记录或更新本次遍历到的监控脚本的状态和本次遍历到的监控脚本的状态对应的计数值;
所述状态包括停止状态、等待状态和运行状态。
11.如权利要求10所述的方法,其特征在于,还包括:
通过所述第二监控代理,接替所述第一监控代理调度所述第一监控脚本后,将所述第一监控脚本的状态记录为停止状态;
每当遍历到所述第一监控脚本时,将所述第一监控脚本的停止状态对应的计数值加1;
当所述第一监控脚本的停止状态对应的计数值达到所述第一监控脚本的调用周期时,将所述第一监控脚本的状态记录为等待状态,并将所述第一监控脚本的停止状态对应的计数值设置为初始值;
在下一次遍历到所述第一监控脚本时,通知任务处理线程调度所述第一监控脚本采集监控数据,并将所述第一监控脚本的状态记录为运行状态;
每当遍历到所述第一监控脚本时,将所述第一监控脚本的运行状态对应的计数值加1;
若在所述第一监控脚本的运行状态对应的计数值未达到所述第二设定阈值时,接收到所述任务处理线程返回的用于表示运行完毕的消息,则将所述运行状态对应的计数值设置为初始值,并将所述第一监控脚本的状态记录为停止状态;
若在所述第一监控脚本的运行状态对应的计数值达到所述第二设定阈值时,未接收到所述任务处理线程返回的用于表示运行完毕的消息,则通过所述任务处理线程停止调度所述第一监控脚本采集监控数据,并将所述第一监控脚本的状态记录为停止状态;
所述停止状态和所述运行状态对应的计数值的初始值均为0。
12.如权利要求7-11任一项所述的方法,其特征在于,所述第一设定阈值为监控协议规定的监控脚本允许运行的最大时长。
CN201610810463.3A 2016-09-07 2016-09-07 一种监控系统中的被监控装置及监控方法 Active CN106357757B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610810463.3A CN106357757B (zh) 2016-09-07 2016-09-07 一种监控系统中的被监控装置及监控方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610810463.3A CN106357757B (zh) 2016-09-07 2016-09-07 一种监控系统中的被监控装置及监控方法

Publications (2)

Publication Number Publication Date
CN106357757A true CN106357757A (zh) 2017-01-25
CN106357757B CN106357757B (zh) 2019-10-22

Family

ID=57859778

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610810463.3A Active CN106357757B (zh) 2016-09-07 2016-09-07 一种监控系统中的被监控装置及监控方法

Country Status (1)

Country Link
CN (1) CN106357757B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107846442A (zh) * 2017-08-02 2018-03-27 上海数烨数据科技有限公司 一种基于Zabbix主动模式增加定制化通道采集数据的方法
CN108989385A (zh) * 2018-06-05 2018-12-11 陈艳 一种基于Zabbix监控采集自动同步CMDB的实现方法
CN109032811A (zh) * 2018-06-27 2018-12-18 北京金山安全软件有限公司 一种数据监控方法、装置及电子设备
CN112732533A (zh) * 2021-01-27 2021-04-30 西门子工厂自动化工程有限公司 工业监控软件运行脚本程序的方法、装置和可读介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7472247B2 (en) * 2005-04-18 2008-12-30 Research In Motion Limited Method and system for centralized memory management in wireless terminal devices
CN105262608A (zh) * 2015-09-01 2016-01-20 北京百度网讯科技有限公司 用于网络服务的监控方法和装置
CN105491143A (zh) * 2015-12-15 2016-04-13 国云科技股份有限公司 一种软件运行状态监控系统及其实现方法
CN105530145A (zh) * 2015-12-23 2016-04-27 中国电子科技集团公司第三十研究所 一种基于zabbix框架的无代理设备监控网络、组网方法以及监控方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7472247B2 (en) * 2005-04-18 2008-12-30 Research In Motion Limited Method and system for centralized memory management in wireless terminal devices
CN105262608A (zh) * 2015-09-01 2016-01-20 北京百度网讯科技有限公司 用于网络服务的监控方法和装置
CN105491143A (zh) * 2015-12-15 2016-04-13 国云科技股份有限公司 一种软件运行状态监控系统及其实现方法
CN105530145A (zh) * 2015-12-23 2016-04-27 中国电子科技集团公司第三十研究所 一种基于zabbix框架的无代理设备监控网络、组网方法以及监控方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107846442A (zh) * 2017-08-02 2018-03-27 上海数烨数据科技有限公司 一种基于Zabbix主动模式增加定制化通道采集数据的方法
CN108989385A (zh) * 2018-06-05 2018-12-11 陈艳 一种基于Zabbix监控采集自动同步CMDB的实现方法
CN109032811A (zh) * 2018-06-27 2018-12-18 北京金山安全软件有限公司 一种数据监控方法、装置及电子设备
CN109032811B (zh) * 2018-06-27 2021-05-14 北京金山安全软件有限公司 一种数据监控方法、装置及电子设备
CN112732533A (zh) * 2021-01-27 2021-04-30 西门子工厂自动化工程有限公司 工业监控软件运行脚本程序的方法、装置和可读介质
CN112732533B (zh) * 2021-01-27 2024-05-03 西门子工厂自动化工程有限公司 工业监控软件运行脚本程序的方法、装置和可读介质

Also Published As

Publication number Publication date
CN106357757B (zh) 2019-10-22

Similar Documents

Publication Publication Date Title
US9201686B2 (en) Task execution by idle resources in grid computing system
KR102421672B1 (ko) 멀티테넌트 애플리케이션 서버 환경에서 리소스 격리 및 소비를 위한 시스템 및 방법
CN104753994B (zh) 基于集群服务器系统的数据同步方法及其装置
WO2017041556A1 (zh) 虚拟资源调度方法、装置及系统
CN107918556A (zh) 一种定时任务在多个服务器的并行执行方法和装置
CN113924554A (zh) 具有无损一次性处理的自动化云边缘流工作负载分布和双向迁移
US10177984B2 (en) Isolation of problems in a virtual environment
CN106357757A (zh) 一种监控系统中的被监控装置及监控方法
US9122784B2 (en) Isolation of problems in a virtual environment
CN101727356B (zh) 用于在计算中心中实施资源使用策略的方法和装置
US20160048415A1 (en) Systems and Methods for Auto-Scaling a Big Data System
US20120054554A1 (en) Problem isolation in a virtual environment
WO2013107141A1 (zh) 一种用于云计算的策略调度系统和方法
Huang et al. Towards autonomic computing middleware via reflection
CN102457578B (zh) 一种基于事件机制的分布式网络监控方法
CN107491346A (zh) 一种应用的任务处理方法、装置及系统
US11327794B2 (en) Periodic task execution in an automated context
CN107203413A (zh) 一种资源数据调度系统及方法
Demirbaga et al. Autodiagn: An automated real-time diagnosis framework for big data systems
CN107203256A (zh) 一种网络功能虚拟化场景下的节能分配方法与装置
CN105446812A (zh) 一种多任务调度配置方法
CN108154343B (zh) 一种企业级信息系统的应急处理方法及系统
CN115775132A (zh) 离职待办事项的自动生成系统、方法、装置和存储介质
US7681198B2 (en) Workload categorization for detecting role changes in a host computing device
CN100489786C (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
TR01 Transfer of patent right

Effective date of registration: 20220209

Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province

Patentee after: Huawei Cloud Computing Technology Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right