一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

告警提示方法和装置、存储介质及电子设备与流程

2022-08-17 09:20:02 来源:中国专利 TAG:


1.本发明涉及计算机领域,具体而言,涉及一种告警提示方法和装置、存储介质及电子设备。


背景技术:

2.如今很多游戏应用的用户都很关注游戏应用的运行性能,如果运行过程中时常出现崩溃将很容易影响游戏体验。因而为了便于在游戏出现崩溃时可以及时收到告警信息,目前常用的监控方式是对crashj用户平均值、crash率值、影响用户数三个维度设置告警值,在检测到的数据达到告警值时,就触发提醒以引起关注。
3.然而,相关技术中提供的告警方式中使用的告警规则较单一,仅仅是设置了单一的告警触发阈值,从而导致告警提示的实时性较差的问题。
4.针对上述的问题,目前尚未提出有效的解决方案。


技术实现要素:

5.本发明实施例提供了一种告警提示方法和装置、存储介质及电子设备,以至少解决由于相关技术中提供的告警方式中使用的告警规则单一造成的告警提示的实时性较差的技术问题。
6.根据本发明实施例的一个方面,提供了一种告警提示方法,包括:获取用于登录目标游戏应用的各个用户账号上报的当前崩溃数据;从上述当前崩溃数据中提取崩溃项目字段,并基于上述崩溃项目字段构造上述当前崩溃数据对应的崩溃索引字段;在崩溃信息缓存系统中查找与上述崩溃索引字段匹配的崩溃信息;在查找到的上述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且上述崩溃信息尚未触发崩溃告警提示信息的情况下,生成上述崩溃告警提示信息;通过目标推送渠道推送上述崩溃告警提示信息。
7.根据本发明实施例的另一方面,还提供了一种告警提示装置,包括:第一获取单元,用于获取用于登录目标游戏应用的各个用户账号上报的当前崩溃数据;构造单元,用于从上述当前崩溃数据中提取崩溃项目字段,并基于上述崩溃项目字段构造上述当前崩溃数据对应的崩溃索引字段;查找单元,用于在崩溃信息缓存系统中查找与上述崩溃索引字段匹配的崩溃信息;生成单元,用于在查找到的上述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且上述崩溃信息尚未触发崩溃告警提示信息的情况下,生成上述崩溃告警提示信息;推送单元,用于通过目标推送渠道推送上述崩溃告警提示信息。
8.根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述的告警提示方法。
9.根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过所述计算机程序执行上述的告警提示方法。
10.在本发明实施例中,采用获取用于登录目标游戏应用的各个用户账号上报的当前崩溃数据;从上述当前崩溃数据中提取崩溃项目字段,并基于上述崩溃项目字段构造上述当前崩溃数据对应的崩溃索引字段;在崩溃信息缓存系统中查找与上述崩溃索引字段匹配的崩溃信息;在查找到的上述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且上述崩溃信息尚未触发崩溃告警提示信息的情况下,生成上述崩溃告警提示信息;通过目标推送渠道推送上述崩溃告警提示信息的方式,通过在崩溃信息缓存系统中查找与上述当前崩溃数据关联的崩溃信息,在查找到的上述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且上述崩溃信息尚未触发崩溃告警提示信息的情况下,生成上述崩溃告警提示信息,达到了能够实时推送告警信息的目的,从而实现了提高告警提示的实时性,以及能够灵活配置告警规则的技术效果,进而解决了由于相关技术中提供的告警方式中使用的告警规则单一造成的告警提示的实时性较差的技术问题。
附图说明
11.此处所说明的附图用来提供对本发明的进一步理解,构成本技术的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
12.图1是根据本发明实施例的一种可选的告警提示方法的应用环境的示意图;
13.图2是根据本发明实施例的另一种可选的告警提示方法的应用环境的示意图;
14.图3是根据本发明实施例的一种可选的告警提示方法的流程图;
15.图4是根据本发明实施例的一种可选的告警提示方法的告警规则设置界面示意图;
16.图5是根据本发明实施例的一种可选的告警提示方法的项目接入配置界面示意图;
17.图6是根据本发明实施例的一种可选的告警提示方法的崩溃数据展示界面示意图;
18.图7是根据本发明实施例的一种可选的告警提示方法的崩溃详情展示界面示意图;
19.图8是根据本发明实施例的一种可选的告警提示方法的崩溃监控告警界面示意图;
20.图9是根据本发明实施例的另一种可选的告警提示方法的流程图;
21.图10是根据本发明实施例的一种可选的告警提示装置的结构示意图;
22.图11是根据本发明实施例的一种可选的电子设备的结构示意图。
具体实施方式
23.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
24.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第
二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
25.根据本发明实施例的一个方面,提供了一种告警提示方法,可选地,作为一种可选的实施方式,上述告警提示方法可以但不限于应用于如图1所示的环境中。该应用环境中包括:与用户进行人机交互的终端设备102、网络104、服务器106。用户108与终端设备102之间可以进行人机交互,终端设备102中运行有告警提示应用客户端。上述终端设备102中包括人机交互屏幕1022,处理器1024及存储器1026。人机交互屏幕1022用于呈现登录目标游戏应用的各个用户账号上报的当前崩溃数据,还用于呈现崩溃告警提示信息;处理器1024用于获取用于登录目标游戏应用的各个用户账号上报的当前崩溃数据。存储器1026用于存储上述崩溃数据,及用于存储崩溃告警提示信息。
26.此外,服务器106中包括数据库1062及处理引擎1064,数据库1062中用于存储登录目标游戏应用的各个用户账号上报的当前崩溃数据,及用于存储崩溃告警提示信息。处理引擎1064用于在接收到崩溃数据后,在崩溃信息缓存系统中查找与当前崩溃数据关联的崩溃信息;在查找到的崩溃信息达到告警信息缓存系统中存储的告警提示条件,且崩溃信息尚未触发崩溃告警提示信息的情况下,生成崩溃告警提示信息;通过目标推送渠道推送崩溃告警提示信息。
27.具体过程如以下步骤:假设如图1所示终端设备102中运行有告警提示应用客户端,用户108操作人机交互屏幕1022对目告警提示应用客户端进行操作,如步骤s102,获取用于登录目标游戏应用的各个用户账号上报的当前崩溃数据。然后执行步骤s104,将上述当前崩溃数据通过网络104发送给服务器106。如步骤s106-s112,接收用于登录目标游戏应用的各个用户账号上报的当前崩溃数据;在崩溃信息缓存系统中查找与当前崩溃数据关联的崩溃信息;在查找到的崩溃信息达到告警信息缓存系统中存储的告警提示条件,且崩溃信息尚未触发崩溃告警提示信息的情况下,生成崩溃告警提示信息;通过目标推送渠道推送崩溃告警提示信息。并如步骤s114,通过网络104通知终端设备102,返回上述崩溃告警提示信息。
28.作为另一种可选的实施方式,本技术上述告警提示方法可以应用于图2所示的应用环境中。如图2所示,用户202与用户设备204之间可以进行人机交互。用户设备204中包含有存储器206和处理器208。本实施例中用户设备204可以但不限于参考执行上述终端设备102所执行的操作,以获取崩溃告警提示信息。
29.可选地,上述终端设备102和终端设备204可以但不限于为手机、平板电脑、笔记本电脑、pc机等终端,上述网络104可以包括但不限于无线网络或有线网络。其中,该无线网络包括:wifi及其他实现无线通信的网络。上述有线网络可以包括但不限于:广域网、城域网、局域网。上述服务器106可以包括但不限于任何可以进行计算的硬件设备。
30.可选地,作为一种可选的实施方式,如图3所示,上述告警提示方法包括:
31.s302,获取用于登录目标游戏应用的各个用户账号上报的当前崩溃数据;
32.s304,从所述当前崩溃数据中提取崩溃项目字段,并基于所述崩溃项目字段构造所述当前崩溃数据对应的崩溃索引字段;
33.s306,在崩溃信息缓存系统中查找与崩溃索引字段匹配的崩溃信息;
34.s308,在查找到的崩溃信息达到告警信息缓存系统中存储的告警提示条件,且崩溃信息尚未触发崩溃告警提示信息的情况下,生成崩溃告警提示信息;
35.s310,通过目标推送渠道推送崩溃告警提示信息。
36.在步骤s302中,实际应用时,获取用于登录目标游戏应用的各个用户账号上报的当前崩溃数据,这里目标游戏应用可以包括但不限于各种网络游戏或单机游戏,pc机游戏或手机游戏等,在此不做限定;各个用户账号上报的当前崩溃数据,可以为多个游戏玩家登陆的账号下关联的当前崩溃数据;崩溃数据可以为在目标时间段内的游戏异常数据,具体可以包括但不限于以天为单位崩溃趋势数据,按天累计实时崩溃率,崩溃数据的排行和崩溃详情等数据,在此不做限定。在本实施例中,通过告警提示系统可以添加目标游戏应用的各项信息;如图4所示,在告警提示系统中可以添加项目名称,地区名,运营商,平台名,服务名,账号名称和密码,以及修改时间等信息。
37.在步骤s302中,实际应用时,崩溃项目字段可以包括但不限于一个或多个游戏应用的名称,该名称可以为中文或英文字符串;基于上述游戏应用的名称,构建出该名称对应的崩溃索引字段;这里,崩溃索引字段可以为该游戏应用的中文或英文名称的缩写。例如,当前崩溃数据中包括有游戏应用名称为aagame1和aagame2的崩溃数据,那么崩溃项目字段可以为“aagame1”和“aagame2”,构造对应的崩溃索引字段可以为“g1”和“g2”。
38.在步骤s306中,实际应用时,崩溃信息缓存系统可以包括但不限于基于远程字典服务(remote directory server,简称redis)数据库建立的信息系统。redis数据库为key-value分布式数据库系统,该数据库中的key,即关键字;key-value分布式存储系统为根据关键字来取值的系统。例如,key可以为上述崩溃索引字段可以为“g1”和“g2”,value可以为与当前崩溃数据关联的崩溃信息,“g1”和“g2”对应的游戏应用名称为aagame1和aagame2的崩溃数据,可以包括但不限于当前用户登录的目标游戏应用的崩溃率或者崩溃趋势变化率等,在此不做限定。
39.在步骤s308中,实际应用时,在查找到的上述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且上述崩溃信息尚未触发崩溃告警提示信息的情况下,生成上述崩溃告警提示信息,这里,告警提示条件可以根据需要进行设置相应的规则,也就是说,例如,上述崩溃信息中包括的目标游戏应用崩溃率达到了目标阈值时,但还没有触发崩溃告警提示信息时,可以生成上述崩溃告警提示信息。
40.在步骤s310中,实际应用时,目标推送渠道可以包括但不限于通过邮件、公众号或客户端等方式。在此不做限定,例如,当在查找到的所述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且所述崩溃信息尚未触发崩溃告警提示信息的情况下,生成所述崩溃告警提示信息后,将上述崩溃告警提示信息通过邮件或游戏平台公众号的方式进行推送。
41.在本发明实施例中,采用获取用于登录目标游戏应用的各个用户账号上报的当前崩溃数据;在崩溃信息缓存系统中查找与上述当前崩溃数据关联的崩溃信息;在查找到的上述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且上述崩溃信息尚未触发崩
溃告警提示信息的情况下,生成上述崩溃告警提示信息;通过目标推送渠道推送上述崩溃告警提示信息的方式,通过在崩溃信息缓存系统中查找与上述当前崩溃数据关联的崩溃信息,在查找到的上述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且上述崩溃信息尚未触发崩溃告警提示信息的情况下,生成上述崩溃告警提示信息,达到了能够实时推送告警信息的目的,从而实现了提高告警提示的实时性,以及能够灵活配置告警规则的技术效果,进而解决了由于相关技术中提供的告警方式中使用的告警规则单一造成的告警提示的实时性较差的技术问题。
42.在一实施例中,步骤s304包括:从所述当前崩溃数据中提取崩溃索引字段;在所述崩溃信息缓存系统中查找与所述崩溃索引字段匹配的所述崩溃信息;在查找到所述崩溃信息的情况下,获取所述崩溃信息;在并未查找到所述崩溃信息的情况下,从所述当前崩溃数据中获取到当前崩溃信息,并从所述当前崩溃数据之前获取到的历史崩溃数据中获取历史崩溃信息;将所述当前崩溃信息及所述历史崩溃信息,作为所述当前崩溃数据关联的崩溃信息存储到所述崩溃信息缓存系统中。
43.在本实施例中,崩溃索引字段可以为但不限于key-value分布式操作系统中的key,即关键字;key-value分布式存储系统为根据关键字来取值的系统。这里,key-value分布式存储系统可以结合上述的redis数据信息系统,即告警信息缓存系统。上述索引字段在实际应用时,可以为不同项目(不同的游戏应用)下的唯一标识。
44.在上述崩溃信息缓存系统中查找与上述崩溃索引字段匹配的上述崩溃信息,也就是说可以根据上述不同项目对应的唯一标识来从崩溃信息缓存系统中查找对应的项目的崩溃信息。
45.需要说明的是,历史崩溃信息可以包括但不限于当前时间的前一小时崩溃信息和昨日此时崩溃信息;根据上述索引字段在告警信息缓存系统中并未查找到上述崩溃信息的情况下,从上述当前崩溃数据中获取到当前崩溃信息,并从上述当前崩溃数据之前获取到的历史崩溃数据中获取历史崩溃信息;将上述当前崩溃信息及上述历史崩溃信息,作为上述当前崩溃数据关联的崩溃信息存储到上述崩溃信息缓存系统中。也就是是说,当根据索引字段位查找到崩溃信息时,可以将当前的崩溃信息和当前时刻的前一小时和昨日此刻的崩溃信息存储到崩溃信息缓存系统中。
46.在一实施例中,步骤s306包括:比对上述崩溃信息与上述告警提示条件,其中,上述告警提示条件中包括多个配置有比对优先级的告警条件;在上述崩溃信息与至少一个告警条件匹配的情况下,确定上述崩溃信息达到上述告警提示条件;在上述告警信息缓存系统中查找上述崩溃信息的告警状态;在上述告警状态指示尚未告警的情况下,确定上述崩溃信息尚未触发上述崩溃告警提示信息;生成上述崩溃告警提示信息。
47.在本实施例中,告警提示条件可以包括但不限于目标游戏应用的崩溃信息中的崩溃率是否超过临界点,当前时刻的目标游戏应用的崩溃率是否比前一小时增加至少一倍;当前时刻的目标游戏应用崩溃率是否比昨天此时增加至少一倍;在此不做限定。在上述崩溃信息满足崩溃信息中的崩溃率是否超过临界点,当前时刻的崩溃率是否比前一小时增加至少一倍,当前时刻的崩溃率是否比昨天此时增加至少一倍三者中的任何一个告警条件的情况下,确定上述崩溃信息达到上述告警提示条件;之后,在上述告警信息缓存系统中查找上述崩溃信息的告警状态;在上述告警状态指示尚未告警的情况下,确定上述崩溃信息尚
未触发上述崩溃告警提示信息;生成上述崩溃告警提示信息。
48.在一实施例中,在上述比对上述崩溃信息与上述告警提示条件之前,还包括:配置上述告警条件,其中,上述告警条件包括以下至少之一:当前周期中当前子周期内上述目标游戏应用的崩溃率超过第一阈值、当前周期中当前子周期内上述目标游戏应用的崩溃率与上述当前周期中上述当前子周期相邻的上一个子周期内上述目标游戏应用的崩溃率的差值大于第二阈值,当前周期中当前子周期内上述目标游戏应用的崩溃率与上一个周期内与上述当前子周期对应的历史子周期内上述目标游戏应用的崩溃率的差值大于第三阈值。在本实施例中,如图5所示,上述告警条件可以通过新建告警规则来设置;例如,可以设置对比前7天相同时段crash用户平均值波动大于第一阈值,crash(崩溃)率(crash用户/联网用户)大于第二阈值,响应用户数大于第三阈值等等,第一阈值、第二阈值和第三阈值可以根据游戏项目的需求进行灵活配置。此外,还可以选择告警提示信息的接收人,因此可以有针对性的对目标游戏应用的客户进行告警系统信息的推送。
49.在一实施例中,在上述告警信息缓存系统中查找上述崩溃信息的告警状态之后,还包括:在上述告警状态指示已告警的情况下,忽略上述当前崩溃数据。也就是说,在告警缓存系统中查找到已告警的状态下,不再推送告警提示信息。如果此前已告警,为了避免消息堆积、过多打扰登录目标游戏应用的用户,那么此次可以忽略掉告警提示信息,不再告警。
50.在一实施例中,上述生成上述崩溃告警提示信息包括:根据上述崩溃信息获取上述目标游戏应用在上述当前崩溃数据之前的连续时间段内获取到的连续崩溃数据;根据上述连续崩溃数据生成上述目标游戏应用的实时崩溃趋势图表;将上述实时崩溃趋势图表添加到上述崩溃告警提示信息中。在本实施例中,如图6所示,目标游戏应用在时间段为2020年10月16号到2020年11月16号一个月内获取到的连续崩溃数据。根据上述一个月内的连续崩溃数据可以得到图6中的实时崩溃趋势图;在图表下方显示有故障问题出现频次最高的5个问题即相关信息,在每个问题对应的栏目中,显示有该故障的首次上报时间,最后上报时间,由于此故障崩溃的次数,该故障受影响的用户数等,以及该故障发生的终端设备的版本号等。当点击任意一个故障的链接时,可以出现如图7所示的故障详情页面,即堆栈信息;在该信息页面中,可以显示异常的进程或线程,用户的id,设备类型,故障发生时间和上报时间,软件开发工具包(software development kit,sdk)版本,cpu架构,系统版本号,系统应用识别id等。
51.在一实施例中,步骤s308包括以下至少之一:通过邮件向上述目标游戏应用的管理账号推送上述崩溃告警提示信息,其中,上述目标推送渠道包括邮件;通过即时通信客户端的会话窗口向上述目标游戏应用的管理账号推送上述崩溃告警提示信息,其中,上述目标推送渠道包括上述即时通信客户端的会话窗口。在本实施例中,可以通过邮件或及时通信客户端(例如微信小程序或公众号)等方式来推送上述崩溃告警信息。
52.在实施例中,也可以通过与目标游戏应用相关联的告警平台进行推送上述崩溃告警提示信息。如图8所示,通过与目标游戏应用相关联的aa平台推送上述崩溃告警提示信息,在该平台中,可以欣赏告警原因以及崩溃数据和昨日的出现频率最高的多个崩溃问题。在崩溃数据中显示有游戏名称,服务器的名称,运营地区,昨日崩溃数据的增长率,崩溃数据一周内增长的平均值,崩溃数据一个月内增长的平均值。
53.在一实施例中,在步骤s302之前,还包括:获取上述目标游戏应用的上述用户账号在连续多个运行周期内的运行数据;在上述运行数据达到崩溃条件的情况下,将上述运行数据确定为上述当前崩溃数据,其中,上述崩溃条件包括以下之一:第i 1个运行周期内的运行数据的崩溃量与第i个运行周期内的运行数据的崩溃量的差值大于第一目标阈值,上述运行数据中崩溃量大于第二目标阈值的用户账号的数量大于第三目标阈值,上述i为大于等于1且小于等于n的整数,n为上述多个运行周期的数量。
54.在本实施例中,上述崩溃条件可以包括但不限于,目标游戏应用的崩溃信息中的崩溃率是否超过临界点,当前时刻的目标游戏应用的崩溃率是否比前一小时增加一倍及以上;当前时刻的目标游戏应用崩溃率比昨天此时增加一倍及以上。通过上述技术手段,可以精准实时的获取到目标游戏应用的实时崩溃信息。
55.目前在现有的告警平台中,存在以下几个问题:
56.1、告警规则单一,主要从对比前一周crashj用户平均值、crash率值、影响用户数三个维度设置告警值,即,比对前7天相同时段crash用户平均值是否大于第一预设值;crash率(crash用户/联网用户)是否大于第二预设值、影响用户数是否大于第三预设值。三个维度设置告警值,提醒项目内成员关注。因此,仅仅通过上述三个维度获取到的崩溃信息仅仅是一个时间段内的平均值,无法满足当前项目的实时告警需求;
57.2、接收人无法自定义,当前接收人需要从项目中选取相关角色进行崩溃告警,无法根据需要自定义填写;选取相关角色是指该角色必须是项目中的成员。告警平台设置成员需要首先将用户的即时通信账号加入项目中。相关崩溃告警对于需要通知到相关负责人及更上一层的时候需要添加多个成员的账号。而通过自定义的方式,则可以实现需要通知相关负责人时,不需要将每个成员的即时通信号加入项目中,减少不必要的流程,节约了系统计算资源。
58.3、现有技术中的告警平台会出现不实时告警的情况。由于的崩溃信息仅仅是一个时间段内的平均值,因此当出现当前崩溃信息触发报警阈值时,而平均值并未达到触发报警的条件。
59.为了解决上述技术问题,基于上述实施例,在一应用实施例中,提供了一种告警提示方法包括:通过告警提示平台提供应用程序接口(application program interface,api),接入多个有实时告警需求的游戏应用,如图4所示,可以接入游戏应用aaa,bbb,ccc等不同的游戏应用,然后通过redis缓存数据库存储上述不同游戏应用的实时崩溃数据。如图6所示,可以通过选择崩溃的时间段进行实时展示崩溃信息的曲线图,以及崩溃引发问题。在曲线图中,启动次数表示启动游戏应用的次数;崩溃次数表示当前发生崩溃的次数;用户崩溃率是崩溃的用户数/总用户数;影响用户数表示崩溃涉及到游戏应用的账户;联网用户数表示当前实际联网在线用户数。
60.通过点击图6的某一崩溃问题的链接,可以进入如图7详情展示页面;展示的详情信息可以说明崩溃堆栈的位置,指示崩溃发生的代码片段,便于开发定位问题。
61.用户可以通过配置游戏产品信息,对游戏崩溃系统进行监控。一旦出现崩溃激增或者大面积崩溃时(如崩溃率超过3%,可以认为出现了大面积崩溃;崩溃率比前一小时陡增超过1倍,且崩溃率大于1%可以认为出现了崩溃激增),及时通过邮件和公众号形式对用户进行信息推送。信息推送的内容是某个游戏在某区域某平台的崩溃率达到或超过警戒
线,展示崩溃数据,及崩溃原因比较多的问题。用户可以查看相关崩溃信息或点击链接查看崩溃详情,通知相关人员进行修复处理,避免延误,降低游戏应用崩溃的影响面。
62.基于上述实施例,在一应用实施例中,如图9所示,上述告警提示方法包括如下步骤:步骤s902a,获取此时崩溃信息;步骤s902b,获取当前时刻前一小时的崩溃信息;步骤s902c,获取昨日此时崩溃信息;然后进入步骤s904a,在redis崩溃缓存机制中查找缓存;步骤s904b,判断redis信息系统中有无崩溃信息相关的缓存,如果有,进入步骤s904c,返回上述缓存的结果,如果没有,进入步骤s904d,获取上述崩溃信息对应的游戏项目相关的崩溃信息数据;步骤s904e,将崩溃信息对应的游戏项目相关的崩溃信息数据填充至缓存内。获取到上述崩溃信息后,进入步骤s906,判断是否符合规则1(即崩溃率超过临界点),如果符合,则进入redis告警缓存机制中,执行步骤s912a,在redis告警系统中确定出没有崩溃信息的缓存,进入s912b,获取最新10个小时的崩溃信息的趋势;s912c,通过邮件或公众号的方式推送上述崩溃信息;s912d,将上述崩溃信息填充至缓存中;s914,结束告警。在步骤s906中,如何判断出不符合规则1,则进入步骤s908,判断是否符合规则2(崩溃率比前一小时是否超过一倍及以上),如果是,则重复执行上述步骤s912a-s912d,最后执行步骤s914。在步骤s906中,如何判断出不符合规则2,则进入步骤s910,判断是否符合规则3(崩溃率比昨天的当前时刻是否超过一倍及以上),如果是,则重复执行上述步骤s912a-s912d,最后执行步骤s914;如果不符合则执行步骤s914。
63.基于上述实施例,在一应用实施例中,上述告警提示方法包括:
64.1、首先获取当前崩溃信息(此时的崩溃信息,当前时刻的前一个小时的崩溃信息,昨日此刻的崩溃信息),然后根据查找项目(游戏应用)相关信息构造key(索引字段),redis缓存系统是key-value存储型系统,key是自定义将项目进行分类设定的唯一键值,用来存储在redis缓存中并取值的。
65.判断键值是否在redis缓存中,key-value存储型系统,如果key存在,则可以通过key直接取value(索引字段对应的崩溃信息)。如果缓存中包含对应的崩溃信息,直接返回结果,如果没有,则采用异步通信机制查找崩溃数据,并填充redis缓存。此外,还能从redis缓存中查找前一小时崩溃信息和昨日此时崩溃信息。采用异步调用机制则是调用相关数据后后直接返回,不等待调用结果。填充redis缓存可以根据异步调用的函数结果,将该结果通过set方法填充到redis的缓存系统。
66.2、根据获取的崩溃信息,按照优先级顺序应用告警规则,这里告警规则可以包括:a、崩溃率超过临界点;b、崩溃率比前一小时超1倍及以上;c、崩溃率比昨天此时突增超1倍及以上。如果满足上述告警规则,则查找redis缓存中是否已经告警,如果没有此前未告警,则获取最新10h崩溃趋势,填充崩溃信息,当前填充为了下次获取时更加方便,如果每次都拉取数据,一是会频繁访问接口;二是重复计算有不必要的计算开销。通过填充redis缓存系统,只拉取一次数据,减少服务器不必要的数据拉取和计算开销。
67.之后分别发送用户该崩溃信息的告警邮件和推送公众号。如果此前已告警,为了避免消息堆积、过多打扰用户,此次可以省略不再告警;实时崩溃告警缓存有效期可以设置为一小时。
68.在本发明实施例中,采用获取用于登录目标游戏应用的各个用户账号上报的当前崩溃数据;在崩溃信息缓存系统中查找与上述当前崩溃数据关联的崩溃信息;在查找到的
上述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且上述崩溃信息尚未触发崩溃告警提示信息的情况下,生成上述崩溃告警提示信息;通过目标推送渠道推送上述崩溃告警提示信息的方式,通过在崩溃信息缓存系统中查找与上述当前崩溃数据关联的崩溃信息,在查找到的上述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且上述崩溃信息尚未触发崩溃告警提示信息的情况下,生成上述崩溃告警提示信息,达到了能够实时推送告警信息的目的,从而实现了提高告警提示的实时性,以及能够灵活配置告警规则的技术效果,进而解决了由于相关技术中提供的告警方式中使用的告警规则单一造成的告警提示的实时性较差的技术问题。
69.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
70.根据本发明实施例的另一个方面,还提供了一种用于实施上述告警提示方法的告警提示装置。如图10所示,该装置包括:
71.第一获取单元1002,用于获取用于登录目标游戏应用的各个用户账号上报的当前崩溃数据;
72.构造单元1004,用于从所述当前崩溃数据中提取崩溃项目字段,并基于所述崩溃项目字段构造所述当前崩溃数据对应的崩溃索引字段;
73.查找单元1006,用于在崩溃信息缓存系统中查找与所述崩溃索引字段匹配的崩溃信息;
74.生成单元1008,用于在查找到的所述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且所述崩溃信息尚未触发崩溃告警提示信息的情况下,生成所述崩溃告警提示信息;
75.推送单元1010,用于通过目标推送渠道推送所述崩溃告警提示信息。
76.在本发明实施例中,获取用于登录目标游戏应用的各个用户账号上报的当前崩溃数据,这里目标游戏应用可以包括但不限于各种网络游戏或单机游戏,pc机游戏或手机游戏等,在此不做限定;各个用户账号上报的当前崩溃数据,可以为多个游戏玩家登陆的账号下关联的当前崩溃数据;崩溃数据可以为在目标时间段内的游戏异常数据,具体可以包括但不限于以天为单位崩溃趋势数据,按天累计实时崩溃率,崩溃数据的排行和崩溃详情等数据,在此不做限定。通过告警提示系统可以添加目标游戏应用的各项信息;如图4所示,在告警提示系统中可以添加项目名称,地区名,运营商,平台名,服务名,账号名称和密码,以及修改时间等信息。
77.在本发明实施例中,崩溃信息缓存系统可以包括但不限于基于(remote directory server,简称redis)数据库建立的信息系统。与当前崩溃数据关联的崩溃信息,可以包括但不限于当前用户登录的目标游戏应用的崩溃率或者崩溃趋势变化率等,在此不做限定。
78.在本发明实施例中,在查找到的上述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且上述崩溃信息尚未触发崩溃告警提示信息的情况下,生成上述崩溃告警提
示信息,这里,告警提示条件可以根据需要进行设置相应的规则,也就是说,例如,上述崩溃信息中包括的目标游戏应用崩溃率达到了目标阈值时,但还没有触发崩溃告警提示信息时,可以生成上述崩溃告警提示信息。
79.在本发明实施例中,目标推送渠道可以包括但不限于通过邮件、公众号或客户端等方式。在此不做限定,例如,当在查找到的所述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且所述崩溃信息尚未触发崩溃告警提示信息的情况下,生成所述崩溃告警提示信息后,将上述崩溃告警提示信息通过邮件或游戏平台公众号的方式进行推送。
80.在一实施例中,上述告警提示装置还包括:
81.第二获取单元,用于在上述崩溃信息缓存系统中并未查找到与上述崩溃索引字段匹配的上述崩溃信息的情况下,从上述当前崩溃数据中获取到当前崩溃信息,并从上述当前崩溃数据之前获取到的历史崩溃数据中获取历史崩溃信息;
82.存储单元,用于将上述当前崩溃信息及上述历史崩溃信息,作为上述当前崩溃数据关联的崩溃信息存储到上述崩溃信息缓存系统中。
83.在一实施例中,上述生成单元1008包括:
84.第一比对模块,用于比对所述崩溃信息与所述告警提示条件,其中,所述告警提示条件中包括多个配置有比对优先级的告警条件;
85.第一确定模块,用于在所述崩溃信息与至少一个告警条件匹配的情况下,确定所述崩溃信息达到所述告警提示条件;
86.第二查找模块,用于在所述告警信息缓存系统中查找所述崩溃信息的告警状态;
87.第二确定模块,用于在所述告警状态指示尚未告警的情况下,确定所述崩溃信息尚未触发所述崩溃告警提示信息;
88.第一生成模块,用于生成所述崩溃告警提示信息。
89.在一实施例中,上述告警提示装置还包括:
90.配置单元,用于配置所述告警条件,其中,所述告警条件包括以下至少之一:当前周期中当前子周期内所述目标游戏应用的崩溃率超过第一阈值、当前周期中当前子周期内所述目标游戏应用的崩溃率与所述当前周期中所述当前子周期相邻的上一个子周期内所述目标游戏应用的崩溃率的差值大于第二阈值,当前周期中当前子周期内所述目标游戏应用的崩溃率与上一个周期内与所述当前子周期对应的历史子周期内所述目标游戏应用的崩溃率的差值大于第三阈值。
91.在一实施例中,上述告警提示装置还包括:
92.过滤单元,用于在所述告警状态指示已告警的情况下,忽略所述当前崩溃数据。
93.在一实施例中,上述第一生成模块包括:
94.第一获取子单元,用于根据所述崩溃信息获取所述目标游戏应用在所述当前崩溃数据之前的连续时间段内获取到的连续崩溃数据;
95.第一生成子单元,用于根据所述连续崩溃数据生成所述目标游戏应用的实时崩溃趋势图表;
96.第一添加子单元,用于将所述实时崩溃趋势图表添加到所述崩溃告警提示信息中。
97.在一实施例中,上述推送单元1010包括:
98.第一推送模块,用于通过邮件向所述目标游戏应用的管理账号推送所述崩溃告警提示信息,其中,所述目标推送渠道包括邮件;
99.第二推送模块,用于通过即时通信客户端的会话窗口向所述目标游戏应用的管理账号推送所述崩溃告警提示信息,其中,所述目标推送渠道包括所述即时通信客户端的会话窗口。
100.在一实施例中,上述告警提示装置还包括:
101.第二获取单元,用于获取所述目标游戏应用的所述用户账号在连续多个运行周期内的运行数据;
102.确定单元,用于在所述运行数据达到崩溃条件的情况下,将所述运行数据确定为所述当前崩溃数据,其中,所述崩溃条件包括以下之一:第i 1个运行周期内的运行数据的崩溃量与第i个运行周期内的运行数据的崩溃量的差值大于第一目标阈值,所述运行数据中崩溃量大于第二目标阈值的用户账号的数量大于第三目标阈值,所述i为大于等于1且小于等于n的整数,n为所述多个运行周期的数量。
103.在本发明实施例中,采用获取用于登录目标游戏应用的各个用户账号上报的当前崩溃数据;在崩溃信息缓存系统中查找与上述当前崩溃数据关联的崩溃信息;在查找到的上述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且上述崩溃信息尚未触发崩溃告警提示信息的情况下,生成上述崩溃告警提示信息;通过目标推送渠道推送上述崩溃告警提示信息的方式,通过在崩溃信息缓存系统中查找与上述当前崩溃数据关联的崩溃信息,在查找到的上述崩溃信息达到告警信息缓存系统中存储的告警提示条件,且上述崩溃信息尚未触发崩溃告警提示信息的情况下,生成上述崩溃告警提示信息,达到了能够实时推送告警信息的目的,从而实现了提高告警提示的实时性,以及能够灵活配置告警规则的技术效果,进而解决了由于相关技术中提供的告警方式中使用的告警规则单一造成的告警提示的实时性较差的技术问题。
104.根据本发明实施例的又一个方面,还提供了一种用于实施上述告警提示方法的电子设备,该电子设备可以是图1所示的终端设备或服务器。本实施例以该电子设备为客户端为例来说明。如图11所示,该电子设备包括存储器1102和处理器1104,该存储器1102中存储有计算机程序,该处理器1104被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
105.可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
106.可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
107.s1,获取用于登录目标游戏应用的各个用户账号上报的当前崩溃数据;
108.s2,从所述当前崩溃数据中提取崩溃项目字段,并基于所述崩溃项目字段构造所述当前崩溃数据对应的崩溃索引字段;
109.s3,在崩溃信息缓存系统中查找与崩溃索引字段匹配当前崩溃数据关联的崩溃信息;
110.s4,在查找到的崩溃信息达到告警信息缓存系统中存储的告警提示条件,且崩溃信息尚未触发崩溃告警提示信息的情况下,生成崩溃告警提示信息;
111.s5,通过目标推送渠道推送崩溃告警提示信息。
112.可选地,本领域普通技术人员可以理解,图11所示的结构仅为示意,电子装置电子设备也可以是智能手机(如android手机、ios手机等)、平板电脑、掌上电脑以及移动互联网设备(mobile internet devices,mid)、pad等终端设备。图11其并不对上述电子装置电子设备的结构造成限定。例如,电子装置电子设备还可包括比图11中所示更多或者更少的组件(如网络接口等),或者具有与图11所示不同的配置。
113.其中,存储器1102可用于存储软件程序以及模块,如本发明实施例中的告警提示方法和装置对应的程序指令/模块,处理器1104通过运行存储在存储器1102内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的告警提示方法。存储器1102可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1102可进一步包括相对于处理器1104远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1102具体可以但不限于用于目标游戏应用的各个用户账号上报的当前崩溃数据和崩溃告警提示等信息。作为一种示例,如图11所示,上述存储器1102中可以但不限于包括上述告警提示装置中的第一获取单元1002、构造单元1004、查找单元1006、生成单元1008及推送单元1010。此外,还可以包括但不限于上述告警提示装置中的其他模块单元,本示例中不再赘述。
114.可选地,上述的传输装置1106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1106包括一个网络适配器(network interface controller,nic),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1106为射频(radio frequency,rf)模块,其用于通过无线方式与互联网进行通讯。
115.此外,上述电子设备还包括:显示器1108,用于显示上述各个用户账号上报的当前崩溃数据和崩溃告警提示信息;和连接总线1110,用于连接上述电子设备中的各个模块部件。
116.在其他实施例中,上述终端设备或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(p2p,peer to peer)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。
117.根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述告警提示方法。其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
118.可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
119.s1,获取用于登录目标游戏应用的各个用户账号上报的当前崩溃数据;
120.s2,从所述当前崩溃数据中提取崩溃项目字段,并基于所述崩溃项目字段构造所述当前崩溃数据对应的崩溃索引字段;
121.s3,在崩溃信息缓存系统中查找与崩溃索引字段匹配当前崩溃数据关联的崩溃信息;
122.s4,在查找到的崩溃信息达到告警信息缓存系统中存储的告警提示条件,且崩溃信息尚未触发崩溃告警提示信息的情况下,生成崩溃告警提示信息;
123.s5,通过目标推送渠道推送崩溃告警提示信息。
124.可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-only memory,rom)、随机存取器(random access memory,ram)、磁盘或光盘等。
125.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
126.上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
127.在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
128.在本技术所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
129.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
130.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
131.以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献