现在告警系统可以说是系统的必备部分,只要有监控,就需要一个告警系统来帮忙主动推送消息,以此减少人不停的主动查看监控的作用。

在最初的告警系统中,基本主要就是设置阈值,达到阈值就发生告警。这个在机器数量少的时候是满足需求的。例如10个进程,就算都出问题也就是10条告警。在使用的过程中,随着进程数量的增多,告警种类的增多。会出现告警的洪荒,一直不停的收到告警。

重复性

为了准确的传达告警信息,告警的设计要只要问题不解决就需要一直告警,否则很容易出现告警信息不可达,人查看的时候忽略了。这种问题,需要让告警持续的发送,直到解除为止。

分级

这里为了减少告警信息,我们会设置告警的级别。

cpu >80 严重

80 > cpu > 50 一般

然后发送告警的时候加上告警级别,邮件的规则根据告警的级别进行分类,就可以很容易的去找出严重的优先处理,一般的紧急程度就低一些。

静默

虽然通过级别可以筛选出一些特别重要的信息,但是告警是一直持续发送的。例如cpu只要还在超过80,一定的时间间隔内,就会继续发送告警,严重级别的邮箱很快也多起来。而且是同一个告警的不同时间的信息。这个时候如果有其他严重级别的告警的时候,很容易被冲刷掉。导致了一定的延后性,需要指望这个告警信息也不停的发送,如果间隔时间不一样的话,很容易出现一些失误。

这里就需要有一个静默功能。

例如我收到了A进程的cpu使用率的告警,我现在开始去做处理,这时候并不能立马解决这个问题。可以通过静默的功能,把A进程的cpu告警取消发送。直到解决了问题以后再打开。中间过程如果再继续收到信的告警,就需要再次注意了,证明和手头正在解决的不是同一个问题。

抑制

我们想一个场景,现在有如下的告警设置

物理机宕机告警

进程探活告警

api接口超时告警

当物理机宕机后,上面的所有进程肯定也都停止了,探测api的检测功能也检测不到api能正常返回了。于是触发了3条告警信息。但他们描述的根源的原因是同一个。如果一个机器上有20个进程,总共有300个api。那么就会一下子收到1+20+300=321条告警信息。这么多告警信息,人收到都是迷茫的,主动静默都是很大的工作量。得静默321条情况,这里也能直接选择把告警去掉,也怕别的程序也这个时候出了问题,导致告警的丢失。

这里就需要告警的抑制。上面表达是一个包含关系,api超时的原因是进程停止了,进程停止了原因是物理机停止了。这种场景其实报告物理机的宕机告警就可以。

也是就是物理机告警,进程告警,端口告警同时出现的时候,物理机的告警要抑制进程告警,抑制api告警。

路由设置

告警信息的通知是需要多样的,例如什么样的告警,什么样的级别通过什么样的形式发送(邮件,短信,电话)。这个是需要分层的。越紧急的事情就需要越紧急的方式,例如普通的告警就发送邮件就可以了。但是严重的告警,管理员可能晚上睡着了,邮件的消息通知可能不能被看到,这里可能就需要通过电话开通知。选择了更可靠的方式。

java告警系统设计_告警系统的设计相关推荐

  1. java任务系统设计_任务调度系统-任务依赖的设计

    1.任务依赖需求描述: 例子: 一个作业分为如下子任务: 任务1,任务2,任务3,任务4 执行的顺序为,任务1--->任务2,任务3--->任务4 其中任务2,任务3可以并行执行,我们用下 ...

  2. java 数据库工资管理系统设计_数据库课程设计—企业工资管理系统(java版完整代码)...

    数据库课程设计-企业工资管理系统(java版完整代码) 数 据 库 课 程 设 计 报 告2016年 5月 20日 目 录企业工资管理系统姓 名 王 素 文班 级 软 133学 号 139074224 ...

  3. java排队系统设计_医院排队系统之简易设计

    有关排队系统的应用是很多的,本文是针对医院的排队挂号流程进行的简易设计.要设计排队系统,首先要分别设计出病人和专家的类,然后编写服务器类模拟出若干等侯的病人.最后分别编写出专家与病人的客户端.具体步骤 ...

  4. java 酒店系统设计_基于Java的酒店管理系统的设计与实现

    数据库与信息管理本栏目责任编辑 :代 影 ComputerKnowledgeand Technology 电脑知识与技术第 7 卷第 27 期 (2011 年 9 月) 基于 Java 的酒店管理系统 ...

  5. python通讯录管理系统设计_数据结构课程设计-通讯录管理系统(C语言版)

    ##数据结构课程设计-通讯录管理系统 一,前言 自从上次C语言课设写完后,这次数据结构课设就写的游刃有余了,很快啊,不足三天就写完了它(年轻人不讲武德),如果你认真看过我之前写的C语言课程设计-球队管 ...

  6. java邮件系统设计_基于java技术的邮件系统设计与实现

    论文字数:17915,页数:38 摘  要 电子邮件(简称E-mai1)又称电子信箱.电子邮政,它是-种用电子手段提供信息交换的通信方式.它是全球多种网络上使用最普遍的一项服务.这种非交互式的通信,加 ...

  7. java编程概念_使用漫画设计教编程概念

    java编程概念 Computing literacy has become an important skill for students today. However, programming r ...

  8. 用uml设计java应用程序_用UML设计Java应用程序之需求分析

    本节向大家介绍一下如何用UML设计Java应用程序, 这里就以图书馆借阅和预定图书和杂志的应用程序为例向大家讲解,主要有需求分析和域分析等内容,相信本节的学习一定会让你对UML设计有新的理解. 用UM ...

  9. 京东java多级缓存_多级缓存设计详解 | 给数据库减负,刻不容缓!

    来这里找志同道合的小伙伴! 作 者 简 介 王梓晨 自古兵家多谋,<谋攻篇>,"故上兵伐谋,其次伐交,其次伐兵,其下攻城.攻城之法,为不得已",可见攻城之计有很多种,而 ...

最新文章

  1. pandas使用read_csv读取数据使用skiprows参数跳过指定的数据行但保留表头、pandas使用to_csv函数将dataframe保存为gzip压缩文件
  2. 深度丨解密Python为什么能够风靡全宇宙
  3. 【JSConf EU 2018】WebAssembly 的手工艺术
  4. java把信息存到文件里,Java 如何将字符串信息直接写保存到文本文件?
  5. python爬虫怎么爬小说_python从爬虫基础到爬取网络小说实例
  6. 解决htmlfile: 未知的运行时错误
  7. android布局之线性布局
  8. FileItem API详解及演示
  9. Notepad++远程连接Linux系统
  10. jzoj6311-Mobitel【dp,整除分块】
  11. 修改telnet提示并非_热血传奇:老玩家揭秘!这4个地方都被盛大修改过,第3个80%都想不到...
  12. #pragma的常用方法讲解(转载)
  13. linux工程常用的应用命令总结:
  14. 第三次作业代码规范修改
  15. 被孟加拉题吊打的ACM考试
  16. Webservice接口开发简单例子
  17. 西门子 PLC 和 AB罗克韦尔 PLC 有什么区别?
  18. 宋宝华:当Linux内核遭遇鲨鱼—kernelshark
  19. Java中判断String不为空的问题性能比较
  20. 如何给multisim中导入9012/9013/8050/8550三极管

热门文章

  1. 自由职业半年,我又滚回职场了...
  2. 面试官:聊一下你对MySQL索引的理解?
  3. php 文件 后缀,php如何修改文件后缀名
  4. LeetCode——面试题 08.01. 三步问题
  5. springboot:web开发-Thymeleaf
  6. Vuetable-2使用全纪录
  7. 先学Oracle还是Java,事前学习过的java和Oracle笔记没删除的都带过来
  8. 尤其是java程序员(转载)_JAVA程序员 学习任务(转载)
  9. 串口工具securecrt_SecureCRT配置华为交换机部分命令
  10. js计算排名_今天,我们讲一下,快速排名与黑帽SEO