课时3: 实操讲解:微服务运行异常告警(二)|学习笔记

本文涉及的产品
MSE Nacos 企业版免费试用,1600元额度,限量50份
注册配置 MSE Nacos/ZooKeeper,118元/月
任务调度 XXL-JOB 版免费试用,400 元额度,开发版规格
简介: 快速学习课时3: 实操讲解:微服务运行异常告警(二)

开发者学堂课程【Elasticsearch 实战进阶营:课时3: 实操讲解:微服务运行异常告警(二)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/899/detail/14320


课时3: 实操讲解:微服务运行异常告警(二)


3、APM 异常

比如我们选着的是 service01 这个服务,在过去十五分钟,假设这个服务消耗的时间的0.1毫秒,服务超过一秒钟需要告警,该怎么做呢?

方法是一摸一样的,首先我们先打开微服务地址(countèsumèOF select a fieldèsummary.down),这个服务访问的时间很长.在选中 GROUPED OVER 这个,在选中 all 下的 all documents,很快就会捕捉到。

它是基于 api 来捕捉的,刚刚触发的时候超过10秒,很显然这中肯定是要报警的。

它属于典型的服务异常,服务的超时异常。上面那个是服务运行状态异常,而这个是服务运行性能异常,我们基于这个来做一个告警。

微服务的监控有好几个:有的是微服务的 error,出现错误的异常;一个是 trysketion 的一个异常,它主要是在 span 里面。

我们可以来查一下,查询的数据根据 service name =service01,来按照时间来排序,也就是最新的数据,可以看到一个消耗时间 span,超过了微秒纳秒,换算可以去查一下。

在 idea 重新启动项目,在到网页里面去刷新一下网页。

比如我们的这个服务超过了一百万,也算我们的这个服务出现了异常了,基于这个来做一个告警,更具这个时间异常来创建一个,过去一分钟间隔来统计,主要统计的是它的最大的值(时间),根据自己的需求来拿,注意要拿最大的,间隔十五秒来刷新。

image.png

选着 span duwietion error 超过多少,值很大超过这个值。当超过这个值的时候出现了异常报警,触发报警的时候选着一个 weikebaok(图形如下)

 image.png

在表达式里面提取最大值,如果这个条件超过了这个值,同时转换一下,然发送一个请求,告诉服务器。

可以把服务的接口或者名称发一个报警(图形如下),可以从上下文里面,把字段;

比如:service02 这个字段,把这个服务拉进去,把这个信息传到服务里面,也可以把这个 api 的接口也传进去,span 的信息特别多,可以在之后的学习的时候进行学习。

讲 api 的深入学习。

GET apm-7.7.1-error/_search

GET apm-7.7.1-transaction/_searchGET apm-7.7.1-span/_search

{

"query": {"term"": {

" service.name":d

"value": "serficee1"

}

sort": [{

"@timestamp": {"arder": "desc"}

]]

GET apm-7.7.l-metric/_search

apm-7.7.1-profile/ search 

创建告警的方法都是一样的,日志异常比较简单,我们也是只做了一些常规的异常,日志采集这些,方法都是一样的。

它的运行效果(如下图):

 image.png

 

二、总结

总共有四次:

讲 harbit 微服务线上运行情况,可以监控到作用服务器的运行状况,而且非常的便捷;即使你的服务增加,但是对它都是没有太多的影响的。

这里只是展示搭建了六个,要是搭建一百个、两百个,只要配置一个简单的 herbit 都可以进行下去。

文本日志,我们是基于 file bit 来采集的,在 logs 里面它默认的时候也会收集进来;

如果我们的 file bit 创建可以看见一个实时流的, 相对可以持续的刷新,非常的方便,相当于大屏。

可以抓取任何的日志,建议大家抓取的时候用 json 的格式,这样抓取下来的数据对代码影响较小,代码是一样的进行。

包括中间使用的 kafuka 提取数据的时候都是一样的。所以不建议使用这种格式,阅读性是可以的,实用性太复杂了。

Apm,我们去抓取的时候要部署 apm service,我们在每一个的微服务里面把参数加进去,我们通过 javaajingt 采集,服务名字;

然后把这个地址 apmagint 定义好命名空间 pakging 名字,然后这个工作就完成了,非常的简单,它自己会去扫描这些 api 的框架,o代码这种。

创建了告警的方式,我们都可以创建,基于已有的内容,相当于我们把运行状态、日志、apm 一网打尽了,构成了基本的微服务体系。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
打赏
0
0
0
0
55
分享
相关文章
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(二)Rest微服务工程搭建
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(二)Rest微服务工程搭建
315 0
微服务——SpringBoot使用归纳——Spring Boot中的全局异常处理——处理系统异常
本文介绍了在Spring Boot项目中如何通过创建`GlobalExceptionHandler`类来全局处理系统异常。通过使用`@ControllerAdvice`注解,可以拦截项目中的各种异常,并结合`@ExceptionHandler`注解针对特定异常(如参数缺失、空指针等)进行定制化处理。文中详细展示了处理参数缺失异常和空指针异常的示例代码,并说明了通过拦截`Exception`父类实现统一异常处理的方法。虽然拦截`Exception`可一劳永逸,但为便于问题排查,建议优先处理常见异常,最后再兜底处理未知异常,确保返回给调用方的信息友好且明确。
249 0
微服务——SpringBoot使用归纳——Spring Boot中的全局异常处理——处理系统异常
微服务——SpringBoot使用归纳——Spring Boot中的全局异常处理——拦截自定义异常
本文介绍了在实际项目中如何拦截自定义异常。首先,通过定义异常信息枚举类 `BusinessMsgEnum`,统一管理业务异常的代码和消息。接着,创建自定义业务异常类 `BusinessErrorException`,并在其构造方法中传入枚举类以实现异常信息的封装。最后,利用 `GlobalExceptionHandler` 拦截并处理自定义异常,返回标准的 JSON 响应格式。文章还提供了示例代码和测试方法,展示了全局异常处理在 Spring Boot 项目中的应用价值。
89 0
【Azure 微服务】Service Fabric中微服务在升级时,遇见Warning - System.Collections.Generic.KeyNotFoundException 服务无法正常运行
【Azure 微服务】Service Fabric中微服务在升级时,遇见Warning - System.Collections.Generic.KeyNotFoundException 服务无法正常运行
139 0
【Azure 微服务】Service Fabric中微服务在升级时,遇见Warning - System.Collections.Generic.KeyNotFoundException 服务无法正常运行
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(七)Spring Cloud Gateway服务网关
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(七)Spring Cloud Gateway服务网关
524 0
在微服务架构中,每个服务通常都是一个独立运行、独立部署、独立扩展的组件,它们之间通过轻量级的通信机制(如HTTP/RESTful API、gRPC等)进行通信。
在微服务架构中,每个服务通常都是一个独立运行、独立部署、独立扩展的组件,它们之间通过轻量级的通信机制(如HTTP/RESTful API、gRPC等)进行通信。
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(目录大纲)
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(目录大纲)
352 1
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(六)Hystrix(豪猪哥)的使用
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(六)Hystrix(豪猪哥)的使用
259 1
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(三)Eureka服务注册中心
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(三)Eureka服务注册中心
186 1
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(九)Nacos+Sentinel+Seata
【Springcloud Alibaba微服务分布式架构 | Spring Cloud】之学习笔记(九)Nacos+Sentinel+Seata
1584 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问