首页 > 其他分享 >通过线上巡检,保障生产环境质量

通过线上巡检,保障生产环境质量

时间:2023-12-08 10:59:31浏览次数:38  
标签:巡检 场景 环境质量 校验 线上 自动化 执行

上一篇文章分享了我对于线上质量保障工作落地要面临四大挑战,以及测试右移常用的一些方法和手段,这篇文章重点聊聊线上自动化巡检相关的话题。

关于线上环境自动化巡检如何落地,以及落地执行的机制该如何建立。

 

如何理解线上自动化巡检

如上一篇文章所说,线上质量保障的实践手段,常见的有自动化巡检、配置变更检查、灰度发布验证、应急响应、质量度量和评估

这些技术实践的理念,来自于测试右移,即将每一个周期的测试活动结束环节从运维发布阶段向后拓展,覆盖到服务发布、线上验证,进行持续的线上质量运营和度量评估,为后续的迭代和技术改进提供数据支撑

由于线上场景复杂,验证和变更操作的难度以及风险更大,因此要尽量避免人工手动操作,采用自动化的方式来进行测试验证,这就是所谓的线上自动化巡检。

很好理解,即采用自动化执行的方式,对需要验证的场景和业务流程进行各种维度的测试验证,同时通过完善的监控体系和应急响应机制支撑,来达到快速发现快速解决问题的目的。

线上自动化巡检落地,大致有下面几个步骤:

  • 梳理业务场景和系统调用关系,得到巡检的测试场景;
  • 准备巡检所需的测试账号(满足风控安全要求,添加白名单);
  • 准备巡检所需的测试数据(需要进行脱敏处理,做到数据隔离);
  • 系统技术改造,对巡检产生的日志进行隔离和标识区分(避免影响正常业务);
  • 配置校验规则,巡检任务必须通过评审,且任务变更需要经过审批才能进行;
  • 构建巡检任务,通过任务Job系统调度,定时执行/手动执行/条件触发执行;

 

线上自动化巡检流程机制

由于巡检任务是在线上环境开展,考虑到巡检可能带来的风险以及发现问题后需要快速解决,因此需要一套完善合理的流程机制来保障线上自动化巡检活动正常开展。巡检流程机制如下图所示:

首先,线上巡检的场景,我们的实践经验是重点关注下面几点:

  • 业务资损场景:即可能导致企业资产损失的场景(如无限制领取优惠券,重复退款);
  • 研发规范场景:可以将研发编码规范相关的指标或者结果纳入巡检范围,提高覆盖度;
  • 历史故障场景:将历史故障所在场景纳入巡检范围,沉淀故障案例库,为混沌工程开展提供支撑;

场景梳理完成后,还需要创建对应的任务case(测试用例),经过分析评审,才能创建对应的巡检任务。

巡检任务创建完成后,需要通过规则校验(如case校验结果是否符合规则配置,case校验场景是否和案例库匹配),才能进入待执行状态。

为了避免手动执行产生误操作,原则上不允许手动执行,必须通过自动化或者任务调度的方式来触发执行。

每个自动化巡检任务都必须有校验点(简单理解就是断言),来验证结果是否符合预期。如果结果符合预期,那就生成报告,沉淀执行数据,长期来说会形成一个线上系统的质量趋势图(便于向上管理,同时也是工作产出的重要依据),这也是线上质量度量和质量运营的一部分内容。

如果巡检过程中出现异常或者其他不符合预期的情况,则需要立刻进入故障响应流程。关于故障响应,请参考我前面的文章:《线上故障的正确打开方式》。

最后,每次线上巡检结束,建议都开展一次复盘,规模不用太大,也不用花费太多时间(人数控制在5-10人,时间控制在30-60min)比较好。

关于复盘,请参考我前面的文章:《复盘的价值是什么?》/《复盘归因,提高交付质量的秘诀》。

 

标签:巡检,场景,环境质量,校验,线上,自动化,执行
From: https://www.cnblogs.com/imyalost/p/17884662.html

相关文章

  • 生产环境质量保障的四大挑战
    前面的文章分享过线上质量保障的第一要务——业务防资损的内容,也聊过我对于线上质量保障的一些实践和想法,但最终,想法和实践是要落地才能产生价值的。这篇文章,聊聊生产环境质量保障相关的话题,即为了保障生产环境的质量,我们要面临哪些挑战。 测试环境和生产环境的区别传统的软......
  • 互联网医院系统|互联网医院打开线上医疗新方向
    我们的互联网医院系统采用了最先进的互联网开发技术,包括云计算、大数据、人工智能等。通过这些技术的应用,我们能够为患者和医疗机构提供更加高效、便捷、安全的在线医疗服务。同时,我们的系统还采用了最先进的网络安全技术,保障用户数据的安全性和隐私性。一、系统功能1、在线咨询:患......
  • 无人巡检 | AIRIOT变电站运防一体管理解决方案
    传统的变电站安全管理存在着人力成本高、效率低、安全风险难以全面控制等问题,主要依靠人工巡检和监控设备,往往存在如下的运维问题和管理痛点:• 巡检监控能力差:传统变电站管理系统无法对变电站进行全面的巡检监控,以及无法完成对变电站周边环境的监测,企业管理难度大;• 异常检测不及......
  • 记一次OceanBase的线上问题排查
    问题是什么数据库报错Error1366(HY000):Incorrectstringvalue具体情况复现插入语句insertignoreintouser(name,disc_content)selectt1.name,group_concat(concat('{"评论人":"',t1.author,'","解决人":&q......
  • AutoCAD .NET 二次开发(2020版)找到折线上剩余的顶点
    如果一条折线有两个顶点,已对其中一个顶点应用了圆角,则还剩下一个顶点。 如何通过代码找到这些剩余的顶点(可能不止一个)?可通过遍历所有顶点,判断每个点连接的两边的线是否为直线如果都为直线,则为顶点,不是圆角。代码如下:for(inti=1;i<polyline.NumberOfVertices-1;......
  • 【MySQL】 线上补数据SQL
    昨天一下午就为了补业务数据,写SQL快崩溃了得...直接贴不解释了--先拿到[销售变更id]拿到[变更信息]--通过[变更信息]的主表id拿到[主表信息]--条件可以是MAX(cc.id)+GROUPBYcrId按主表id分组拿最大的变更id--或者是cc.oc_name='第一次变更'按变更名称筛选SEL......
  • OpenCASCADE曲线上点的反求
    本文主要结合代码介绍OpenCASCADE曲线上点的反求实现原理及使用过程中的一些注意事项。OpenCASCADE曲线上点的反求1Introduction曲线可以用代数方程表示,如圆可以用X^2+Y^2=R^2表示,也可以用参数方程X(u)=RCos(u),Y(u)=RSin(u)表示。要判断点是不是在线上,用......
  • java 线上问题跟踪用到的工具
    java线上问题跟踪用到的工具pref可以跟踪jvm进程的方法调用频度分析一些问题gperftools这东西还需要编译安装比较麻烦,需要运维提前安装好arthans阿里的一个在线工具挺不错的jvm内置工具jstat-gcpidjmap-heappidlinux提供的pmap-xpidtop-Hppid查看这个p......
  • 系统上线前如何避免线上问题的出现
    1、索引排查通过多维度查询information_schema表,查看表中是否增加了除id外的其他索引2、告警如果使用阿里云或者其他公有云,需要关注监控类配置,在监控中增加告警关联到具体的人员,第一时间出问题告警可以通知到人,避免客户反馈问题才发现3、监控一般系统会提前上线几天,并且进行......
  • linux服务器主机巡检:
    脚本:[root@mongodbfiles]#catxuncheck.sh#!/bin/bash#获取服务器基本信息hostname=$(hostname)ip_address=$(hostname-I|awk'{print$1}')os=$(lsb_release-ds)kernel=$(uname-r)uptime=$(uptime-p)#监控循环whiletrue;do#获取CPU信息cpu_model=$(cat/p......