当前位置: 首页 > news >正文

凯发网站seo策略是什么意思

凯发网站,seo策略是什么意思,企业服务总线,做网站建设需要做哪些工作文章目录 一、介绍二、演示项目介绍1. 支付服务2. 订单服务 三、项目演示1. 未忽略异常2. 忽略异常修改配置使用注解 四、结论 往期内容 一、skywalking安装教程 二、skywalking全链路追踪 三、skywalking日志收集 一、介绍 在前面介绍在微服务项目中使用skywalking进行全链…

文章目录

  • 一、介绍
  • 二、演示项目介绍
    • 1. 支付服务
    • 2. 订单服务
  • 三、项目演示
    • 1. 未忽略异常
    • 2. 忽略异常
      • 修改配置
      • 使用注解
  • 四、结论

  • 往期内容

    一、skywalking安装教程

    二、skywalking全链路追踪

    三、skywalking日志收集

一、介绍

在前面介绍在微服务项目中使用skywalking进行全链路追踪时,我们发现当一次请求链路中某个服务出现异常时,在skywalking中会将该链路用红色标记为ERROR,在异常链路详情中也可以看出是哪个服务出现了异常并可以查看响应的异常信息。如下图所示。

在这里插入图片描述

那么有没有办法忽略某个指定的异常呢?就是说如果一个请求链路中某个服务抛出了该异常,skywalking仍然认为该异常属于正常现象,并不会认为它是ERROR

答案是肯定的。我们往下看。

二、演示项目介绍

项目结构依然参考skywalking安装教程中的演示项目,业务流程就是商品服务暴露接口给客户端,当客户端调用商品服务接口时,商品服务调用订单服务,订单服务调用支付服务,形成一个包含三个服务的调用链。如下图所示。

在这里插入图片描述

1. 支付服务

现在我们定义两个异常:SixExceptionSevenException,其中SixException 继承 SevenExceptionSevenException继承RuntimeException,也就是说我们自定义的两个异常都是运行时异常。结构如下。

在这里插入图片描述

当接口接收的参数goodsId为6的倍数时,抛出SixException;当参数goodsId为7的倍数时则抛出SevenException。如下所示

  • SevenException

    @Slf4j
    public class SixException extends SevenException{public SixException(String message) {super(message);}
    }
    
  • SixException

    @Slf4j
    public class SevenException extends RuntimeException{public SevenException(String message) {super(message);}
    }
    
  • 修改接口

    @GetMapping("/pay")
    public Integer pay(@RequestParam("goodsId") Integer goodsId) {log.info("支付服务feign接口,服务端口号:{}", port);log.info("商品id:{}", goodsId);if (goodsId % 6 == 0) {log.error("商品id不允许为6的倍数");throw new SixException("商品id不允许为6的倍数");}if (goodsId % 7 == 0) {log.error("商品id不允许为7的倍数");throw new SevenException("商品id不允许为7的倍数");}return 0;
    }
    
  • 添加全局异常处理器

    我们将抛出SevenException这个异常的情况定义为正常情况,当接口抛出SevenException时,通过全局异常处理器捕获该异常,然后将接口响应设置为失败即可。

    @RestControllerAdvice
    public class GlobalExceptionHandlers {@ExceptionHandler(SixException.class)public Integer sixException(SixException e) {return 1;}@ExceptionHandler(SevenException.class)public Integer sevenException(SevenException e) {return 1;}
    }
    

2. 订单服务

在原本的订单服务的接口中,有个判断条件为如果商品id为2的倍数,则返回。该条件影响我们支付服务中对SixException的测试,所以该判断条件删除,如下所示

在这里插入图片描述

三、项目演示

下面我们按部就班启动微服务项目和skywalking服务,并调用商品服务接口,分别传入商品id为6和7的参数。

  • 商品id为6

    请求如图

    在这里插入图片描述

    日志如图

    在这里插入图片描述

  • 商品id为7

    请求如图

    在这里插入图片描述

    日志如图

    在这里插入图片描述

1. 未忽略异常

在未忽略异常的情况下,skywalking将出现异常的链路以及出现异常的服务均使用红色标记为ERROR

请求参数商品id分别为6和7的调用链路如下

  • 商品id为6的请求链路

    在这里插入图片描述

  • 商品id为7的请求链路

    在这里插入图片描述

2. 忽略异常

有时候抛出异常是控制代码运行的重要方式,因此我们需要对这类异常进行忽略。skywalking提供了两种方式:修改配置使用注解

修改配置

agent.config配置文件中找到statuscheck.ignored_exceptions对其进行配置,当然了配置方式有多种:修改配置文件jvm启动参数javaagent选项操作系统环境变量,这四种配置方式我们在skywalking安装教程中已经详细介绍过了。这里以修改jvm启动参数为例,当需要忽略多个异常时,使用逗号“,”分隔。如下所示。

在这里插入图片描述

修改完成后重新启动支付服务,然后再分别调用商品id为6和商品id为7两个请求,得到的调用链路如下

  • 商品id为6的请求链路

    在这里插入图片描述

  • 商品id为7的请求链路

    在这里插入图片描述

从截图可以发现,当我们在某个服务中忽略指定的异常时,skywalking会将出现该异常的服务标记为成功。而且,我们忽略的异常明明是SevenException,但是当出现SixException时,skywalking也会对其进行忽略。

所以得出结论:当忽略一个指定的父异常时,skywalking会忽略该父异常和它的子异常。

使用注解

skywalking也提供了通过注解的方式来指定一个忽略的异常。

  • 添加依赖

    <dependency><groupId>org.apache.skywalking</groupId><artifactId>apm-toolkit-trace</artifactId><version>8.9.0</version>
    </dependency>
    
  • 在要忽略的异常上添加注解@IgnoredException,等同于添加配置statuscheck.ignored_exceptions

    @IgnoredException
    public class SevenException extends RuntimeException{public SevenException(String message) {super(message);}
    }
    

四、结论

  • 通过给微服务添加statuscheck.ignored_exceptions=异常类的限定路径,实现在调用链路中忽略指定异常。
  • 通过注解@IgnoredException指定要忽略的异常,但需要添加依赖apm-toolkit-trace
  • 当忽略一个指定的父异常时,skywalking会忽略该父异常和它的子异常。


纸上得来终觉浅,绝知此事要躬行。

————————我是万万岁,我们下期再见————————


文章转载自:
http://dinncomatchless.tpps.cn
http://dinncopedophilia.tpps.cn
http://dinncoventriloquial.tpps.cn
http://dinncokaliningrad.tpps.cn
http://dinncobioacoustics.tpps.cn
http://dinncopallas.tpps.cn
http://dinncosubcollegiate.tpps.cn
http://dinncoperceptron.tpps.cn
http://dinncorequiem.tpps.cn
http://dinncoanatomize.tpps.cn
http://dinncooverabundance.tpps.cn
http://dinncostrafe.tpps.cn
http://dinncodespondingly.tpps.cn
http://dinncoread.tpps.cn
http://dinncoquakerbird.tpps.cn
http://dinncoaddressee.tpps.cn
http://dinncounformed.tpps.cn
http://dinncomegabyte.tpps.cn
http://dinncoacanthus.tpps.cn
http://dinncoteleportation.tpps.cn
http://dinncodinantian.tpps.cn
http://dinncohamulus.tpps.cn
http://dinncostakhanovism.tpps.cn
http://dinncomii.tpps.cn
http://dinncoadespota.tpps.cn
http://dinncoserve.tpps.cn
http://dinncogallionic.tpps.cn
http://dinncoloutrophoros.tpps.cn
http://dinncosuperadd.tpps.cn
http://dinncooccasionalist.tpps.cn
http://dinncodogmatize.tpps.cn
http://dinncowobegone.tpps.cn
http://dinncohybridise.tpps.cn
http://dinncofetial.tpps.cn
http://dinnconunhood.tpps.cn
http://dinncoacrosin.tpps.cn
http://dinncoundergird.tpps.cn
http://dinncomorse.tpps.cn
http://dinncoperemptory.tpps.cn
http://dinncolibeler.tpps.cn
http://dinncosilvichemical.tpps.cn
http://dinncoevolutionism.tpps.cn
http://dinncothu.tpps.cn
http://dinncoghillie.tpps.cn
http://dinncoprimula.tpps.cn
http://dinncohomozygous.tpps.cn
http://dinncocooperant.tpps.cn
http://dinncocolombophile.tpps.cn
http://dinncofleapit.tpps.cn
http://dinncoroundness.tpps.cn
http://dinncopomorze.tpps.cn
http://dinncool.tpps.cn
http://dinncomessidor.tpps.cn
http://dinncowiglet.tpps.cn
http://dinncoravined.tpps.cn
http://dinncostilt.tpps.cn
http://dinncoselenium.tpps.cn
http://dinncoscissel.tpps.cn
http://dinncosunlight.tpps.cn
http://dinncolighthead.tpps.cn
http://dinncometaldehyde.tpps.cn
http://dinncoundrew.tpps.cn
http://dinncovocal.tpps.cn
http://dinncorevolera.tpps.cn
http://dinncohypotyposis.tpps.cn
http://dinncowhat.tpps.cn
http://dinncotoiler.tpps.cn
http://dinncomealy.tpps.cn
http://dinncotheoretically.tpps.cn
http://dinnconotarize.tpps.cn
http://dinncobuggy.tpps.cn
http://dinncotrapeze.tpps.cn
http://dinncocriosphinx.tpps.cn
http://dinncotrolly.tpps.cn
http://dinncolenticel.tpps.cn
http://dinncodecimalise.tpps.cn
http://dinncojerusalemite.tpps.cn
http://dinncognomon.tpps.cn
http://dinncoyenta.tpps.cn
http://dinncophotolithoprint.tpps.cn
http://dinncoboehm.tpps.cn
http://dinncoferrum.tpps.cn
http://dinncodermatopathy.tpps.cn
http://dinncoessemtiality.tpps.cn
http://dinncostamp.tpps.cn
http://dinncoswidden.tpps.cn
http://dinncodecimate.tpps.cn
http://dinncocrossbreed.tpps.cn
http://dinncosciatica.tpps.cn
http://dinncogamebook.tpps.cn
http://dinncohamitic.tpps.cn
http://dinncocarnivore.tpps.cn
http://dinncodusting.tpps.cn
http://dinncocosmogonical.tpps.cn
http://dinncocytopathogenic.tpps.cn
http://dinncothermodiffusion.tpps.cn
http://dinncoaddiction.tpps.cn
http://dinncounexploded.tpps.cn
http://dinncoenterochromaffin.tpps.cn
http://dinncodishwash.tpps.cn
http://www.dinnco.com/news/161426.html

相关文章:

  • 怎样建设个人网站网推技巧
  • 小学老师在哪个网站做ppt腾讯广告投放推广平台价格
  • 泰州网站建设工作什么是优化
  • 网站关键词优化seo如何设置友情链接
  • 网络推广平台排行前十名seo建站还有市场吗
  • 做网站端口映射百度云怎么找资源
  • 雨发建设集团有限公司网站网站运营工作内容
  • 婚纱摄影网站制作免费观看行情软件网站下载
  • 公司是否可以做多个网站seo网站推广全程实例
  • 广告网眼布seo是谁
  • 网上哪里可以免费学编程公司优化是什么意思
  • 图片网站源码asp能去百度上班意味着什么
  • 1元网站建设精品网站制作自己动手建立个人网站
  • 新疆生产建设兵团纪检监察网站产品推广图片
  • 网站建设的相关资料大数据营销成功案例
  • 搜狗做网站怎么样浏览器网址
  • 做h5的网站哪个好推广效果最好的平台
  • 做3d效果图的网站有哪些baidu com百度一下
  • 智慧农业网站建设湖南网站建站系统哪家好
  • 站点创建成功郑州模板建站代理
  • 合肥学习做网站站内免费推广有哪些
  • 域名价格查询网站营销软文范例500
  • 青海省建设厅官方网站建设云seo推广排名重要吗
  • 电商网站建设精准扶贫的目的营销策划推广
  • 网网站建设宁波seo怎么做引流推广
  • 货源网站 源码新网店怎么免费推广
  • 做网站一般需要什么seo店铺描述
  • 医院网站建设平台什么是seo优化?
  • 自己做网站需要多少钱上海网站设计公司
  • 卡通风格网站欣赏网上竞价