应用软件性能实时监控方法及系统与流程

文档序号:16327725发布日期:2018-12-19 06:01阅读:658来源:国知局
应用软件性能实时监控方法及系统与流程

本发明涉及应用软件性能监测领域,更具体地,涉及一种应用软件性能实时监控方法及系统。

背景技术

实时监控应用系统用户体验指标主要目标是为解决企业面向终端用户的应用系统体验无法跟踪的问题,帮助企业信息部门了解应用系统面向不同用户响应时长、访问频率等,提高应用系统运维水平,帮助信息部门树立良好的服务态度。企业信息部门在保障基础架构、应用系统稳定运行的同时,开始更多地评估信息技术对业务影响。信息技术管理运维的趋势是,由业务导向进行信息技术的运维和持续优化,同时,由信息技术的运维管理反馈给业务运营改善业务流程,甚至创新业务模式。

随着分布式应用、云计算的不断深入发展,业务系统的逻辑结构正变得越来越复杂,应用已经演变成系列服务的形式运行在不同平台上。应用的复杂性和灵活性加大了运维的难度,如何保障应用能够稳定、高效率的运行的问题越来越受到用户的重视。应用性能是反映应用程序面向客户提供服务质量的关键指标,应用性能的高低将直接影响到用户的使用体验。并且,近年来,由应用性能问题导致的企业客户流失的案例也逐渐增加。

现有技术通过软件测试技术进行应用软件性能的检测,例如ios系统的app性能数据通过mac设备上安装的xcode客户端进行获取,但是xcode客户端不能实时获取ios系统中app的性能数据并显示,不便于对app性能的实时监控;并且现有技术通常是对应用的单个性能指标进行监控,这样容易出现无效告警,而且无法准确反映应用软件的整体性能。

因此,提供一种便于进行直观的显示,能准确反映应用软件的整体性能,可以进行异常告警的应用软件性能实时监控方法及系统,是本领域技术人员亟待解决的技术问题。



技术实现要素:

有鉴于此,本发明提供了一种应用软件性能实时监控方法,包括:

获取目标应用软件在预设时间段内的多项应用性能指标数据,使用top命令每隔第一预设时长获取应用系统中所有应用软件的性能数据;

对所有应用软件的性能数据进行过滤,获取目标应用软件的性能数据;

对目标应用软件的性能数据进行筛选,截取筛选的目标应用软件的性能数据中的数字;

对收集到的在预设时间段内的多项应用性能指标数据进行处理转换,计算每一项应用性能指标数据的最大值、最小值以及平均值,并以时间戳为关键字存储在目标应用软件的本地数据库中;

通过grafana工具将存储的目标应用软件的应用性能指标数据以时间为维度进行显示;

通过采集监控日志,对系统资源的使用周期进行分析;

在确定预设时间段内的多项应用性能指标数据和监控日志发生异常时,进行异常告警,并对告警结果进行监控处理。

进一步优选的,对目标应用软件的性能数据进行筛选,具体包括:

对目标应用软件的性能数据以空格进行分割;

通过gawk的变量工具对分割后的目标应用软件的性能数据进行筛选。

优选的,应用性能指标数据包括:

中央处理器cpu占用率、cpu占用时间、虚拟内存vss占用量、物理内存rss占用量、网络消耗、电量消耗、数据库cpu、内存状态、数据库连接数、表空间。

优选的,进行异常告警具体包括:

当各项应用性能指标数据的最大值、最小值以及平均值中的至少一个数值超过预设阈值时,进行异常报警,并将报警信息进行显示和记录,存储在目标应用软件的本地数据库中;

对告警结果进行监控处理具体包括:弹性伸缩报警和业务监控报警,弹性伸缩报警对应用性能指标数据进行监测告警,自动分配增加或减少资源的占比;业务监控报警在向业务线推送数据中心数据不同步或同步不及时的时候触发,并对项目干系人提供邮件或短信提示。

基于同一原理,本发明还提供了一种应用软件性能实时监控系统,包括:

应用性能指标数据获取单元,获取目标应用软件在预设时间段内的多项应用性能指标数据;

应用性能指标数据处理单元,对收集到的在预设时间段内的多项应用性能指标数据进行处理转换,计算每一项应用性能指标数据的最大值、最小值以及平均值;并以时间戳为关键字存储在目标应用软件的本地数据库中;

存储单元,以时间戳为关键字将每一项应用性能指标数据的最大值、最小值以及平均值存储在目标应用软件的本地数据库中;

显示单元,通过grafana工具将存储的目标应用软件的应用性能指标数据以时间为维度进行显示;

采集分析单元,通过采集监控日志,对系统资源的使用周期进行分析;

告警单元,在确定预设时间段内的多项应用性能指标数据和监控日志发生异常时,进行异常告警;

告警结果监控处理单元。

优选的,应用性能指标数据获取单元具体包括:

使用top命令每隔第一预设时长获取应用系统中所有应用软件的性能数据;

对所有应用软件的性能数据进行过滤,获取目标应用软件的性能数据;

对目标应用软件的性能数据进行筛选,截取筛选的目标应用软件的性能数据中的数字。

进一步优选的,对目标应用软件的性能数据进行筛选,具体包括:

对目标应用软件的性能数据以空格进行分割;

通过gawk的变量工具对分割后的目标应用软件的性能数据进行筛选。

优选的,应用性能指标数据包括:

中央处理器cpu占用率、cpu占用时间、虚拟内存vss占用量、物理内存rss占用量、网络消耗、电量消耗、数据库cpu、内存状态、数据库连接数、表空间。

优选的,告警单元具体包括:

当各项应用性能指标数据的最大值、最小值以及平均值中的至少一个数值超过预设阈值时,进行异常报警,并将报警信息进行显示和记录,存储在目标应用软件的本地数据库中;

告警结果监控处理单元具体包括:弹性伸缩报警单元和业务监控报警单元,弹性伸缩报警单元对所述应用性能指标数据进行监测告警,自动分配增加或减少资源的占比;业务监控报警单元在向业务线推送数据中心数据不同步或同步不及时的时候触发,并对项目干系人提供邮件或短信提示。

与现有技术相比,本发明提供的应用软件性能实时监控方法及系统,至少实现了如下的有益效果:

本发明提供一种应用软件性能实时监控方法及系统,该方法实时获取目标应用软件在预设时间段内的多项应用性能指标数据,并将应用性能指标数据进行处理转换和计算,并以时间戳为关键字存储在目标应用软件的本地数据库中;同时,通过grafana工具将存储的目标应用软件的应用性能指标数据以时间为维度进行显示,便于进行直观的显示;在判定应用软件性能异常时,综合考虑了多项应用性能指标的各项数值,和通过采集监控日志分析得到的系统资源的使用周期,这样,可以提高应用性能异常监控的灵敏度,能够第一时间给出异常告警,便于用户能够及时发现产生相应异常的原因,并及时解决问题在确定预设时间段内的多项应用性能指标数据发生异常时,进行异常告警,达到监控预警的功能。本发明的监控方法和监控系统可供客户端、开发人员、运维人员等使用。

当然,实施本发明的任一产品必不特定需要同时达到以上的所有技术效果。

通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。

附图说明

被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。

图1是本发明实施例提供的一种应用软件性能实时监控方法流程图;

图2是本发明实施例提供的另一种应用软件性能实时监控方法流程图;

图3是本发明实施例提供的另一种应用软件性能实时监控方法流程图;

图4是本发明实施例提供的一种应用软件性能实时监控系统框架图。

具体实施方式

现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。

以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。

在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

实施例一

请参考图1,图1是本发明实施例提供的一种应用软件性能实时监控方法流程图,本实施例的应用软件性能实时监控方法,包括:

步骤101:获取目标应用软件在预设时间段内的多项应用性能指标数据;

步骤102:对收集到的在预设时间段内的多项应用性能指标数据进行处理转换,计算每一项应用性能指标数据的最大值、最小值以及平均值,并以时间戳为关键字存储在目标应用软件的本地数据库中;

步骤103:通过grafana工具将存储的目标应用软件的应用性能指标数据以时间为维度进行显示;

步骤104:通过采集监控日志,对系统资源的使用周期进行分析;

步骤105:在确定预设时间段内的多项应用性能指标数据和监控日志发生异常时,进行异常告警,并对告警结果进行监控处理。

具体而言,本实施例首先通过获取目标应用软件在预设时间段内的多项应用性能指标数据,实时获取目标应用软件在预设时间段内的多项应用性能指标数据,然后将收集到的在预设时间段内的多项应用性能指标数据进行处理转换,计算每一项应用性能指标数据的最大值、最小值以及平均值,将应用性能指标数据进行处理转换和计算,并以时间戳为关键字存储在目标应用软件的本地数据库中;同时,通过grafana工具将存储的目标应用软件的应用性能指标数据以时间为维度进行显示,便于进行直观的显示;在判定应用软件性能异常时,综合考虑了多项应用性能指标的各项数值,和通过采集监控日志分析得到的系统资源的使用周期,这样,可以提高应用性能异常监控的灵敏度,能够第一时间给出异常告警,便于用户能够及时发现产生相应异常的原因,并及时解决问题在确定预设时间段内的多项应用性能指标数据发生异常时,进行异常告警,达到监控预警的功能。本实施例的监控方法可供客户端、开发人员、运维人员等使用。

需要说明的是,应用性能指标数据包括:中央处理器cpu占用率、cpu占用时间、虚拟内存vss占用量、物理内存rss占用量、网络消耗、电量消耗、数据库cpu、内存状态、数据库连接数、表空间。top命令是linux中常用的性能分析工具,能够实时显示系统中所有应用性能指标数据,top命令退出前,刷新多少次,默认刷新时间间隔,即若第一预设时长为1s,代码为top–l10000,第一预设时长可以根据实际需要进行设置,本实施例在此不作具体限定。

实施例二

请参考图2,图2是本发明实施例提供的另一种应用软件性能实时监控方法流程图,本实施例的应用软件性能实时监控方法,包括:

步骤201:使用top命令每隔第一预设时长获取应用系统中所有应用软件的性能数据;

步骤202:对所有应用软件的性能数据进行过滤,获取目标应用软件的性能数据;

步骤203:对目标应用软件的性能数据进行筛选,截取筛选的目标应用软件的性能数据中的数字;

步骤204:对收集到的在预设时间段内的多项应用性能指标数据进行处理转换,计算每一项应用性能指标数据的最大值、最小值以及平均值,并以时间戳为关键字存储在目标应用软件的本地数据库中;

步骤205:通过grafana工具将存储的目标应用软件的应用性能指标数据以时间为维度进行显示;

步骤206:通过采集监控日志,对系统资源的使用周期进行分析;

步骤207:在确定预设时间段内的多项应用性能指标数据和监控日志发生异常时,进行异常告警。

本实施例进一步说明了获取目标应用软件在预设时间段内的多项应用性能指标数据,是通过使用top命令每隔第一预设时长获取应用系统中所有应用软件的性能数据,对所有应用软件的性能数据进行过滤,获取目标应用软件的性能数据。具体而言,top命令是linux中常用的性能分析工具,能够实时显示系统中所有应用性能指标数据,top命令退出前,刷新多少次,默认刷新时间间隔,即若第一预设时长为1s,代码为top–l10000,第一预设时长可以根据实际需要进行设置,本实施例在此不作具体限定。

实施例三

请参考图3,图3是本发明实施例提供的另一种应用软件性能实时监控方法流程图,本实施例的应用软件性能实时监控方法,包括:

步骤301:使用top命令每隔第一预设时长获取应用系统中所有应用软件的性能数据;

步骤302:对所有应用软件的性能数据进行过滤,获取目标应用软件的性能数据;

步骤303:对目标应用软件的性能数据以空格进行分割;

步骤304:通过gawk的变量工具对分割后的目标应用软件的性能数据进行筛选;

步骤305:对收集到的在预设时间段内的多项应用性能指标数据进行处理转换,计算每一项应用性能指标数据的最大值、最小值以及平均值,并以时间戳为关键字存储在目标应用软件的本地数据库中;

步骤306:通过grafana工具将存储的目标应用软件的应用性能指标数据以时间为维度进行显示;

步骤307:通过采集监控日志,对系统资源的使用周期进行分析;

步骤308:在确定预设时间段内的多项应用性能指标数据和监控日志发生异常时,进行异常告警;

步骤309:当各项应用性能指标数据的最大值、最小值以及平均值中的至少一个数值超过预设阈值时,进行异常报警,并将报警信息进行显示和记录,存储在目标应用软件的本地数据库中;

步骤310:对告警结果进行弹性伸缩报警和业务监控报警的监控处理。

本实施例进一步说明了对目标应用软件的性能数据进行筛选,截取筛选的目标应用软件的性能数据中的数字的具体方法是对目标应用软件的性能数据以空格进行分割,通过gawk的变量工具对分割后的目标应用软件的性能数据进行筛选。gawk对以文本行为单位的目标应用软件的性能数据默认以空格分割,例如目标应用软件的性能数据中的cpu占用率在目标app的性能数据中的第5列,目标应用软件的性能数据中的cpu占用时间在目标应用软件的性能数据中的第12列,则通过gawk的变量工具$5、$12可以获取目标应用软件的性能数据中的cpu占用率和cpu占用时间。弹性伸缩报警对应用性能指标数据进行监测告警,可以对cpu、内存利用率、系统平均负载、外网和内网出入流量等进行监测告警,自动分配增加或减少资源的占比;业务监控报警在向业务线推送数据中心数据不同步或同步不及时的时候触发,并对项目干系人提供邮件或短信提示。

实施例四

请参考图4,图4是本发明实施例提供的一种应用软件性能实时监控系统框架图,本实施例的应用软件性能实时监控系统,包括:

应用性能指标数据获取单元41,获取目标应用软件在预设时间段内的多项应用性能指标数据;

应用性能指标数据处理单元42,对收集到的在预设时间段内的多项应用性能指标数据进行处理转换,计算每一项应用性能指标数据的最大值、最小值以及平均值;并以时间戳为关键字存储在目标应用软件的本地数据库中;

存储单元43,以时间戳为关键字将每一项应用性能指标数据的最大值、最小值以及平均值存储在目标应用软件的本地数据库中;

显示单元44,通过grafana工具将存储的目标应用软件的应用性能指标数据以时间为维度进行显示;

采集分析单元45,通过采集监控日志,对系统资源的使用周期进行分析;

告警单元46,在确定预设时间段内的多项应用性能指标数据发生异常时,进行异常告警;

告警结果监控处理单元47。

具体而言,应用性能指标数据获取单元41具体包括:使用top命令每隔第一预设时长获取应用系统中所有应用软件的性能数据;对所有应用软件的性能数据进行过滤,获取目标应用软件的性能数据;对目标应用软件的性能数据进行筛选,截取筛选的目标应用软件的性能数据中的数字。对目标应用软件的性能数据进行筛选,具体包括:对目标应用软件的性能数据以空格进行分割;通过gawk的变量工具对分割后的目标应用软件的性能数据进行筛选。应用性能指标数据包括:中央处理器cpu占用率、cpu占用时间、虚拟内存vss占用量、物理内存rss占用量、网络消耗、电量消耗、数据库cpu、内存状态、数据库连接数、表空间。告警单元45具体包括:当各项应用性能指标数据的最大值、最小值以及平均值中的至少一个数值超过预设阈值时,进行异常报警,并将报警信息进行显示和记录,存储在目标应用软件的本地数据库中;告警结果监控处理单元47具体包括:弹性伸缩报警单元471和业务监控报警单元472,弹性伸缩报警单元471对所述应用性能指标数据进行监测告警,自动分配增加或减少资源的占比;业务监控报警单元472在向业务线推送数据中心数据不同步或同步不及时的时候触发,并对项目干系人提供邮件或短信提示。

通过上述实施例可知,本发明提供的应用软件性能实时监控方法及系统,至少实现了如下的有益效果:

本发明提供一种应用软件性能实时监控方法及系统,该方法实时获取目标应用软件在预设时间段内的多项应用性能指标数据,并将应用性能指标数据进行处理转换和计算,并以时间戳为关键字存储在目标应用软件的本地数据库中;同时,通过grafana工具将存储的目标应用软件的应用性能指标数据以时间为维度进行显示,便于进行直观的显示;在判定应用软件性能异常时,综合考虑了多项应用性能指标的各项数值,和通过采集监控日志分析得到的系统资源的使用周期,这样,可以提高应用性能异常监控的灵敏度,能够第一时间给出异常告警,便于用户能够及时发现产生相应异常的原因,并及时解决问题在确定预设时间段内的多项应用性能指标数据发生异常时,进行异常告警,达到监控预警的功能。本发明的监控方法和监控系统可供客户端、开发人员、运维人员等使用。

虽然已经通过例子对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上例子仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员应该理解,可在不脱离本发明的范围和精神的情况下,对以上实施例进行修改。本发明的范围由所附权利要求来限定。

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