图灵学院skywalking的学习

 视频学校地址:

https://www.bilibili.com/video/BV12g411c75H?p=82

 

 

 

 

 

 

 

 

 

 

 

 这里这个all方法部署spring 插件也是不少springmvc插件,skywalking的agent默认是无法拦截的,如果我们要让skywalking拦截,只需要在all方法上面添加一个@Trace注解就可以了

 如我们要使用自定义注解,外来浏览器访问/all接口的时候,因为存在requestMapping的注解skywalking是能够拦截得到的,但是访问内部访问了orderService.all()的方法,

这里时候我们要知道orderService.all()的方法执行消耗了多少时间。执行是否存在异常,skywalking是无法拦截道理的,我们要知道业务方案的具体的内部执行过程,我们只需要在orderService.all()的方法上面使用@Trace注解就可以了

 orderService.all()的方法上面使用@Trace注解,表示该方法能够被skywalking拦截,此外如果我们还需要得到orderService.all()的方法的返回值,可以使用@Tag注解,key

一般是方法名,value必须是固定的就是returnobj,注意返回的obj对象最好要使用toString方法,这样在skywalking的调用量上面就能够拦截到该方案,并且能够得到该方法的返回值

如果要得到该方案的入场value可以是arg,如下形式

 上面的这个@Tags注解,既可以拦截改方法的返回值,也可以拦截改方法的入参,arg[0]小标0表示第一个参数。arg是固定的

效果如下

 

 

 skywalking的性能分析

我们在哪些场景下面会使用到skywalking的性能分析功能了

 我们访问/order/all接口的时候,后端响应非常的慢,如果我们要定位到那句代码执行很慢,就可以使用skywalking的性能分析功能

使用性能分析

第一步,我们要新一个性能分析的任务

 上面有几个点需要注意的http://localhost:8000/order/all接口出现性能问题

端点名称是/order/all不是http://localhost:8000/order/all

第二就是最大采样数目5表示,调用http://localhost:8000/order/all必须5次以上,skywalking agent才能监控,所以外部必须调用访问5次

 点击分析按钮,能够看到具体的线程堆栈信息,分析那个代码执行最耗时

 

 

 skywalking的日志框架

 

 

 

 

 

GRPCLogClientAppender">
    <!-- 日志输出编码 -->

skywalking的告警功能

原文地址:https://www.cnblogs.com/kebibuluan/p/15335633.html