优维产品最佳实践第13期:如何避免拨测机自身网络问题?

2023-11-02 19:45

本文主要是介绍优维产品最佳实践第13期:如何避免拨测机自身网络问题?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

受限于拨测节点自身的环境,单一节点的拨测结果可能并不能反映出监控实例的真实运行状态

本期EasyOps产品使用最佳实践,我们将为您揭晓:

  • 如何基于多点决策配置拨测监控,以避免拨测机自身网络问题而误告警?

  • 如何对指标实现“降维”,从而汇聚指标?

「 背 景 」

拨测监控作为监控体系中重要的一环,为管理员提供最为直接的状态监控。然而,受限于拨测节点自身的环境和网络环境,可能单一拨测节点的结果并不能反映出监控实例的实际运行状态。比如,当拨测节点所在的网络发生故障时,或者和监控实例的网络中断时,此时会认为监控实例的服务不可用。

但是,这种判断可能是错误的。

因此,多点决策的需求就产生了。它基于这样一种监控逻辑:假设有两个拨测节点,分布于两个不同的环境或者网络,同时对目标实例拨测。仅当超过半数的拨测节点(也就是两台拨测机都发生告警时),才认为目标实例异常时,才发出拨测告警。

before:

after:

「 配 置 说 明 」

1.针对主机配置拨测采集策略,并且指定两台拨测机。

2.配置汇聚指标,这里作详细说明:

拨测的指标:detect_code包含着多个维度,而我们希望把detectAgentId和detectAgentName这两个维度降维了,让detect_code可通过jobId来汇聚成一个指标。

因此,需要作如下配置表达式:avg(detect_code ) by (stepName,jobId,customTag)

上述表达式,说明新指标的维度是stepName,jobId,customTag,把agent相关的维度聚合在一起了。

此时,两台拨测机的汇聚结果可参考如下表格:

可知,只有当两台拨测机都返回1的返回码时,也就是两台拨测机都认为实例故障时,多点决策返回码才大于0.5,因此0.5可以作为多点决策的判断阈值。

3.配置告警规则

此时,当两台拨测机都探测目标实例失败时,才会发出拨测失败的告警。如果只有一台拨测机认为拨测失败,并不会发出告警,以实现了半数以上判断为失败才失败的逻辑。

该实践提供了多点决策的能力,弥补了拨测节点的单点缺陷。

这篇关于优维产品最佳实践第13期:如何避免拨测机自身网络问题?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/332887

相关文章

Django开发时如何避免频繁发送短信验证码(python图文代码)

《Django开发时如何避免频繁发送短信验证码(python图文代码)》Django开发时,为防止频繁发送验证码,后端需用Redis限制请求频率,结合管道技术提升效率,通过生产者消费者模式解耦业务逻辑... 目录避免频繁发送 验证码1. www.chinasem.cn避免频繁发送 验证码逻辑分析2. 避免频繁

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

破茧 JDBC:MyBatis 在 Spring Boot 中的轻量实践指南

《破茧JDBC:MyBatis在SpringBoot中的轻量实践指南》MyBatis是持久层框架,简化JDBC开发,通过接口+XML/注解实现数据访问,动态代理生成实现类,支持增删改查及参数... 目录一、什么是 MyBATis二、 MyBatis 入门2.1、创建项目2.2、配置数据库连接字符串2.3、入

解决pandas无法读取csv文件数据的问题

《解决pandas无法读取csv文件数据的问题》本文讲述作者用Pandas读取CSV文件时因参数设置不当导致数据错位,通过调整delimiter和on_bad_lines参数最终解决问题,并强调正确参... 目录一、前言二、问题复现1. 问题2. 通过 on_bad_lines=‘warn’ 跳过异常数据3

Android Paging 分页加载库使用实践

《AndroidPaging分页加载库使用实践》AndroidPaging库是Jetpack组件的一部分,它提供了一套完整的解决方案来处理大型数据集的分页加载,本文将深入探讨Paging库... 目录前言一、Paging 库概述二、Paging 3 核心组件1. PagingSource2. Pager3.

解决RocketMQ的幂等性问题

《解决RocketMQ的幂等性问题》重复消费因调用链路长、消息发送超时或消费者故障导致,通过生产者消息查询、Redis缓存及消费者唯一主键可以确保幂等性,避免重复处理,本文主要介绍了解决RocketM... 目录造成重复消费的原因解决方法生产者端消费者端代码实现造成重复消费的原因当系统的调用链路比较长的时

深度解析Nginx日志分析与499状态码问题解决

《深度解析Nginx日志分析与499状态码问题解决》在Web服务器运维和性能优化过程中,Nginx日志是排查问题的重要依据,本文将围绕Nginx日志分析、499状态码的成因、排查方法及解决方案展开讨论... 目录前言1. Nginx日志基础1.1 Nginx日志存放位置1.2 Nginx日志格式2. 499

kkFileView启动报错:报错2003端口占用的问题及解决

《kkFileView启动报错:报错2003端口占用的问题及解决》kkFileView启动报错因office组件2003端口未关闭,解决:查杀占用端口的进程,终止Java进程,使用shutdown.s... 目录原因解决总结kkFileViewjavascript启动报错启动office组件失败,请检查of

在Java中使用OpenCV实践

《在Java中使用OpenCV实践》用户分享了在Java项目中集成OpenCV4.10.0的实践经验,涵盖库简介、Windows安装、依赖配置及灰度图测试,强调其在图像处理领域的多功能性,并计划后续探... 目录前言一 、OpenCV1.简介2.下载与安装3.目录说明二、在Java项目中使用三 、测试1.测

MyBatis-Plus 自动赋值实体字段最佳实践指南

《MyBatis-Plus自动赋值实体字段最佳实践指南》MyBatis-Plus通过@TableField注解与填充策略,实现时间戳、用户信息、逻辑删除等字段的自动填充,减少手动赋值,提升开发效率与... 目录1. MyBATis-Plus 自动赋值概述1.1 适用场景1.2 自动填充的原理1.3 填充策略