CN102368718A - 一种监控程序的方法及系统 - Google Patents

一种监控程序的方法及系统 Download PDF

Info

Publication number
CN102368718A
CN102368718A CN2011101755950A CN201110175595A CN102368718A CN 102368718 A CN102368718 A CN 102368718A CN 2011101755950 A CN2011101755950 A CN 2011101755950A CN 201110175595 A CN201110175595 A CN 201110175595A CN 102368718 A CN102368718 A CN 102368718A
Authority
CN
China
Prior art keywords
program
client
server
information
download
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
CN2011101755950A
Other languages
English (en)
Other versions
CN102368718B (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.)
Beijing Qizhi Business Consulting Co ltd
Beijing Qihoo Technology Co Ltd
Original Assignee
Qizhi Software Beijing 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 Qizhi Software Beijing Co Ltd filed Critical Qizhi Software Beijing Co Ltd
Priority to CN 201110175595 priority Critical patent/CN102368718B/zh
Priority to CN201310386636.XA priority patent/CN103856368B/zh
Publication of CN102368718A publication Critical patent/CN102368718A/zh
Application granted granted Critical
Publication of CN102368718B publication Critical patent/CN102368718B/zh
Active - Reinstated legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施例公开了一种监控程序的方法及系统;其中,该方法包括:当客户端执行程序下载操作,如果下载失败,则向服务器发送程序下载失败信息;和/或,当客户端执行程序安装操作,如果安装失败,则向服务器发送程序安装失败信息;和/或当客户端执行程序运行操作,如果出现运行出现异常,则向服务器发送程序运行异常信息;服务器根据客户端发送的失败或异常信息统计程序下载失败数量、程序安装失败数量、程序运行异常的客户端数量中的一个或者多个;根据上述所统计的数量与相应预设阈值的比较结果,对所述程序进行相应处理。采用本申请实施例的方法及系统,能够有效降低所述下载失败或安装失败的程序对于客户端的影响,大大降低了客户端的出错概率。

Description

一种监控程序的方法及系统
技术领域
本申请涉及计算机技术领域,特别是涉及一种监控程序的方法及系统。
背景技术
在目前计算机的各种应用过程中,常常会发现在网络中的各种操作系统、应用程序等存在问题或漏洞,而这些问题或漏洞会使用户在使用操作系统或程序时出现干扰,或者导致程序不能正常使用,或者导致程序安全性能降低。
现有技术中,一些操作系统或应用程序的专门网站会定期发布一段时间内的程序,然而,发明人在对现有技术的研究过程中发现,现有技术中专门网站发布的程序往往存在客户端无法下载、下载后无法安装或者程序运行出现异常的情况,而这种情况如果不能及时发现并做出相应处理,可能导致客户端的使用不便或者对计算机系统或应用程序构成严重的威胁,甚至有些时候会导致客户端的操作系统或程序出现错误或死机等现象,直接影响客户端的正常运行。
发明内容
本申请实施例提供了一种监控程序的方法及系统,以解决现有技术中由于程序无法下载或安装导致的客户端存在的问题。
为了解决上述技术问题,本申请实施例公开了如下技术方案:
一种监控程序的方法,包括:
当客户端执行程序下载操作,如果下载失败,则向服务器发送程序下载失败信息;和/或,当客户端执行程序安装操作,如果安装失败,则向服务器发送程序安装失败信息;和/或,当客户端执行程序运行操作,如果出现运行出现异常,则向服务器发送程序运行异常信息;
服务器根据客户端发送的失败或异常信息统计程序下载失败数量、程序安装失败数量、程序运行异常的客户端数量中的一个或者多个;当上述所统计的数量中的一个或者多个高于相应预设阈值时,对所述程序进行相应处理。
优选的,还包括:
当客户端对所述程序下载成功时,向服务器发送下载成功信息;和/或,当客户端对所述程序安装成功时,向服务器发送安装成功信息;和/或,当客户端对所述程序运行正常时,向服务器发送运行正常信息。
优选的,服务器根据所得到的信息统计程序下载正常率、程序安装正常率、程序运行正常率中的一个或者多个,并当上述正常率中的一个或多个低于相应预设阈值时,对所述程序进行相应处理。
优选的,所述的统计包括服务器按集合进行统计,其中所述集合按客户端的属性将客户端划分;并根据所述集合内的统计结果,在所述集合内通过服务器或客户端对所述程序进行相应处理。
优选的,所述的集合包括客户端所属软件环境集合,客户端所属硬件配置集合,客户端所属地域集合。
优选的,所述客户端执行的程序下载操作包括:所述客户端从服务器或程序发布的专门网站下载所述程序。
优选的,通过以下方式判断所述程序是否下载成功:
获取程序下载链接地址,如果该程序下载链接地址无法访问,则表明程序下载失败;否则,
访问程序下载链接地址,如果获取的程序文件无法打开、解压或文件格式无法识别,则表明程序下载失败。
优选的,通过以下方式判断所述程序是否安装成功:
利用注册表中的键值信息判断所述程序是否安装成功;
和/或,利用已下载程序的相关信息判断该程序是否安装成功。
优选的,判断所述程序是否运行异常的方式包括:
利用堆栈信息判断所述程序是否运行异常;
和/或,利用报错日志判断所述程序是否运行异常;
和/或,通过查看程序所占系统资源是否超过阈值判断程序是否运行异常。
优选的,当程序下载失败数量、程序安装失败数量、程序运行异常的客户端数量中的一个或者多个高于预设阈值时,对所述程序进行相应的处理包括:
服务器调整程序下发策略,暂时关闭所述程序通道;
对该程序进行调试,当调试完成后开放所述程序的下载通道。
优选的,当程序下载失败数量高于预设阈值时,对所述程序进行相应的处理包括:
服务器通知未下载客户端暂停下载所述程序。
优选的,当程序安装失败数量高于预设阈值时,对所述程序进行相应的处理包括:
服务器通知未下载客户端暂停下载所述程序,或通知未安装客户端暂停安装所述程序,或通知未安装客户端对所述程序进行删除操作,或通知安装失败客户端进行更新操作,或通知安装失败客户端进行升级操作。
优选的,当程序运行异常的客户端数量高于预设阈值时,对所述程序进行相应的处理包括:
服务器通知未下载客户端暂停下载所述程序,或通知未安装客户端暂停安装所述程序,或通知未安装客户端对所述程序进行删除操作,或通知已安装客户端对所述程序进行卸载操作,或通知已安装客户端对所述程序进行替换或者覆盖操作,或通知程序运行异常客户端进行升级操作。
优选的,在所述客户端执行程序下载操作前,所述服务器获取程序。
优选的,所述服务器获取程序的方式包括:
采用第三方工具定期刷新程序发布页面;
当所述程序发布页面存在更新信息时,判断该更新消息中是否包含程序更新链接;如果否,则返回执行刷新操作;否则,
访问所述程序更新链接,下载并抓取所述程序文件。
优选的,所述的程序包括应用软件或漏洞补丁。
一种实现监控程序的系统,包括:客户端和服务器;其中,所述客户端用于当客户端执行程序下载操作,如果下载失败,则向服务器发送程序下载失败信息;和/或,当客户端执行程序安装操作,如果安装失败,则向服务器发送程序安装失败信息;和/或,当客户端执行程序运行操作,如果出现运行出现异常,则向服务器发送程序运行异常信息;
所述服务器用于向所述客户端下发程序,并接收所述客户端发送的程序下载失败信息、程序安装失败信息或程序运行异常信息中的一个或者多个;当上述所统计的数量中的一个或者多个高于相应预设阈值时,对所述程序进行相应处理。
优选的,所述的客户端还用于当客户端对所述程序下载成功时,向服务器发送下载成功信息;和/或,当客户端对所述程序安装成功时,向服务器发送安装成功信息;和/或,当客户端对所述程序运行正常时,向服务器发送运行正常信息。
所述服务器还用于服务器根据所得到的信息统计程序下载正常率、程序安装正常率、程序运行正常率中的一个或者多个,并当上述正常率中的一个或多个低于相应预设阈值时,对所述程序进行相应处理。
优选的,所述客户端包括:
获取程序下载链接地址的获取模块,如果该获取模块获取到的程序下载链接地址无法访问,则表明所述程序下载失败;
访问程序下载链接地址的访问模块,如果该访问模块访问所述地址后获取的程序文件无法打开、解压或文件格式无法识别,则表明所述程序下载失败。
优选的,所述客户端包括:
第一判断模块,用于利用注册表中的键值信息判断所述程序是否安装成功;第二判断模块,用于利用已下载程序的相关信息判断该程序是否安装成功。
优选的,所述客户端包括:
第三判断模块,用于利用堆栈信息判断所述程序是否运行异常;
第四判断模块,用于利用报错日志判断所述程序是否运行异常;
第五判断模块,用于通过查看程序所占系统资源是否超过阈值判断程序是否运行异常。
优选的,所述服务器包括:
第一处理模块,用于调整程序下发策略,暂时关闭所述程序通道;
第二处理模块,用于对所述程序进行调试,当调试完成后开放所述程序的下载通道。
优选的,所述服务器还包括:获取程序的获取单元。
由上述实施例可以看出,本申请实施例中,当客户端下载程序失败后向服务器反馈下载失败信息,当客户端安装程序失败后向服务器反馈安装失败信息,或当客户端程序运行异常时,向服务器发送运行异常信息,服务器根据接收到的信息统计程序的下载失败数量、安装失败数量、程序运行异常的客户端的数量之中的一个或多个,然后与相应预设的阈值进行比较,如果高于所述预设阈值,则对所述程序进行相应处理,从而能够有效降低所述下载失败或安装失败的程序对于客户端的影响,大大降低了客户端的出错概率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一种监控程序的方法的流程示意图;
图2为本申请一种监控程序的方法的判断程序是否下载成功的流程示意图;
图3为本申请一种监控程序的方法的第一实施例流程图;
图4为本申请一种监控程序的方法的第二实施例流程示意图;
图5为本申请第二实施例中获取程序的方法流程示意图;
图6为本申请监控程序的系统结构示意框图。
具体实施方式
本发明的基本思想在于当客户端下载程序失败后向服务器反馈下载失败信息,当客户端安装程序失败后向服务器反馈安装失败信息,或当客户端程序运行异常时,向服务器发送运行异常信息,服务器根据接收到的信息统计程序的下载失败数量、安装失败数量、程序运行异常的客户端的数量之中的一个或多个,然后与相应预设的阈值进行比较,如果高于所述预设阈值,则对所述程序进行相应处理,从而能够有效降低所述下载失败或安装失败的程序对于客户端的影响,大大降低了客户端的出错概率。。
为了使本技术领域的人员更好地理解本申请实施例中的技术方案,并使本申请实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本申请实施例中技术方案作进一步详细的说明。
参见图1,为本申请一种监控程序的方法的流程示意图;
步骤50:当客户端执行程序下载操作,如果下载失败,则向服务器发送程序下载失败信息;和/或,当客户端执行程序安装操作,如果安装失败,则向服务器发送程序安装失败信息;和/或,当客户端执行程序运行操作,如果出现运行出现异常,则向服务器发送程序运行异常信息;
其中,所述的程序包括应用软件和漏洞补丁,应用软件例如游戏软件、视频播放软件等,漏洞补丁例如游戏软件或操作系统的版本升级补丁或错误补正补丁等。
具体的,在实际操作中,客户端可从服务器下载程序,也可从程序发布的专门网站下载,对此本文不作具体限定;其中,判断程序是否下载成功可通过以下方式实现,但并不局限于此,如图2所示:
S111:获取程序下载链接地址,如果该程序下载链接地址无法访问,则表明程序下载失败;否则,
S112:访问程序下载链接地址,如果获取的程序文件无法打开、解压或文件格式无法识别,则表明程序下载失败。
此外,所述客户端向服务器发送的程序下载失败信息中可包含但不局限于:客户端的IP地址、物理地址、下载失败的程序对应的本地程序的版本号、程序名称信息、程序类型信息、程序等级信息、程序发布日期信息、程序公告URL(Universal Resource Locator,统一资源定位符)信息、程序的大小信息、程序运行参数信息、程序的版本信息、程序描述信息等。
具体的,所述程序安装是否成功的判断方式可采用如下两种方式中的任意一种,但不局限于此:
A:利用注册表中的键值信息判断所述程序是否安装成功;
例如,若要判断程序KB979099是否安装工程,首先在注册表的以下项目中查询是否有包含KB979099的键值:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages\
如果该程序安装成功,则上述注册表的项目中必然存在类似Package_for_KB979099_RTM~31bf3856ad364e35~x86~~6.1.1.0的注册键存在,此键中为所述程序的安装信息;以此即可判断所述程序已安装成功,否则,表明该程序安装失败。
B:利用已下载程序的相关信息判断该程序是否安装成功;
具体的,可利用所述已下载程序的信息中的文件版本号或文件名等来进行判断,但不局限于此:例如若该已下载程序为更新程序,其作用是使其对应的应用程序更新至版本为10.1.102.64;若要判断该程序是否安装成功,则在该应用程序所在盘符目录下查询版本为10.1.102.64的文件是否存在即可,如果所述文件存在,则可确认所述程序已安装成功;否则,表明该程序安装失败。
值得注意的是,在所述客户端向服务器发送的程序安装失败信息中也可包含但不局限于:客户端的IP地址、物理地址、下载失败的程序对应的本地程序的版本号、程序名称信息、程序类型信息、程序等级信息、程序发布日期信息、程序公告URL(Universal Resource Locator,统一资源定位符)信息、程序的大小信息、程序运行参数信息、程序的版本信息、程序描述信息等。
具体的,所述程序运行是否异常的判断方式可采用如下三种方式中的任意一种,但不局限于此:
C:利用堆栈信息判断所述程序是否运行异常;
当程序运行出现异常后,比如蓝屏或者程序运行一段时间后出现错误不能打开等情况,系统堆栈里都会有相应参数一一对应,通过跟踪此程序对应的相应参数就能确认所述程序运行是否异常。
D:利用报错日志判断所述程序是否运行异常;
程序运行错误会在系统的报错日志里面进行记录,通过对报错日志的跟踪查看就能判断程序是否运行异常。
E:通过查看程序所占系统资源是否超过阈值判断程序是否运行异常。
具体的,可以通过建立一个监控软件,查看相关程序所占系统资源是否超过阈值来判断程序是否运行异常,比如,当某程序运行时,其占用的内存资源始终超过80%s,导致系统缓慢,那么就可以判断此程序运行异常。
步骤60:服务器根据客户端发送的失败或异常信息统计程序下载失败数量、程序安装失败数量、程序运行异常的客户端数量中的一个或者多个;当上述所统计的数量中的一个或者多个高于相应预设阈值时,对所述程序进行相应处理。
实际中,据所述客户端发送的程序下载失败信息或程序安装失败信息或运行异常信息,所述服务器即可统计出所述程序总的下载失败次数,和/或总的安装失败次数,和/或总的运行异常次数。
根据步骤50得到信息,服务器进行相应的统计。比如,当步骤50只发送了程序下载失败信息,那么服务器就只统计程序下载失败数量,然后根据预设阈值进行判断,是否应该进行相应处理;
或者,当步骤50只发送了程序安装失败信息,那么服务器就只统计程序安装失败数量,然后根据预设阈值进行判断,是否应该进行相应处理;
或者,当步骤50只发送了程序运行异常信息,那么服务器就只统计程序运行异常客户端的数量,然后根据预设阈值进行判断,是否应该进行相应处理;
或者,当步骤50只发送了程序下载失败信息和程序安装失败信息,那么服务器既可以只统计程序下载失败数量和程序安装失败数量之中的一个,也可以两个都统计,然后根据各自对应的阈值判断是否应该进行相应处理。
或者,当步骤50发送了程序下载失败信息、程序安装失败信息和程序运行异常信息,那么服务器可以只统计程序下载失败数量、程序安装失败数量和程序运行异常客户端的数量中的一个或者多个,然后根据各自相应的阈值判断是否应该进行相应处理。
其中,所述的阈值一般根据服务器所要统计的结果的个数进行设定,比如当服务器只统计上述三个数量中的一个,那么只针对统计的对象设定相应阈值;如果统计多个,则针对所统计的对象分别设定相应的阈值。例如,当只统计下载失败数量时,阈值可以设定为300,当下载失败数量超过了300,就对所述程序进行相应处理;
或者当统计下载失败数量,程序安装失败数量和程序运行异常客户端的数量时,针对下载失败数量的阈值可以设定为300,针对程序安装失败的数量的阈值可以设定为200,针对程序运行异常客户端的数量的阈值可以设定为150,当下载失败数量,程序安装失败数量和程序运行异常客户端的数量其中的一个或几个分别高于相应阈值时,就可以对其进行相应处理。
当然,本领域普通技术人员很容易了解,其他情况也可以类似处理。
在实际应用中,还可以使服务器按集合进行统计,其中所述集合按客户端的属性将客户端划分;并根据所述集合内统计结果,在所述集合对所述程序进行相应处理。所述的集合包括客户端所属软件境集合,比如windows,linux就是两个软件环境集合,客户端所属硬件配置集合,比如按显卡配置,内存配置分类的集合,客户端所属地域集合,比如华北地区集合。当然还可以包括其他类型的集合。并根据集合内的统计结果,在所述集合内通过服务器或客户端对所述程序进行相应处理。
比如,在实际应用中,服务器可以有多组,也可以针对不同区域用不同的服务器提供服务。在华北地区集合内,由管理华北区的服务器进行统计,当服务器统计的下载失败量、安装失败量、运行异常的客户端数量中的一个或多个高于相应阈值时,则可以由华北地区服务器对相应程序进行相应操作。
当服务器按某款显卡的用户划分的一个集合,在这个集合的用户中,如果某个程序的下载失败量、安装失败量、运行异常的客户端数量中的一个或多个高于相应阈值时,则在这个集合内通过服务器或客户端对所述程序进行相应处理,例如带有某款显卡的客户端下载某超大型游戏,但显卡不支持此超大型游戏,那么服务器就可以暂停带有此款显卡的客户端去下载此款超大型游戏,或者通知未安装此款超大型游戏的客户端停止下载,或者服务器通知未安装此款超大型游戏的客户端停止安装,或者服务器主动停止在未安装此款超大型游戏的客户端进行安装,或者服务器通知已安装此款超大型游戏的客户端进行卸载,或者服务器主动在已安装此款超大型游戏的客户端进行卸载等。
在上述的相应处理可以包括但不限于卸载、删除、更新、替换、覆盖所述程序等方式;也可以由服务器通知客户端进行卸载、删除、更新、替换、覆盖所述程序等方式;还可以采用其他方式。
比如,当程序下载失败数量、程序安装失败数量、程序运行异常的客户端数量中的一个或者多个高于预设阈值时,对所述程序进行相应的处理包括:
服务器调整程序下发策略,暂时关闭所述程序通道;
对该程序进行调试,当调试完成后开放所述程序的下载通道。
又比如,当程序下载失败数量高于预设阈值时,对所述程序进行相应的处理包括:
服务器通知未下载客户端暂停下载所述程序。
又比如,当程序安装失败数量高于预设阈值时,对所述程序进行相应的处理包括:
服务器通知未下载客户端暂停下载所述程序,或通知未安装客户端暂停安装所述程序,或通知未安装客户端对所述程序进行删除操作,或通知安装失败客户端进行更新操作,或通知安装失败客户端进行升级操作。
又比如,当程序运行异常的客户端数量高于预设阈值时,对所述程序进行相应的处理包括:
服务器通知未下载客户端暂停下载所述程序,或通知未安装客户端暂停安装所述程序,或通知未安装客户端对所述程序进行删除操作,或通知已安装客户端对所述程序进行卸载操作,或通知已安装客户端对所述程序进行替换或者覆盖操作,或通知程序运行异常客户端进行升级操作。
其中升级操作可以通过安装补丁实现,当客户端安装失败或者运行出现异常等状况后,服务器可以要求客户端安装该程序的升级补丁或者漏洞补丁来修正安装失败或者是运行异常等状况。
其中,所述更新操作包括:如果所述补丁包含的信息中包括了其对应的更新补丁下载统一资源定位符URL,则通知客户端根据所述更新补丁下载URL访问并下载该更新补丁,再运行该更新补丁的安装程序,完成所述补丁的更新操作。所述删除操作包括:通知第三方软件执行该补丁的删除操作。所述卸载操作包括:执行所述补丁自身的卸载程序或系统预设的卸载程序,完成该补丁的卸载操作。
当然,本领域普通技术人员很容易了解,对所述程序的相应处理还可以存在多种方式。
优选的,在图1的基础上,本申请还包括如下情况:
当客户端对所述程序下载成功时,向服务器发送下载成功信息;和/或,当客户端对所述程序安装成功时,向服务器发送安装成功信息;和/或,当客户端对所述程序运行正常时,向服务器发送运行正常信息。
这样本申请就能统计整体下载数量,和/或整体安装数量,和/或运行程序的客户端的数量,并可以根据得到的整体数量更为精确的对程序进行相应处理。
优选的,在得到整体数量后,还包括:服务器根据所得到的信息统计程序下载正常率、程序安装正常率、程序运行正常率中的一个或者多个,并当上述正常率中的一个或多个低于相应预设阈值时,对所述程序进行相应处理。
该步骤的方法与图1基本类似。不同之处在于:所述阈值为比率,并且所述的正常率低于所述相应阈值才对所述程序进行相应处理。
比如,当程序下载正常率、程序安装正常率、程序运行正常率中的一个或者多个低于预设阈值时,对所述程序进行相应的处理包括:
服务器调整程序下发策略,暂时关闭所述程序通道;
对该程序进行调试,当调试完成后开放所述程序的下载通道。
又比如,当程序下载正常率低于预设阈值时,对所述程序进行相应的处理包括:
服务器通知未下载客户端暂停下载所述程序。
又比如,当程序安装正常率低于预设阈值时,对所述程序进行相应的处理包括:
服务器通知未下载客户端暂停下载所述程序,或通知未安装客户端暂停安装所述程序,或通知未安装客户端对所述程序进行删除操作,或通知安装失败客户端进行更新操作,或通知安装失败客户端进行升级操作。
又比如,当程序运行正常率低于预设阈值时,对所述程序进行相应的处理包括:
服务器通知未下载客户端暂停下载所述程序,或通知未安装客户端暂停安装所述程序,或通知未安装客户端对所述程序进行删除操作,或通知已安装客户端对所述程序进行卸载操作,或通知已安装客户端对所述程序进行替换或者覆盖操作,或通知程序运行异常客户端进行升级操作。
当然,本领域普通技术人员很容易了解,对所述程序的相应处理还可以存在多种方式,下面举例说明,但不局限于此:
例如:预设程序下载正常率阈值为95%、程序安装正常率阈值是80%,运行正常率是85%,则当服务器分析的数据显示该程序的下载正常率低于95%、和/或该程序的安装正常率低于80%时,和/或该程序的运行正常率低于85%时就对该程序进行相应处理,具体可以为:调整程序下发策略,如暂时让用户扫描不到该程序;然后对该程序进行调试,当调试完成之后再允许此程序被客户端扫描并下载安装;具体处理方式还可以采用现有的其他方式进行,本文在此不再赘述。
本申请还可以按监控需求在指定时间段内统计程序的相关信息,比如,通过服务器同时2011年3月1日至2011年4月30日之间的程序的相关信息。
参见图3,为本申请一种监控程序方法的第一实施例流程图:
步骤110:客户端执行程序下载操作,如果下载失败,则向服务器发送程序下载失败信息;
步骤120:客户端执行程序安装操作,如果安装失败,则向服务器发送程序安装失败信息;
步骤130:客户端运行程序,如果程序运行异常,则向客户端发送运行异常信息
步骤140:服务器分别统计程序下载正常率,和/或程序安装正常率,和/或运行正常率;并当所述下载正常率,和/或程序安装正常率,和/或运行正常率低于相应预设阈值时,对所述程序进行相应处理。
此外,参见图4,为本申请一种监控程序方法的第二实施例流程图;该实施例的方法与上述实施例的方法步骤基本类似,不同之处在于,该方法在步骤110之前还包括:
步骤100:服务器获取程序;其中,该获取方式可采用人工方式和非人工方式皆可;具体的获取方式可通过下述步骤实现,但不局限于此,如图5所示:
S101:采用第三方工具定期刷新程序发布页面;
例如,采用刷屏程序定期刷新微软的程序发布页面;也可设置为在程序发布之后一段时间内刷新所述程序发布页面;
S102:当所述程序发布页面存在更新信息时,判断该更新消息中是否包含程序更新链接;如果是,则执行步骤S103,否则返回执行步骤S101;
具体的判断过程采用现有技术中页面关键字的判断技术实现:例如分析当前页面的源代码信息,其中如果包含了关键字“更新”等,即可确认当前页面包含了程序更新链接;具体内容本文不再赘述;
S103:访问所述程序更新链接,下载并抓取所述程序文件。
可以看出,采用本申请上述实施例的方法,通过统计程序的下载失败数量、安装失败数量、程序运行异常客户端数量率之中的一个,然后将其与预设的阈值进行比较,如果高于所述相应预设阈值,或者,通过统计程序的下载正常率、安装正常率、程序运行正常率之中的一个,然后将其与预设的阈值进行比较,如果低于所述相应预设阈值者则对所述程序进行相应处理,从而能够有效降低所述程序的不良状态对于客户端的影响,大大降低了客户端的出错概率。
与本申请监控程序的方法实施例相对应,本申请还提供了实现该方法的系统的实施例。
参见图6、为本申请监控程序的系统结构示意图:该系统500,包括:客户端510和服务器520;其中,所述客户端510用于执行程序下载操作,如果下载失败,则向服务器520发送程序下载失败信息;果安装失败,则向服务器520发送程序安装失败信息;如果程序运行异常,则向服务器520发送程序运行异常信息;
所述服务器520用于向所述客户端510下发程序,并根据接收到的客户端510发送的信息统计程序下载失败数量、程序安装失败数量、程序运行异常的客户端数量中的一个或者多个;根据上述所统计的数与相应预设阈值的比较结果,对所述程序进行相应处理。
其中,所述客户端还可以用于当客户端对所述程序下载成功时,向服务器发送下载成功信息;和/或,当客户端对所述程序安装成功时,向服务器发送安装成功信息;和/或,当客户端对所述程序运行正常时,向服务器发送运行正常信息。
所述的服务器还可以用于服务器根据所得到的信息统计程序下载正常率、程序安装正常率、程序运行正常率中的一个或者多个,并当上述正常率中的一个或多个低于相应预设阈值时,对所述程序进行相应处理。
其中,所述客户端510包括(图6中未示出):获取程序下载链接地址的获取模块,如果该获取模块获取到的程序下载链接地址无法访问,则表明所述程序下载失败;访问程序下载链接地址的访问模块,如果该访问模块访问所述地址后获取的程序文件无法打开、解压或文件格式无法识别,则表明所述程序下载失败。
其中,所述客户端510还包括(图6中未示出):第一判断模块,用于利用注册表中的键值信息判断所述程序是否安装成功;第二判断模块,用于利用已下载程序的相关信息判断该程序是否安装成功。
此外,所述客户端510还包括(图6中未示出):第三判断模块,用于利用堆栈信息判断所述程序是否运行异常;第四判断模块,用于利用报错日志判断所述程序是否运行异常;第五判断模块,用于通过查看程序所占系统资源是否超过阈值判断程序是否运行异常。
值得注意的是,所述服务器520对程序执行的相应处理包括卸载、删除、更新、替换或覆盖所述程序,也包括通知客户端510执行卸载、删除、更新、替换或覆盖等操作。
此外,所述服务器520包括(图5中未示出):第一处理模块,用于调整程序下发策略,暂时关闭所述程序通道;第二处理模块,用于对所述程序进行调试,当调试完成后开放所述程序的下载通道。
除此之外,所述服务器520还包括(图5中未示出):获取程序的获取单元。其中,所述获取单元获取程序的方式包括但不限于:利用第三方工具定期刷新程序发布页面;当所述程序发布页面存在更新信息时,判断该更新消息中是否包含程序更新链接;如果否,则返回执行刷新操作;否则,访问所述程序更新链接,下载并抓取所述程序文件。
本领域的技术人员可以清楚地了解到本申请实施例中的技术可借助程序加必需的通用硬件平台的方式来实现。基于这样的理解,本申请实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以程序产品的形式体现出来,该计算机程序产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述的本申请实施方式,并不构成对本申请保护范围的限定。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请的保护范围之内。

Claims (22)

1.一种监控程序的方法,其特征在于,包括:
当客户端执行程序下载操作,如果下载失败,则向服务器发送程序下载失败信息;和/或,当客户端执行程序安装操作,如果安装失败,则向服务器发送程序安装失败信息;和/或,当客户端执行程序运行操作,如果出现运行出现异常,则向服务器发送程序运行异常信息;
服务器根据客户端发送的失败或异常信息统计程序下载失败数量、程序安装失败数量、程序运行异常的客户端数量中的一个或者多个;当上述所统计的数量中的一个或者多个高于相应预设阈值时,对所述程序进行相应处理。
2.根据权利要求1所述的方法,其特征在于,还包括:
当客户端对所述程序下载成功时,向服务器发送下载成功信息;和/或,当客户端对所述程序安装成功时,向服务器发送安装成功信息;和/或,当客户端对所述程序运行正常时,向服务器发送运行正常信息。
3.根据权利要求2所述的方法,其特征在于:
服务器根据所得到的信息统计程序下载正常率、程序安装正常率、程序运行正常率中的一个或者多个,并当上述正常率中的一个或多个低于相应预设阈值时,对所述程序进行相应处理。
4.根据权利要求1所述的方法,其特征在于:
所述的统计包括服务器按集合进行统计,其中所述集合按客户端的属性将客户端划分;并根据所述集合内的统计结果,在所述集合内通过服务器或客户端对所述程序进行相应处理。
5.根据权利要求4所述的方法,其特征在于:
所述的集合包括客户端所属软件环境集合,客户端所属硬件配置集合,客户端所属地域集合。
6.根据权利要求1所述的方法,其特征在于,所述客户端执行的程序下载操作包括:所述客户端从服务器或程序发布的专门网站下载所述程序。
7.根据权利要求6所述的方法,其特征在于,通过以下方式判断所述程序是否下载成功:
获取程序下载链接地址,如果该程序下载链接地址无法访问,则表明程序下载失败;否则,
访问程序下载链接地址,如果获取的程序文件无法打开、解压或文件格式无法识别,则表明程序下载失败。
8.根据权利要求1所述的方法,其特征在于,通过以下方式判断所述程序是否安装成功:
利用注册表中的键值信息判断所述程序是否安装成功;
和/或,利用已下载程序的相关信息判断该程序是否安装成功。
9.根据权利要求1所述的方法,其特征在于,判断所述程序是否运行异常的方式包括:
利用堆栈信息判断所述程序是否运行异常;
和/或,利用报错日志判断所述程序是否运行异常;
和/或,通过查看程序所占系统资源是否超过阈值判断程序是否运行异常。
10.根据权利要求1所述的方法,其特征在于:
当程序下载失败数量、程序安装失败数量、程序运行异常的客户端数量中的一个或者多个高于预设阈值时,对所述程序进行相应的处理包括:
服务器调整程序下发策略,暂时关闭所述程序通道;
对该程序进行调试,当调试完成后开放所述程序的下载通道。
11.根据权利要求1所述的方法,其特征在于:
当程序下载失败数量高于预设阈值时,对所述程序进行相应的处理包括:
服务器通知未下载客户端暂停下载所述程序。
12.根据权利要求1所述的方法,其特征在于:
当程序安装失败数量高于预设阈值时,对所述程序进行相应的处理包括:
服务器通知未下载客户端暂停下载所述程序,或通知未安装客户端暂停安装所述程序,或通知未安装客户端对所述程序进行删除操作,或通知安装失败客户端进行更新操作,或通知安装失败客户端进行升级操作。
13.根据权利要求1所述的方法,其特征在于:
当程序运行异常的客户端数量高于预设阈值时,对所述程序进行相应的处理包括:
服务器通知未下载客户端暂停下载所述程序,或通知未安装客户端暂停安装所述程序,或通知未安装客户端对所述程序进行删除操作,或通知已安装客户端对所述程序进行卸载操作,或通知已安装客户端对所述程序进行替换或者覆盖操作,或通知程序运行异常客户端进行升级操作。
14.根据权利要求1所述的方法,其特征在于,该方法还包括:
在所述客户端执行程序下载操作前,所述服务器获取程序。
15.根据权利要求14所述的方法,其特征在于,所述服务器获取程序的方式包括:
采用第三方工具定期刷新程序发布页面;
当所述程序发布页面存在更新信息时,判断该更新消息中是否包含程序更新链接;如果否,则返回执行刷新操作;否则,
访问所述程序更新链接,下载并抓取所述程序文件。
16.根据权利要求1至15所述的方法,其特征在于:
所述的程序包括应用软件或漏洞补丁。
17.一种实现监控程序的系统,其特征在于,包括:客户端和服务器;其中,所述客户端用于当客户端执行程序下载操作,如果下载失败,则向服务器发送程序下载失败信息;和/或,当客户端执行程序安装操作,如果安装失败,则向服务器发送程序安装失败信息;和/或,当客户端执行程序运行操作,如果出现运行出现异常,则向服务器发送程序运行异常信息;
所述服务器用于向所述客户端下发程序,并接收所述客户端发送的程序下载失败信息、程序安装失败信息或程序运行异常信息中的一个或者多个;当上述所统计的数量中的一个或者多个高于相应预设阈值时,对所述程序进行相应处理。
18.根据权利要求17所述的系统,其特征在于,所述客户端包括:
获取程序下载链接地址的获取模块,如果该获取模块获取到的程序下载链接地址无法访问,则表明所述程序下载失败;
访问程序下载链接地址的访问模块,如果该访问模块访问所述地址后获取的程序文件无法打开、解压或文件格式无法识别,则表明所述程序下载失败。
19.根据权利要求17所述的系统,其特征在于,所述客户端包括:
第一判断模块,用于利用注册表中的键值信息判断所述程序是否安装成功;第二判断模块,用于利用已下载程序的相关信息判断该程序是否安装成功。
20.根据权利要求17所述的系统,其特征在于,所述客户端包括:
第三判断模块,用于利用堆栈信息判断所述程序是否运行异常;
第四判断模块,用于利用报错日志判断所述程序是否运行异常;
第五判断模块,用于通过查看程序所占系统资源是否超过阈值判断程序是否运行异常。
21.根据权利要求17所述的系统,其特征在于,所述服务器包括:
第一处理模块,用于调整程序下发策略,暂时关闭所述程序通道;
第二处理模块,用于对所述程序进行调试,当调试完成后开放所述程序的下载通道。
22.根据权利要求17至21任意一项所述的系统,其特征在于,所述服务器还包括:获取程序的获取单元。
CN 201110175595 2011-06-27 2011-06-27 一种监控程序的方法及系统 Active - Reinstated CN102368718B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN 201110175595 CN102368718B (zh) 2011-06-27 2011-06-27 一种监控程序的方法及系统
CN201310386636.XA CN103856368B (zh) 2011-06-27 2011-06-27 一种监控程序的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110175595 CN102368718B (zh) 2011-06-27 2011-06-27 一种监控程序的方法及系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201310386636.XA Division CN103856368B (zh) 2011-06-27 2011-06-27 一种监控程序的方法及系统

Publications (2)

Publication Number Publication Date
CN102368718A true CN102368718A (zh) 2012-03-07
CN102368718B CN102368718B (zh) 2013-11-06

Family

ID=45761268

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110175595 Active - Reinstated CN102368718B (zh) 2011-06-27 2011-06-27 一种监控程序的方法及系统

Country Status (1)

Country Link
CN (1) CN102368718B (zh)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103235728A (zh) * 2013-03-20 2013-08-07 青岛海信移动通信技术股份有限公司 Android终端中预置第三方应用的安装方法和装置
CN103297761A (zh) * 2013-06-03 2013-09-11 贝壳网际(北京)安全技术有限公司 视频解析的监控方法及系统
CN103365732A (zh) * 2012-03-29 2013-10-23 宇龙计算机通信科技(深圳)有限公司 一种应用程序异常的处理方法、系统及移动终端
CN103514086A (zh) * 2013-09-22 2014-01-15 广东威创视讯科技股份有限公司 一种软件错误报告的提取方法及装置
CN103577215A (zh) * 2012-08-10 2014-02-12 腾讯科技(深圳)有限公司 一种软件卸载安装方法及系统
CN103856537A (zh) * 2012-12-05 2014-06-11 中国移动通信集团公司 获取应用程序在终端上运行状态的方法、平台和系统
CN103914354A (zh) * 2012-12-31 2014-07-09 北京新媒传信科技有限公司 数据库故障修复的方法和系统
WO2014154061A1 (zh) * 2013-08-27 2014-10-02 中兴通讯股份有限公司 终端及其升级方法、服务器、系统及计算机存储介质
CN104125299A (zh) * 2014-08-08 2014-10-29 携程计算机技术(上海)有限公司 Ota网站的系统应用的设置系统及方法
CN104468938A (zh) * 2013-09-12 2015-03-25 中国移动通信集团浙江有限公司 一种信息采集处理方法以及相关装置、移动终端和服务器
CN105095006A (zh) * 2015-07-21 2015-11-25 北京金山安全软件有限公司 一种软件安装失败的修复方法及装置
CN105872118A (zh) * 2015-11-25 2016-08-17 乐视云计算有限公司 Dns网络中节点服务器的检测方法及设备
CN106598819A (zh) * 2016-12-12 2017-04-26 世纪龙信息网络有限责任公司 客户端补丁加载使用的监控处理方法和系统
CN108090359A (zh) * 2018-01-05 2018-05-29 广东小天才科技有限公司 一种应用程序监测方法及应用服务器
WO2019041201A1 (zh) * 2017-08-30 2019-03-07 深圳市云中飞网络科技有限公司 刷量资源确定方法及装置
CN109445971A (zh) * 2018-09-11 2019-03-08 珠海格力电器股份有限公司 异常信息检测方法、装置、终端及存储介质
CN109918090A (zh) * 2019-02-15 2019-06-21 网宿科技股份有限公司 应用部署方法及装置
CN111488156A (zh) * 2020-04-08 2020-08-04 中国银行股份有限公司 一种客户端功能下线方法及装置
CN111913847A (zh) * 2020-07-21 2020-11-10 上海冰鉴信息科技有限公司 远程任务执行进度的获取方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030110248A1 (en) * 2001-02-08 2003-06-12 Ritche Scott D. Automated service support of software distribution in a distributed computer network
US20080177827A1 (en) * 2007-01-22 2008-07-24 Fujitsu Limited Software operation results management system, method, and program
CN101542443A (zh) * 2005-05-10 2009-09-23 微软公司 自动化的客户端设备管理
CN101771563A (zh) * 2008-12-30 2010-07-07 北大方正集团有限公司 网络服务程序的监控方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030110248A1 (en) * 2001-02-08 2003-06-12 Ritche Scott D. Automated service support of software distribution in a distributed computer network
CN101542443A (zh) * 2005-05-10 2009-09-23 微软公司 自动化的客户端设备管理
US20080177827A1 (en) * 2007-01-22 2008-07-24 Fujitsu Limited Software operation results management system, method, and program
CN101771563A (zh) * 2008-12-30 2010-07-07 北大方正集团有限公司 网络服务程序的监控方法

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103365732A (zh) * 2012-03-29 2013-10-23 宇龙计算机通信科技(深圳)有限公司 一种应用程序异常的处理方法、系统及移动终端
CN103577215A (zh) * 2012-08-10 2014-02-12 腾讯科技(深圳)有限公司 一种软件卸载安装方法及系统
CN103856537A (zh) * 2012-12-05 2014-06-11 中国移动通信集团公司 获取应用程序在终端上运行状态的方法、平台和系统
CN103914354A (zh) * 2012-12-31 2014-07-09 北京新媒传信科技有限公司 数据库故障修复的方法和系统
CN103235728A (zh) * 2013-03-20 2013-08-07 青岛海信移动通信技术股份有限公司 Android终端中预置第三方应用的安装方法和装置
CN103297761B (zh) * 2013-06-03 2016-04-20 贝壳网际(北京)安全技术有限公司 视频解析的监控方法及系统
CN103297761A (zh) * 2013-06-03 2013-09-11 贝壳网际(北京)安全技术有限公司 视频解析的监控方法及系统
WO2014154061A1 (zh) * 2013-08-27 2014-10-02 中兴通讯股份有限公司 终端及其升级方法、服务器、系统及计算机存储介质
CN104468938A (zh) * 2013-09-12 2015-03-25 中国移动通信集团浙江有限公司 一种信息采集处理方法以及相关装置、移动终端和服务器
CN103514086A (zh) * 2013-09-22 2014-01-15 广东威创视讯科技股份有限公司 一种软件错误报告的提取方法及装置
CN104125299A (zh) * 2014-08-08 2014-10-29 携程计算机技术(上海)有限公司 Ota网站的系统应用的设置系统及方法
CN105095006B (zh) * 2015-07-21 2018-07-10 北京金山安全软件有限公司 一种软件安装失败的修复方法及装置
CN105095006A (zh) * 2015-07-21 2015-11-25 北京金山安全软件有限公司 一种软件安装失败的修复方法及装置
CN105872118A (zh) * 2015-11-25 2016-08-17 乐视云计算有限公司 Dns网络中节点服务器的检测方法及设备
CN106598819A (zh) * 2016-12-12 2017-04-26 世纪龙信息网络有限责任公司 客户端补丁加载使用的监控处理方法和系统
CN106598819B (zh) * 2016-12-12 2019-07-26 世纪龙信息网络有限责任公司 客户端补丁加载使用的监控处理方法和系统
WO2019041201A1 (zh) * 2017-08-30 2019-03-07 深圳市云中飞网络科技有限公司 刷量资源确定方法及装置
CN110785743A (zh) * 2017-08-30 2020-02-11 深圳市欢太科技有限公司 刷量资源确定方法及装置
CN110785743B (zh) * 2017-08-30 2023-11-21 深圳市欢太科技有限公司 刷量资源确定方法及装置
CN108090359A (zh) * 2018-01-05 2018-05-29 广东小天才科技有限公司 一种应用程序监测方法及应用服务器
CN108090359B (zh) * 2018-01-05 2020-05-22 广东小天才科技有限公司 一种应用程序监测方法及应用服务器
CN109445971A (zh) * 2018-09-11 2019-03-08 珠海格力电器股份有限公司 异常信息检测方法、装置、终端及存储介质
CN109918090A (zh) * 2019-02-15 2019-06-21 网宿科技股份有限公司 应用部署方法及装置
CN111488156A (zh) * 2020-04-08 2020-08-04 中国银行股份有限公司 一种客户端功能下线方法及装置
CN111913847A (zh) * 2020-07-21 2020-11-10 上海冰鉴信息科技有限公司 远程任务执行进度的获取方法及系统
CN111913847B (zh) * 2020-07-21 2021-04-27 上海冰鉴信息科技有限公司 远程任务执行进度的获取方法及系统

Also Published As

Publication number Publication date
CN102368718B (zh) 2013-11-06

Similar Documents

Publication Publication Date Title
CN102368718B (zh) 一种监控程序的方法及系统
CN103856368A (zh) 一种监控程序的方法及系统
US8972963B2 (en) End-to-end patch automation and integration
US20160359911A1 (en) Trusted public infrastructure grid cloud
US7373643B2 (en) Apparatus, methods and articles of manufacture for data transmission
KR100286008B1 (ko) 소프트웨어 프로그램 자동 갱신방법
US8645672B2 (en) Configuring a computer system for a software package installation
KR20050120643A (ko) 비-침해 자동 오프사이트 패치 지문채취 및 업데이팅시스템 및 방법
JP4696125B2 (ja) ソフトウェアを計測するための方法及びシステム
US20070168348A1 (en) Method in a network of the delivery of files
US9727352B2 (en) Utilizing history of changes associated with software packages to manage computing systems
US20070234331A1 (en) Targeted automatic patch retrieval
EP1596290A1 (en) Efficient software patching
US20020147974A1 (en) Networked installation system for deploying systems management platforms
US20020174422A1 (en) Software distribution system
CN102045390A (zh) 计算机专用软件更新的自动配置
US7890952B2 (en) Autonomic peer-to-peer computer software installation
CN105183504A (zh) 基于软件服务器的进程白名单更新方法
CN102609281A (zh) 分布式软件补丁更新方法及系统
US20090210871A1 (en) System and method for software application migration
CN111045854A (zh) 用于管理服务容器的方法、设备和计算机程序产品
KR101649909B1 (ko) 가상 머신 취약점 점검과 복구 방법 및 장치
US20230259358A1 (en) Documentation enforcement during compilation
US10191750B2 (en) Discovering new backup clients
CN111897794A (zh) 数据库的维护方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20131106

Termination date: 20190627

CF01 Termination of patent right due to non-payment of annual fee
RR01 Reinstatement of patent right
RR01 Reinstatement of patent right

Former decision: termination of patent right due to unpaid annual fee

Former decision publication date: 20200623

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100016 East unit, 4th floor, Zhaowei building, 14 Jiuxianqiao Road, Chaoyang District, Beijing

Patentee after: Beijing Qizhi Business Consulting Co.,Ltd.

Address before: 100016 East unit, 4th floor, Zhaowei building, 14 Jiuxianqiao Road, Chaoyang District, Beijing

Patentee before: Qizhi software (Beijing) Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220130

Address after: Room 801, 8th floor, No. 104, 1st to 19th floors, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100020

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Address before: 100016 East unit, 4th floor, Zhaowei building, 14 Jiuxianqiao Road, Chaoyang District, Beijing

Patentee before: Beijing Qizhi Business Consulting Co.,Ltd.