【技术实现步骤摘要】
故障注入的方法、装置、电子设备和存储介质
本申请涉及计算机
,尤其涉及云计算领域。
技术介绍
随着微服务技术的发展,系统健壮性和容错能力得到极大的提升,能够承载越来越多的用户量。但据不完全统计程序自身的容错性问题和非预期代码缺陷导致的故障,占所有故障的50%以上。因此如何提前发现程序自身问题,对于系统可用性提升有着至关重要的影响。传统提升程序自身质量的方法,依靠软件测试工程师的测试。当前工程师采用手动注入故障进行线上故障演练,比如通过中控机登录到线上机器,通过重启、关机等命令模拟线上机器故障。
技术实现思路
本申请提供了一种故障注入的方法、装置、电子设备和存储介质。根据本申请的一方面,提供了一种故障注入的方法,包括:获取故障注入任务,故障注入任务包括至少一个目标服务标识及其对应的故障场景;根据各个目标服务标识确定目标服务,并获取目标服务的状态;若目标服务的状态为正常状态,则将目标服务标识对应的故障场景注入目标服务中。根据本申请的另一方面,提供了一种故障注入的装置,包括:第一获取模块,用于获取故障注入任务,故障注入任务包括至少一个目标服务标识及其对应的故障场景;第二获取模块,用于根据各个目标服务标识确定目标服务,并获取目标服务的状态;注入模块,用于若目标服务的状态为正常状态,则将目标服务标识对应的故障场景注入目标服务中。根据本申请的技术解决了人工注入故障场景的问题,降低了故障注入的人工成本,且有利于保证故障注入的正 ...
【技术保护点】
1.一种故障注入的方法,包括:/n获取故障注入任务,所述故障注入任务包括至少一个目标服务标识及其对应的故障场景;/n根据各个所述目标服务标识确定目标服务,并获取所述目标服务的状态;/n若所述目标服务的状态为正常状态,则将所述目标服务标识对应的故障场景注入所述目标服务中。/n
【技术特征摘要】
1.一种故障注入的方法,包括:
获取故障注入任务,所述故障注入任务包括至少一个目标服务标识及其对应的故障场景;
根据各个所述目标服务标识确定目标服务,并获取所述目标服务的状态;
若所述目标服务的状态为正常状态,则将所述目标服务标识对应的故障场景注入所述目标服务中。
2.根据权利要求1所述的方法,还包括:采集所述目标服务的目标指标;
在监测到采集的所述目标指标超出预设指标区间的情况下,停止注入所述故障场景。
3.根据权利要求2所述的方法,还包括下述至少一项:
撤销所述目标服务中注入的故障场景;
结束所述故障注入任务。
4.根据权利要求1至3任一所述的方法,其中,所述根据各个所述目标服务标识确定目标服务,并获取所述目标服务的状态,包括:在所述故障注入任务通过审核的情况下,根据所述目标服务标识确定目标服务,并获取所述目标服务的状态;
其中,所述故障注入任务通过审核包括下述至少一项:
在所述故障注入任务中故障场景中命令和代码段的风险中至少一项低于预设风险级别的情况下,确定所述故障注入任务通过审核;
在接收到针对所述故障注入任务的审核通过指令的情况下,确定所述故障注入任务通过审核。
5.根据权利要求1至3任一所述的方法,所述方法还包括:根据接收到的任务配置指令,配置所述故障注入任务;
所述配置所述故障注入任务包括下述至少一项:
添加故障场景至所述故障注入任务中;
对所述故障注入任务中的故障场景进行删除、编辑或调整注入顺序;
设置所述故障注入任务的触发方式。
6.根据权利要求5所述的方法,其中,所述添加故障场景至所述故障注入任务中,包括:从故障管理模块中选择至少一个故障场景添加至所述故障注入任务中,所述故障管理模块预存有多个故障场景。
7.根据权利要求6所述的方法,其中,所述故障管理模块中故障场景的管理方式包括下述至少一项:
对所述故障管理模块中的故障场景进行增加、删除、修改或查看;
根据从故障程序编写界面接收到的程序内容生成故障场景,并将所述生成的故障场景上传至所述故障管理模块;其中,在所述生成故障场景前,对所述接收到的程序内容中的高危命令和高危代码段进行标识,所述标识用于提示故障场景的注入风险;
将所述故障管理模块中的故障场景与对应的目标服务绑定。
8.根据权利要求2所述的方法,其中,所述采集所述目标服务的目标指标包括下述至少一种方式:
从指定的指标数据推送接口获取所述目标服务的目标指标;
从所述目标服务中采集所述目标指标。
9.一种故障注入的装置,包括:
第一获取模块,用于获取故障注入任务,所述故障注入任务包括至少一个目标服务标识及其对应的故障场景;
第二获取模块,用于根据各个所述目标服务标识确定目标服务,并获取所述目标服务的状态;
注入模块,用于若所述目标服务的状态为正常状态,则将所...
【专利技术属性】
技术研发人员:管宇,
申请(专利权)人:北京百度网讯科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。