[发明专利]一种基于JVM的预警方法和装置在审
申请号: | 201711261200.2 | 申请日: | 2017-12-04 |
公开(公告)号: | CN107861797A | 公开(公告)日: | 2018-03-30 |
发明(设计)人: | 王辉;李顺龙;冷晓林;温雷;赵文博 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 北京集佳知识产权代理有限公司11227 | 代理人: | 王宝筠 |
地址: | 100080 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 jvm 预警 方法 装置 | ||
技术领域
本申请涉及通讯技术领域,尤其涉及一种基于JVM的预警方法和装置。
背景技术
JVM(Java虚拟机)是运行着Java应用程序的虚拟计算机,JVM模拟有完善的硬件架构,如处理器、寄存器等。通常对于一些基于Java的应用服务,如果是应用服务的JVM自身出现问题,导致应用服务出现故障,此时研发人员才会去分析问题发生的根源。
然而上述分析问题的方式至少存在如下缺点:
1、因为JVM的运行状态是瞬时的,JVM自身出现问题时的有些运行状态信息不能复现,也没有保存下来,造成分析问题困难;
2、由于JVM自身问题导致应用服务出现故障,例如应用服务出现内存溢出、线程死锁等,虽然故障分析后可以定位到问题发生的根源,但已引起线上应用服务故障,造成不必要的损失。且一般应用服务出现故障后,基本都需要重启服务集群,这无疑影响了线上应用服务的可用性。
发明内容
有鉴于此,本申请提供一种基于JVM的预警方法和装置,以解决现有分析问题的方式中存在的分析问题困难、线上应用服务故障造成损失、线上应用服务的可用性降低的问题。技术方案如下:
基于本申请的一方面,本申请提供一种基于JVM的预警方法,预先配置采样任务的定时执行策略和JVM的报警策略,所述方法包括:
按照预置的采样任务的定时执行策略,采集JVM的日志文件,所述日志文件包括所述JVM的运行状态信息;
判断所述JVM的运行状态信息是否满足预置的报警策略;
如果满足,进行报警。
进一步的,所述JVM的运行状态信息包括如下至少一种:
中央处理器CPU的使用率、JVM总内存负载、线程的行为状态、垃圾收集器GC的执行状态。
进一步的,当所述JVM的运行状态信息包括CPU的使用率时,所述JVM的运行状态信息满足预置的报警策略包括:所述CPU的使用率大于第一阈值;
当所述JVM的运行状态信息包括JVM总内存负载时,所述JVM的运行状态信息满足预置的报警策略包括:所述JVM总内存负载大于第二阈值;
当所述JVM的运行状态信息包括线程的行为状态时,所述JVM的运行状态信息满足预置的报警策略包括:处于堵塞BLOCKED状态的线程的个数大于第三阈值;
当所述JVM的运行状态信息包括GC的执行状态时,所述JVM的运行状态信息满足预置的报警策略包括:FullGC的执行次数大于第四阈值。
进一步的,判断所述JVM的运行状态信息满足预置的报警策略之后,或所述执行报警之后,所述方法还包括:
利用第三方分析工具,从所述日志文件中确定出异常数据;所述异常数据为导致所述JVM的运行状态信息满足预置的报警策略的数据。
进一步的,判断所述JVM的运行状态信息满足预置的报警策略之后,或所述执行报警之后,所述方法还包括:
将基于Java的应用服务对应的服务集群进行迁移。
基于本申请的另一方面,本申请提供一种基于JVM的预警装置,包括:
预置单元,用于预先配置采样任务的定时执行策略和JVM的报警策略;
采集单元,用于按照预置的采样任务的定时执行策略,采集JVM的日志文件,所述日志文件包括所述JVM的运行状态信息;
判断单元,用于判断所述JVM的运行状态信息是否满足预置的报警策略;
报警单元,用于在所述判断单元判断所述JVM的运行状态信息满足预置的报警策略时,进行报警。
进一步的,所述JVM的运行状态信息包括如下至少一种:
中央处理器CPU的使用率、JVM总内存负载、线程的行为状态、垃圾收集器GC的执行状态。
进一步的,当所述JVM的运行状态信息包括CPU的使用率时,所述JVM的运行状态信息满足预置的报警策略包括:所述CPU的使用率大于第一阈值;
当所述JVM的运行状态信息包括JVM总内存负载时,所述JVM的运行状态信息满足预置的报警策略包括:所述JVM总内存负载大于第二阈值;
当所述JVM的运行状态信息包括线程的行为状态时,所述JVM的运行状态信息满足预置的报警策略包括:处于堵塞BLOCKED状态的线程的个数大于第三阈值;
当所述JVM的运行状态信息包括GC的执行状态时,所述JVM的运行状态信息满足预置的报警策略包括:FullGC的执行次数大于第四阈值。
进一步的,还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711261200.2/2.html,转载请声明来源钻瓜专利网。