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

本文涉及的产品
云原生网关 MSE Higress,422元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
注册配置 MSE Nacos/ZooKeeper,118元/月
简介: 快速学习课时3: 实操讲解:微服务运行异常告警(一)

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

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


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


课程内容:

一、 对异常进行处理

1、 对服务进行的一个介绍

2、 对于微服务异常进行创建

3、 APM 异常

二、 总结

三、 课程总结

 

前情回顾:

本次课程主要是讲微服务的运行异常实时告警,前面三次监听了微服务的在线状态、微服务的日志、微服务的运行状况、APM 的这块信息。

 


一、对异常进行处理

1.对服务进行的一个介绍

先关闭一个,Service02 相应不通(相当于挂掉了),如果我们要做很多告警的话,我们 Service02 这个服务部署有十二台,当我们的服务小于等于六台的时候,服务就会告诉我们我们这个服务有异常,在传统的服务器中是没有办法告诉我们的,它的反应比较慢,在对于微服的监控它用到的是缓存还是什么的,不建议使用微服务的这一套监控,主要是用来做服务注册什么的,但是要是用来做高强度、海量的系统服务、反应十分灵敏的时候是非常不适合的)

2、对于微服务异常进行创建

Service03 这边检测到了 Service02,做一个简单的统计,检查服务的时候会有一个状态,例如:我们的 servers02 这台服务,在检查前我们加一个服务,这个是为了让大家熟悉(图三),先在 Uptitme 中写一个条件(图四),

步骤:last=>Last 15 minuts=>service02 服务

在这里会显示出一个状态 som down。我们在基于这个字段进行一个统计,打开 idea,当出现 down 的时候告知我,这个服务挂掉了。因为我们的 service02 只部署了一个十零,如果部署很多个十零的话会在 service02 中会显示出来两个一个是 up,另一个是 down(右键显示),它们的上限多少个都可以拿到。如果 up>down 是没有问题的,但是如果 up

在到 spring Eureka 去查看结果,先回到我们的创建界面里面,比如:我们现在要创建的是一个 servicedown/up(服务状态),查询索引是 herbit,在里面有很多种,一种是别名的方式,然后选择一个时间字段,因为它默认按照一个时间对其进行排序,比如:每个一分钟间隔去运行。

索引这一块我们写好了,现在去写一个查询,去统计文档数量到底有多少个,使用 count 来统计,提取 sum 的字段 summary down 的字段提取其中符合多少条,然后来满足我们的一个数据信息。(图形五)

代码:

GET apm-7.7.1-metric/_ searchGET apm-7.7.1-profile/_ searchGET heartbeat-7.7.1-2020.10.23-000001/_ search{{

“query”:{

“term”:{

“monitor.name”:{

“value”:”service02”

}

}

},

“sort”:[{

“@timestamp”:{

“order”:”desc”

}

}] 

在这个图中我们已经看到,会帮我们统计属于0的多少,属于1的多少。有1的出现就说明了我们这个出现了异常(down =1时)。

生成的 body 是什么样子的 

代码:

"id" :”auto-http-0x1897D2CBC8B1FE8",

"name" :" S ervicee2" ,

"check_ group" : "d95a8f2a-1728-11eb-92cc -98eecbc67938" ,

"1p" : "127.0.0.1",

"status" :“down" ,

"duration" : {

"us" : 2002806

},

"type" : "http"

},

"ummary" : {

"up." : 0,

"dojn" : 1

},

'ecs" : {

"version" : "1.5. 0"

},

(1)tegger 间隔一分钟(可以去修改的),可以去引导区创建,在把代码粘贴进去

(2)查询的范围我们基于 runj 时间,过去一分钟就会对代码进行检查,利用数学表达式的方式来计算,如果统计过去十分钟异常的数量,就可以把它抓出来。

(3)它并不是全能的,它只是给程序一个入口,不是全部软件都适合使用 yes。主要讲的是 yes 的聚合语法,比如:统计 summer,统计里面的数值值

代码:

{“message”:"Wath [{{ctx.metadata.name}}] has exceeded the threshold"}

image.png

它会慢慢的从2变成0,它不会大于这个法制,所以它就不会触发这个告警,

语法可以从官方或者老师哪里领取资料。

后面就不创建了,因为这个 houke 服务没有启动,这个地址是不存在的。

关于微服务异常我们都全部讲完了,就讲到这里了。

"id"”: "auto-http-0X1897D2ceceB1FE8",

"name" : “servicee2",

"check_group" : "d95a8f2a-1728-11eb-92cc-98eecbc67938","ip”:127.e.e.1",

“status" : “down"","duration" :

{“us" : 2002806},

“type" : "http"

lumamary" : {“up”: 0,"doIn” : 1},

“ecs" : {

]“version” : "1.5.0""},

步骤:

点击  Watcher=>在点 create=> 在点第一个就会出现下面这个!

相关文章
|
运维 监控 负载均衡
OBCP第八章 OB运维、监控与异常处理-常见异常处理
OBCP第八章 OB运维、监控与异常处理-常见异常处理
164 0
|
3月前
|
SQL Kubernetes 监控
微服务从代码到k8s部署应有尽有系列(九、事务精讲)
微服务从代码到k8s部署应有尽有系列(九、事务精讲)
微服务从代码到k8s部署应有尽有系列(九、事务精讲)
|
3月前
|
消息中间件 Kubernetes Kafka
微服务从代码到k8s部署应有尽有系列(十一、日志收集)
微服务从代码到k8s部署应有尽有系列(十一、日志收集)
|
消息中间件 分布式计算 搜索推荐
【KafkaStream】微服务学习笔记十一:流式计算概述&KafkaStream入门
【KafkaStream】微服务学习笔记十一:流式计算概述&KafkaStream入门
461 0
【KafkaStream】微服务学习笔记十一:流式计算概述&KafkaStream入门
|
运维 关系型数据库 MySQL
OBCP第八章 OB运维、监控与异常处理-日志查询
OBCP第八章 OB运维、监控与异常处理-日志查询
184 0
|
XML 缓存 前端开发
【解决方案 十一】问题排查方法的思考
【解决方案 十一】问题排查方法的思考
112 0
|
弹性计算 运维 监控
【最佳实践】《微服务架构日志采集运维管理》手把手实操步骤与常见问题
根据阿里云《微服务架构日志采集运维管理》最佳实践文档实践步骤复现应用搭建的过程,同时总结归纳部分在应用搭载过程中遇见的问题与解决方案。
|
消息中间件 运维 监控
实操讲解:微服务运行状态监测(一)|学习笔记
快速学习实操讲解:微服务运行状态监测(一)
574 0
实操讲解:微服务运行状态监测(一)|学习笔记
|
消息中间件 运维 监控
微服务全生命周期稳定性实践(二)| 学习笔记
快速学习微服务全生命周期稳定性实践。
微服务全生命周期稳定性实践(二)| 学习笔记
|
消息中间件 弹性计算 运维
微服务全生命周期稳定性实践(一)| 学习笔记
快速学习微服务全生命周期稳定性实践。
微服务全生命周期稳定性实践(一)| 学习笔记