System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开实施例涉及计算机与网络通信,尤其涉及一种应用程序状态监控方法、设备、存储介质及程序产品。
技术介绍
1、目前通常会对企业的应用系统或应用程序进行监控,对应用程序进行性能管理和故障管理,以分析程序系统状态,监控程序是否出现异常。
2、现有技术中通常会采用一些监控系统监控应用程序运行状态,例如apm(application performance management,应用性能管理),通过收集程序运行时产生的大量运行日志,进而对运行日志进行分析来发现错误信息,确定应用程序运行状态。
3、然而为了监控到尽可能多的错误信息,通常需要开发人员在应用程序中埋点,对于复杂程序,埋点数量较多,开发人员对代码异常情景维护负担较大,消耗大量人力成本;此外,应用程序内部代码分支走向处于黑盒状态,通过分析日志只能推测应用程序中的运行情况,无法快速准确的对程序异常进行定位和追踪。
技术实现思路
1、本公开实施例提供一种应用程序状态监控方法、设备、存储介质及程序产品,以监控应用程序内部的代码分支走向情况来实现对应用程序状态的监控。
2、第一方面,本公开实施例提供一种应用程序状态监控方法,包括:
3、在应用程序的运行过程中,获取在当前时间窗口内应用程序中各代码分支间的跳转记录;
4、根据当前时间窗口内的各代码分支间的跳转记录,确定以各代码分支构成的马尔可夫链的状态转移矩阵;
5、根据当前时间窗口的状态转移矩阵判断所述应用程序运行状态是
6、在确定所述应用程序运行状态出现异常时进行告警。
7、第二方面,本公开实施例提供一种应用程序状态监控设备,包括:
8、采集单元,用于在应用程序的运行过程中,获取在当前时间窗口内应用程序中各代码分支间的跳转记录;
9、构建单元,用于根据当前时间窗口内的各代码分支间的跳转记录,确定以各代码分支构成的马尔可夫链的状态转移矩阵;
10、判断单元,用于根据当前时间窗口的状态转移矩阵判断所述应用程序运行状态是否出现异常;
11、告警单元,在确定所述应用程序运行状态出现异常时进行告警。
12、第三方面,本公开实施例提供一种电子设备,包括:至少一个处理器和存储器;
13、所述存储器存储计算机执行指令;
14、所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面以及第一方面各种可能的设计所述的应用程序状态监控方法。
15、第四方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的应用程序状态监控方法。
16、第五方面,本公开实施例提供一种计算机程序产品,包括计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的应用程序状态监控方法。
17、本公开实施例提供的应用程序状态监控方法、设备、存储介质及程序产品,通过在应用程序的运行过程中,获取在当前时间窗口内应用程序中各代码分支间的跳转记录;根据当前时间窗口内的各代码分支间的跳转记录,确定以各代码分支构成的马尔可夫链的状态转移矩阵;根据当前时间窗口的状态转移矩阵判断应用程序运行状态是否出现异常;在确定应用程序运行状态出现异常时进行告警。通过各代码分支构成的马尔可夫链的状态转移矩阵来监控应用程序内部的代码分支走向情况,实现应用程序内部的代码分支走向的可视化,从而可实时、快速判断应用程序运行状态是否出现异常,实现监控应用程序状态的目的,减少开发人员对代码异常情景维护的负担,成本较低。
本文档来自技高网...【技术保护点】
1.一种应用程序状态监控方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述根据当前时间窗口内的各代码分支间的跳转记录,确定以各代码分支构成的马尔可夫链的状态转移矩阵,包括:
3.根据权利要求2所述的方法,其特征在于,所述根据当前时间窗口内的各代码分支间的跳转记录,确定当前时间窗口内每一代码分支跳转到其他代码分支的概率,包括:
4.根据权利要求1所述的方法,其特征在于,所述根据当前时间窗口的状态转移矩阵判断所述应用程序运行状态是否出现异常,包括:
5.根据权利要求4所述的方法,其特征在于,所述将当前时间窗口的状态转移矩阵与历史时间窗口的状态转移矩阵进行比较,判断所述应用程序运行状态是否出现异常,包括:
6.根据权利要求4所述的方法,其特征在于,所述将当前时间窗口的状态转移矩阵与历史时间窗口的状态转移矩阵进行比较,判断所述应用程序运行状态是否出现异常,包括:
7.根据权利要求4-6任一项所述的方法,其特征在于,所述在确定所述应用程序运行状态出现异常时进行告警,包括:
8.根据权利
9.根据权利要求1-6任一项所述的方法,其特征在于,所述各代码分支间的跳转记录包括:以跳转前的代码分支以及跳转后的代码分支构成的键值对。
10.根据权利要求8所述的方法,其特征在于,所述通过所述应用程序各代码分支处预先插桩的采集代码,采集所述应用程序中各代码分支间的跳转记录前,还包括:
11.根据权利要求10所述的方法,其特征在于,所述根据所述目标代码的语法树,确定所述应用程序各代码分支,并在所述应用程序各代码分支处插桩预设的采集代码,包括:
12.根据权利要求1-6任一项所述的方法,其特征在于,所述根据当前时间窗口内的各代码分支间的跳转记录,确定以各代码分支构成的马尔可夫链的状态转移矩阵、以及所述根据当前时间窗口的状态转移矩阵判断所述应用程序运行状态是否出现异常,包括:
13.一种应用程序状态监控设备,其特征在于,包括:
14.一种电子设备,其特征在于,包括:至少一个处理器和存储器;
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1-12任一项所述的方法。
16.一种计算机程序产品,其特征在于,包括计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1-12任一项所述的方法。
...【技术特征摘要】
1.一种应用程序状态监控方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述根据当前时间窗口内的各代码分支间的跳转记录,确定以各代码分支构成的马尔可夫链的状态转移矩阵,包括:
3.根据权利要求2所述的方法,其特征在于,所述根据当前时间窗口内的各代码分支间的跳转记录,确定当前时间窗口内每一代码分支跳转到其他代码分支的概率,包括:
4.根据权利要求1所述的方法,其特征在于,所述根据当前时间窗口的状态转移矩阵判断所述应用程序运行状态是否出现异常,包括:
5.根据权利要求4所述的方法,其特征在于,所述将当前时间窗口的状态转移矩阵与历史时间窗口的状态转移矩阵进行比较,判断所述应用程序运行状态是否出现异常,包括:
6.根据权利要求4所述的方法,其特征在于,所述将当前时间窗口的状态转移矩阵与历史时间窗口的状态转移矩阵进行比较,判断所述应用程序运行状态是否出现异常,包括:
7.根据权利要求4-6任一项所述的方法,其特征在于,所述在确定所述应用程序运行状态出现异常时进行告警,包括:
8.根据权利要求1-6任一项所述的方法,其特征在于,所述获取在当前时间窗口内应用程序中各代码分支间的跳转记录,包括:
9.根据权利要求1-6任一项所述的...
【专利技术属性】
技术研发人员:刘冠成,王思唯,曹紫光,高玉军,
申请(专利权)人:抖音视界有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。