APO的告警关联和告警故障影响面功能介绍

news2024/11/25 5:03:13

一般IT系统都会配置一系列告警来提醒运维或开发人员,系统存在问题。将告警进行分类之后,至少会有以下种类的告警:
系统运行资源告警(CPU、内存、磁盘)

  • 网络质量告警
  • Kubernetes事件告警
  • 应用级别告警(延时、错误率、吞吐量)
  • 中间件告警


可观测性系统比较棘手的问题是告警噪音,告警噪音在某些场景是真实有效的,而在某些场景下又成为了噪音。APO团队认为告警噪音很难避免,但是可以通过在业务接口维度进行区分,快速聚焦到对业务产生影响的告警之上。同时APO还提供了故障影响面功能,用以判断告警到底对用户直接操作的入口业务有没有影响,如果有影响,需要确定什么级别的人员该被叫进来作为主导者,以便更快地调动资源恢复业务。

传统告警的处理方式

运维人员根据其经验设置告警规则,每种告警其实都是有意义的,如果没有意义,完全可以不设置该告警。

但在实际场景中,经常会出现告警噪音,也就是这种本应该产生警示作用的告警,实际上并没有实现其效果,反而成为了噪音。

我们必须要承认一个事实:告警噪音是很难避免的。

告警噪音:通常指的是那些对实际系统健康或业务影响不大的告警

这类告警的出现原因有多种,主要包括以下几方面:

1. 阈值设置不合理(很难设置准确,因为相同阀值情况下,不同业务、相同业务不同压力都可能产生不同的后果)

传统的告警系统依赖于静态阈值,当某些指标(如CPU、内存等)超过预设的阈值时会触发告警。若阈值设定过于严格或不够灵活,就会导致许多不具备实际影响的波动也触发告警。例如,短时间的CPU使用率上升可能只是某个后台任务的正常行为,正常情况下并不会影响系统的稳定性,但如果阈值设置过低,系统仍然会产生告警。但是也有可能某些业务的延时波动就是该波动导致的。

2. 指标波动过大(绝大多数情况下,即便是无效告警,也是一种信息提示)

一些系统和应用在正常运行时,某些指标会有自然的波动。如果这些波动频繁触发告警,但并没有实际问题,这些告警会成为噪音。没有考虑系统的正常波动范围和基线,很容易导致无效告警,但是某些情况下,告警也确实会提醒故障,所以很多时候告警的阀值就会保持不动。

传统告警方式总结

传统告警非基于智能基线的告警有其存在的理由,阀值肯定是针对某些业务有效果的情况下才配置的,指标如果波动过大,也确实需要告警出来,只是作为告警应该分级处理。

如果告警系统没有设置优先级(例如将告警分为“高”、“中”、“低”优先级),那么所有告警都被平等处理,导致一些不重要的告警与关键告警混在一起,无法及时区分真正需要处理的问题。


APO的告警分类展示逻辑

APO的核心页面设计是基于服务端点也就是业务接口来展示的,通过分析业务接口来判断告警是否真的产生了故障影响有助于判断哪些告警是真的告警,而忽略那些告警噪音。

APO的告警排查使用思路:

  1. 重点识别哪些服务端点代表的接口有异常

  2. 在接口详情中找到有哪些告警

  3. 判断故障影响面,告警是否很严重?需要拉上哪些人立马排查

APO首页告知哪些接口产生了异常

APO首页列出了所有接口的同比影响,并智能排序,只有接口同比有异常的才会排在前面展示,如果接口同比没有异常很可能是排序在下一页中,用户可能都不需要关心。

告警与接口的影响关系


系统运行资源告警(CPU、内存、磁盘)

系统运行资源告警(CPU、内存、磁盘)在首页中会以基础设施状态告警呈现,只要接口同比有异常且基础设施状态亮红灯,就可以确认基础设施状态影响了该接口的正常执行。

 如果在首页中所有的接口指标变化不大,说明该系统运行资源告警(CPU、内存、磁盘)暂时不需紧急介入,如果有时间可以关注为什么产生该告警。

网络运行质量告警

网络运行质量告警在首页中会以网络质量状态呈现,只要接口同比有异常且网络质量状态红灯,就可以确认网络质量状态影响了该接口的正常执行。

如果在首页中所有的接口指标变化不大,说明该网络告警影响面很小,暂时不需紧急介入,如果有时间可以关注为什么产生该告警。

Kubernetes事件告警

Kubernetes事件告警在首页中会以Kubernetes事件告警状态呈现,只要接口同比有异常且Kubernetes事件红灯,就可以确认K8S事件影响了该接口的正常执行。

如果在首页中所有的接口指标变化不大,说明该网络告警影响面很小,暂时不需紧急介入,如果有时间可以关注为什么产生该告警。

应用级别告警

应用级别的告警如果是延时、错误率、吞吐量的同比异常,那可以直接看查看接口详情,排查问题。

APO 的服务详情中的告警tab,列出来所有可能和业务接口有关的告警

例如:ts-travel-service出现了接口的延时同比上升或者错误率同比上升,可以在该服务中,查看所有该接口关联起来的告警信息,从而快速聚焦到这些告警之上。

告警之后的第一步行为:告警的影响面分析

通过学习SRE相关知识或者告警处理的第一直觉,应该是判断这个告警的影响范围,也就是完成影响面分析,从而快速判断该告警是否会从简单告警演变成P0的故障。

告警的影响面分析不管如何做,最终需要回答以下的问题:

●目前告警对哪些接口产生了影响?

●这些接口又影响了用户使用哪些业务操作?


总结

告警噪音是很难消除的,而且告警噪音本身也是一种提示告知某些指标有异常。APO承认这个事实,推荐采用如下方式排查告警:

APO的告警排查使用思路:

  1. 重点识别哪些服务端点代表的接口有异常(如果没有接口有异常,说明告警都是告警噪音。当然要对告警分级,比如磁盘满,进程挂掉等场景都是严重告警和接口异常无关)
  2. 在接口详情中找到有哪些告警
  3. 判断故障影响面,告警是否很严重?需要拉上哪些人立马排查

    APO介绍:

    国内开源首个 OpenTelemetry 结合 eBPF 的向导式可观测性产品

    apo.kindlingx.com

    https://github.com/CloudDetail/apo

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2164067.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java项目: 基于SpringBoot+mybatis+maven中小型医院网站管理系统(含源码+数据库+开题报告+毕业论文)

一、项目简介 本项目是一套基于SpringBootmybatismaven中小型医院网站管理系统 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试,eclipse或者idea 确保可以运行! 该系统功能完善、界面美观、…

逻辑回归函数求导过程自推 LaTex 语法

背景 之前对逻辑归回函数求导过程进行过推导,当时不会用公式编辑,直接在纸上手动推导的,再重写一下,顺便回顾一下数学知识。 逻辑回归函数 逻辑回归的数学函数表达式为: g ( z ) 1 1 e − 2 g(z)\frac{1}{1e^{-2…

光控资本:国企改革概念股是什么意思?

国企改革概念股是指与国有企业改革相关的上市公司股票。 这些国企获益于国企改革方针,并有望在改革进程中完结企业运营结构优化、企业竞争力加强、运营效果添加、股票估值提高。相关国企股票的商场表现通常会遭到国企改革方针开展、企业改革成效、商场全体行情等多…

轻松编排工作流,浅谈DolphinScheduler如何使用Python调用API接口?

最近,在做某大型零售企业项目时,有客户用到DolphinScheduler,并咨询是否可以用Python脚本编排工作流?该如何实现?相信有很多人会有这样的疑问,那么,本文将为我们简单分享DolphinScheduler的优势…

2024骨传导耳机品牌推荐!深度实测五大超值尖货!

作为一位有着十余年数码测试经验的博主,近期经常收到粉丝朋友询问哪款骨传导耳机值得入手之类的问题,骨传导耳机作为当下非常热门的蓝牙机型,拥有不入耳佩戴更健康舒适等问题,那么在本次的耳机选购课堂中,主要想跟大家…

Craft:年度 Mac 应用,卡片式笔记新星

今年的年度 Mac 应用大奖颁给了Craft,这是一款集笔记、文档和个人管理于一体的独特工具。Craft 最大的亮点在于其卡片式的交互设计,这种设计让信息组织变得更加直观且高效。 尽管它仅上线了一年时间,但已经展现出了不输于许多老牌笔记应用的…

【MySQL】数据库基础认识

W...Y的主页 😊 代码仓库分享💕 目录 1. 数据库基础 1.1 什么是数据库 1.2 主流数据库 1.3 基本使用 1.3.1 MySQL安装 1.3.2 连接服务器 1.3.3 服务器管理 1.3.4 服务器,数据库,表关系 1.3.5 使用案例 1.3.6 数据逻…

一些做题中总结的零散的python函数的简单运用

输出保留两位数的小数 将16进制(可修改)的数进制转换成十进制并输出 大小写转化,第一个是搞成全部大写的,第二个高成全部小写的,最后一个是搞成第一个是大写的其他全部是小写的 将这个n的两边空格去掉 使用print(n,end…

什么是PPT,怎么制作?5款办公必备的幻灯片制作软件!

要说职场人日常离不开的两样东西,非幻灯片和PPT莫属,不论是日常会议、项目汇报还是客户展示,幻灯片和PPT都扮演着至关重要的角色。 然而,很多人可能会混淆幻灯片和PPT这两个概念,认为它们是同一回事。事实上&#xff…

OpenHarmony(鸿蒙南向)——平台驱动开发【PWM】

往期知识点记录: 鸿蒙(HarmonyOS)应用层开发(北向)知识点汇总 鸿蒙(OpenHarmony)南向开发保姆级知识点汇总~ 持续更新中…… 概述 功能简介 PWM(Pulse Width Modulation&#xff…

用通义灵码如何快速合理解决遗留代码问题?

本文首先介绍了遗留代码的概念,并对遗留代码进行了分类。针对不同类型的遗留代码,提供了相应的处理策略。此外,本文重点介绍了通义灵码在维护遗留代码过程中能提供哪些支持。 什么是遗留代码 与过时技术相关的代码: 与不再受支持的…

Day 43~48 smbms

SMBMS SMBMS是超市订单管理系统的简称 数据库: 项目如何让搭建? 考虑使用不使用Maven? 依赖,jar 项目搭建准备工作 1.搭建一个mavenweb项目 2.配置Tomcat 3.测试项目是否能够跑起来 4.导入项目中会遇到的jar包 jsp,servle…

在nuxt中集成mars3d

创建一个nuxt项目 创建一个项目&#xff0c;安装依赖 安装mars3d ,安装mars3d-cesium 替换app.vue <template><div id"mars3dContainer" class"mars3d-container"></div><!-- <div>123</div> --> </template&…

无人机之模拟图传篇

无人机的模拟图传技术是一种通过模拟信号传输图像数据的方式&#xff0c;它通常使用无线电模块或专用通信协议进行数据传输。 一、基本原理 模拟图传技术的工作原理是将摄像头或相机设备采集到的图像数据&#xff0c;通过模拟信号的形式进行传输。这些模拟信号在传输过程中可能…

贪心算法专题(一)

目录 1、贪心算法简介 1.1 什么是贪心算法 1.2 贪心算法的特点 1.3 贪心算法的学习方向 2、算法应用【leetcode】 2.1 题一&#xff1a;柠檬水找零 2.1.1 算法原理 2.1.2 算法代码 2.2 题二&#xff1a;将数组和减半的最少操作次数 2.2.1 算法原理 2.2.2 算法代码 2…

OpenCV图像文件读写(4)解码图像数据函数imdecode()的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 从内存缓冲区读取图像。 imdecode 函数从指定的内存缓冲区读取图像。如果缓冲区太短或包含无效数据&#xff0c;函数将返回一个空矩阵 (Mat::dat…

双十一数码什么值得买?盘点双十一最值得入手的数码好物

每年双11已经成为了人们购物的重要节点&#xff0c;除了手机外的其他数码产品也是购物清单上不可或缺的一部分。我们的生活和工作中&#xff0c;使用的数码产品越来越多。是时候给大家种草一波3C数码好物了&#xff0c;键盘、鼠标、平板、耳机、显示器啥都有&#xff0c;产品虽…

Web端云剪辑解决方案,支持多种滤镜、转场、贴纸、粒子、蒙版类特效效果

美摄科技隆重推出其革命性的Web端云剪辑解决方案&#xff0c;旨在为全球创作者提供一站式、高效能、云端化的视频编辑新体验&#xff0c;让视频创作不再受限于时间与空间&#xff0c;轻松实现专业级的视觉效果。 【云端赋能&#xff0c;创意无界】 美摄科技的Web端云剪辑解决…

“接口测试简介”——实现接口测试,软件自动化测试入门攻略

实现接口测试 接口测试是检查程序各部分之间的交互点&#xff0c;从无测试到手工测试、借助脚本或工具实现自动化测试以及测试平台的构建&#xff0c;接口测试近几年发展非常迅速&#xff0c;许多企业也都开始重视接口测试&#xff0c;因此&#xff0c;接口测试也成了测试人员…

php在线相册

1、将静态页面效果完成 解压到www里 整个数据 暂时是错误的 建立连接密码为root 运行sql文件 开始 测试 导入alumbenew2 2.提交表单方式 3.利用php获取表单值的方法