DataLeap的全链路智能监控报警实践(一):常见问题

news/2024/11/7 15:35:09/

随着字节跳动业务的快速发展,大数据开发场景下需要运维管理的任务越来越多,然而普通的监控系统只支持配置相应任务的监控规则,已经不能完全满足当前需求,在日常运维中开发者经常会面临以下几个问题:

  1. 任务多,依赖关系复杂:很难查找到重要任务的所有上游任务并进行监控。如果监控所有任务,又会产生很多无用报警,导致有用报警被忽略;

  2. 配置运维成本高:每个任务的运行情况不一样,承诺完成时间不一样,如果单独对每个任务设置监控,分析及人工对齐任务SLA成本非常高;

  3. 报警形式多样性:对于小时级的任务,不同时段的报警及时性要求不同,普通监控无法很好得满足不同时段多样的报警需求。

为了有效运维日常任务,保障数据质量,字节跳动数据平台开发套件数据开发团队自研了基于依赖关系的全链路智能监控报警——基线监控,能根据任务运行情况,智能决策是否报警、何时报警、如何报警以及给谁报警,保障任务的整体产出链路。基线监控已在字节跳动内部得到广泛使用,覆盖抖音、电商、广告等100+个项目,SLA任务的基线监控覆盖率超过80%

目前,这一能力也已经通过火山引擎DataLeap向企业开放。企业可以通过火山引擎DataLeap基线监控,有效降低监控配置成本、避免无效报警及报警泛滥。

实际案例

本节将从一个实际案例出发,介绍基线监控相较于普通监控的核心优势。

用户小明有一个对外承诺了的SLA任务,10点前必须要产出。其上下游关系如下图所示,其中SLA任务和任务4、5属于项目B,其他项目属于项目A。小明仅具有项目B的运维权限。

 

在没有基线监控前,为了保障SLA任务产出符合预期,小明会在SLA任务及其相同项目B内的上游任务上配置一系列告警规则,来预防上游任务延迟导致的SLA破线。比如在SLA任务和任务4、5上都配置了3条基础告警,以保证SLA任务延迟的风险及时感知和暴露,如下图所示。

 

但这种方式的问题也是显而易见的:利用基础监控规则,至少需要配置9条规则,才能基本完成对SLA任务的监控;而且监控规则的配置方式大多来自于专家经验,但仍有遗漏的风险;基础监控规则只能监控到有运维权限的项目,不属于本项目的上游任务是无法监控到,因此小明也就无法提前感知到延迟风险。有了基线监控,小明就只需要将SLA任务作为“保障任务”加入到基线监控中,保障任务的所有上游节点默认会被基线监控覆盖,小明再也不用配置多条基础告警规则,极大降低了告警规则配置的难度;一旦基线监控配置好之后,任意上游任务延迟,对小明来说都可以快速感知到,可有效保障SLA任务按时产出。

通过上面的实际案例,你应该对基线有了一个大概的理解。下篇文章,就让我们一起了解下基线监控的相关概念和系统架构,并详细了解下基线监控的核心实现逻辑吧。


http://www.ppmy.cn/news/241185.html

相关文章

简单实现pymysql批量写入数据方法

1、批量写入数据的方法 在日常处理数据的过程中,我们都有批量写入数据库的需求,使用pythonpymysql向mysql插入大量数据时,我们一般使用有两种方法: 1、for cursor.execute(sql),最后提交(commit()&#…

【JVM】垃圾回收机制

垃圾回收三大步骤:判断是不是垃圾(垃圾判断算法) -> 标记需要回收的垃圾(三色标记) -> 回收垃圾(垃圾回收算法)。 一、如何判断是不是垃圾(垃圾判断算法)? (1)引用计数器算法:对象中记录…

实训第二天

创建数据库指定字符集 create database firstdb default character set utf8; 主键约束(primary key)不能为空,唯一约束(unique key)可以为空,但只允许一个空值 查看表结构 desc 表名 主表从表 被引用的表是主表 比如班级…

字体下载 ttf

https://www.dafont.com/

可以免费下载字体包的地址

https://xiazai.zol.com.cn/picfonts_soft_index/picfonts_page_1.html

Unity TexMeshPro中文字体

windows系统中C:\Windows\Fonts路径可以找到很多字体(或者网上下载) 选中需要的字体拖入Unity中(或者项目Asset目录下)。 右键选择导入的字体点击Create-TextMeshPro-Font Asset,见下图 接着会多出一个字体文件 选中它…

CentOS7中安装字体库中文字体

若存在中文乱码的情况,这是因为操作系统中没有安装中文字体。 解决方案: 1、yum install kde-l10n-Chinese -y 安装语言包(针对centos 7) 2、yum reinstall glibc-common -y 更新gitbc 包(因为该镜像已阉割了该包的…

centos安装中文字体

安装过程需要root权限!使用su root切换到root用户 1、安装字体库 如果已安装,则跳过此步 yum install fontconfig2、安装更新字体命令 如果已安装,则跳过此步 yum install mkfontscale3、新建目录、上传中文字体 mkdir /usr/share/fonts…