无监控,不运维!Prometheus预测与告警详解(一)

news2024/11/24 9:39:02

文章部分内容来源于公众号——布博士(擎创科技资深产品专家)

前言:

说到Prometheus,很多人第一印象可能是希腊神话中泰坦火神的形象, 但在我们程序员的眼里,Prometheus 是一个用GO编写的系统监控和警报工具包,由 Soundcloud 构建,并于 2016 年作为继 Kubernetes 之后的第二个托管项目加入云原生计算基金会(CNCF)。

在Prometheus官网的封面中这样写道:From metrics to insight,从指标到洞察力,通过指标去洞察你的系统,为我们的系统提供指标收集和监控的开源解决方案。也就是说,Prometheus 是一个数据监控的解决方案,它可以帮助我们随时掌握系统运行状态,快速定位问题和排除故障。

​今天给大家带来的分享也是基于最近对它的一些研究所得出的心得,如有不正之处,欢迎指正。

本次分享主要是想着重介绍一下Prometheus的指标预测能力。在这里,我们暂且不讨论如何采集和加工指标,并通过Alert Rule生成告警。因为后续我将陆续分享自己整理的Prometheus生态系统学习笔记,如下图所示,敬请期待。

一、predict_linear使用说明

在Prometheus中,预测方法predict_linear是其中一个内置函数。其使用线性回归模型来预测指标的未来趋势。它可以基于历史数据来预测未来的值,并支持设置预测范围和置信度等参数。

在看到的几个国外用户案例中,将该方法用于 Alert Rule 预测某个指标在未来一段时间是否达到其额定规划并产生告警是非常普遍的应用。

从该算法的特性上来看,其适用于以下类型的指标:

  • 具有线性趋势的指标,比如磁盘容量、业务交易量等典型指标。

  • 对噪声敏感,因此在使用它时请确保数据质量良好。对于业务交易量这样的指标,由于基础设施、数据库、程序设计等原因常常会导致业务交易量异常产生告警,因此在预测时需要排除这些异常值,以保证未来一段时间内的预测结果不受异常值的干扰。

  • 以下是predict_linear函数的语法:

其中:

  • v:range-vector类型,表示用于预测的指标向量。

  • t:scalar类型,表示预测的时间范围(以秒为单位)。

  • confidence:scalar类型,表示置信度。默认值为 0.95。

以下是一个使用predict_linear函数预测业务交易量指标的示例:

在此示例中,我们使用predict_linear函数来预测名为orders_beijing的job中business_transactions_total指标的未来趋势。我们使用[180d]范围向量来表示过去180天的历史数据,并将t参数设置为1d表示预测未来一天的值。我们还将confidence参数设置为0.99,以提高预测的置信度。

二、配置规则并生成告警

以下是在Prometheus中alert.rule.yml中的配置示例,用于使用predict_linear函数预测名为orders_beijing的job中business_transactions_total指标的未来趋势,如果指标在未来一天内达到阈值,则生成告警,在这里我们假设orders_beijing服务每天最大的可处理订单量为100000笔:

请注意,您需要根据实际情况修改指标名称、时间范围和阈值等参数,以及告警的级别、摘要和描述等信息。

本次分享先到这儿了,对于Prometheus有什么想了解的,欢迎大家评论区留言交流互动,下期我们再见~


​擎创科技,Gartner连续推荐的AIOps领域标杆供应商。公司致力于协助企业客户提升对运维数据的洞见能力,优化运维效率,充分体现科技运维对业务运营的影响力。

行业龙头客户的共同选择

​了解更多运维干货与技术分享

可以右上角一键关注

我们是深耕智能运维领域近十年的

连续多年获Gartner推荐的AIOps标杆供应商

下期我们不见不散

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

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

相关文章

WiFi模块IBF165,3路开关量输入,2路开关量输出,流量计脉冲计数

产品特点: ● 3路开关量输入,2路开关量输出 ● DI每一路都可用作计数器或者频率测量 ● DO每一路都可独立输出PWM信号 ● 支持Modbus TCP 通讯协议 ● 内置网页功能,可以通过网页查询电平状态 ● 可以通过网页设定输出状态 ● 宽电…

Windows 中使用 Linux 的 5 种方法详解

概要 作为一名开发者,你可能需要同时运行 Linux 和 Windows。幸运的是,有多种可以两全其美的方法,你不需要为每个操作系统购买不同的电脑。 在这篇文章中,我们将探讨在 Windows 机器上使用 Linux 的几种方法。其中一些是基于浏览…

Spring Cloud Stream消息驱动项目集成

📝 学技术、更要掌握学习的方法,一起学习,让进步发生 👩🏻 作者:一只IT攻城狮 ,关注我,不迷路 。 💐学习建议:1、养成习惯,学习java的任何一个技术…

Spark(9):RDD的序列化

目录 0. 相关文章链接 1. 闭包检查 2. 序列化方法和属性 3. Kryo 序列化框架 4. 核心点总结 0. 相关文章链接 Spark文章汇总 1. 闭包检查 从计算的角度, 算子以外的代码都是在 Driver 端执行, 算子里面的代码都是在 Executor 端执行。那么在 scala 的函数式编程中&…

C# 泛型List排序的实现

本文主要介绍了C# 泛型List排序的实现,分享给大家,具体如下: 代码 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 5…

Github下载Failed to connect to github.com port 443: Timed out

方法一: 使用ssh下载的方式 方法二 使用github加速网站 https://gitclone.com ,用命令行: git clone https://http://gitclone.com/http://github.com/xxx/yyy 参考链接 github克隆失败提示“443:Timed out”怎么解决? - 知乎

形式化验证,Complete Formal Verification of TriCore2 and Other Processors(五)

目录 一、Article:文献出处(方便再次搜索) (1)作者 (2)文献题目 (3)文献时间 (4)引用 二、Data:文献数据(总结归纳,方便理解&am…

Linux 学习记录45(C++篇)

Linux 学习记录45(C篇) 本文目录 Linux 学习记录45(C篇)一、纯虚函数和抽象类1. 纯虚函数2. 抽象类 二、C中的异常处理1. 抛出异常2. 处理/捕获异常 三、模板(template)1. 模板函数(1. 模板函数的定义和调用(2. 模板函数需要显性调用的时机 2. 模板类3. 模板函数和模板类实现的…

【运维】GitLab相关配置优化等

默认 Git 设置 http post 的缓存为 1MB,使用命令将git的缓存设为500M,重新配置一下postBuffer值 git config --global http.postBuffer 524288000 解决方法2:直接修改config参数, windows: ./git/config中,加入以下…

构建无忧:探索 Linux 项目自动化构建神器-make/Makefile

目录 一.make/Makefile的介绍1.理解make/Makefile二.make/Makefile的使用1.基本使用2.PHONY3.特殊符号拓展 一.make/Makefile的介绍 1.理解make/Makefile 编写Makefile是Linux开发中一项重要的技能,熟练的运用这个工具能提高编译效率,帮助你完成大型工…

【Java系列】Java虚拟机—类加载器介绍

什么是Java虚拟机 Java虚拟机(Java Virtual Machine,JVM)是一个能够执行 Java 字节码的虚拟计算机。它是 Java 技术的核心部分,是 Java 应用程序运行的基础。 Java 程序在编译后会生成字节码(bytecode)&am…

【动手学习深度学习--逐行代码解析合集】07多层感知机的简洁实现

【动手学习深度学习】逐行代码解析合集 07多层感知机的简洁实现 视频链接:动手学习深度学习–softmax回归简洁实现 课程主页:https://courses.d2l.ai/zh-v2/ 教材:https://zh-v2.d2l.ai/ 1、代码 import torch from torch import nn from d…

uni-app crypto-js DES 加解密 ,支持app , h5,小程序

crypto-js DES 加解密 ,支持app,h5,小程序 第一步 npm install crypto-js 可以直接下载示例运行,看控制台打印 下载地址 https://ext.dcloud.net.cn/plugin?id13351 crypto-js DES 加解密 - DCloud 插件市场

科技富豪抑郁了

原美团二当家王慧文据说抑郁了 什么能解决抑郁问题? 趣讲大白话:科技富豪也抑郁 【趣讲信息科技216期】 **************************** 王富豪创立光年之外AI公司2个月就休息了 知识解决不了抑郁问题 抑郁是现代社会一个常见的症状 是压力所带来的综合症…

牛客网Verilog刷题——VL39

牛客网Verilog刷题——VL39 题目答案 题目 设计一个自动贩售机,输入货币有两种,为0.5/1元,饮料价格是1.5/2.5元,要求进行找零,找零只会支付0.5元。 1、投入的货币会自动经过边沿检测并输出一个在时钟上升沿到1&#x…

HTML-表格、表单标签

目录 表格标签 表单标签 表单项标签 表格标签 场景&#xff1a;在网页中以表格&#xff08;行、列&#xff09;形式整齐展示数据&#xff0c;如班级表标签 标签描述属性/备注<table>定义表格整体&#xff0c;可以包裹多个<tr>border:规定表格边框的宽度width&am…

盖雅劳动力管理云完成多方信创适配,打造信创产业生态

为响应国产化和信创战略需求&#xff0c;盖雅工场积极推动产品适配国产操作系统、国产数据库、国产硬件设备和国产处理器&#xff0c;不断拓展公司信创产业链技术升级。 近日&#xff0c;盖雅工场顺利完成多方信创适配&#xff0c;成功与 麒麟Kylin、鲲鹏Kunpeng、达梦数据库…

一键ai绘画怎么使用你清楚吗?

在当代科技的浪潮中&#xff0c;人工智能绘画生成器犹如一位神奇的画笔&#xff0c;以其特别的创造力&#xff0c;将数字代码转化成令人惊叹的艺术杰作。它就像是一位天才魔术师&#xff0c;能从虚无中诞生出栩栩如生的图像&#xff0c;给人们带来触动和美感。 看着这些ai绘画…

VOC数据集介绍以及读取(目标检测object detection)

VOC&#xff08;Visual Object Classes&#xff09;数据集是一个广泛使用的计算机视觉数据集&#xff0c;主要用于目标检测、图像分割和图像分类等任务。VOC数据集最初由英国牛津大学的计算机视觉小组创建&#xff0c;并在PASCAL VOC挑战赛中使用。 VOC数据集包含各种不同类别…

今晚打老虎:用katalon解决接口/自动化测试拦路虎--参数化

#全局变量 右侧菜单栏中打开profile&#xff0c;点击default&#xff0c;打开之后&#xff0c;在default页面点击add添加全局变量 如果你想学习接口自动化测试&#xff0c;我这边给你推荐一套视频&#xff0c;这个视频可以说是B站播放全网第一的接口自动化测试教程&#xff0c…