Cacti是一套基于PHP,MySQL,SNMP及RRD Tool开发的网络流量监测图形分析工具。Cacti提供了一个快速轮询器,高级图表模板,多种数据采集方法和用户管理功能。所有这一切都被包装在一个直观的,易于使用的界面中,这对于局域网以及成千上万个设备的复杂网络来说是有意义的。

但是为了不错过重要的阀值告警,往往邮件通知是不够的,电话通知的方式往往是最直接方式。在产生重要的告警的时候,可以第一时间接收到告警电话,使得用户可以第一时间进行处理。睿象云智能告警平台 Cloud Alert就可以简单而又快速的实现电话告警,接下来就讲下如何实现吧!

主要分为三大步骤:

  1. 集成应用 — 也就是将Cacti集成到睿象云智能告警平台
  2. 设置分派策略 — 设置告警发生时的通知人
  3. 设置通知策略 — 设置电话的通知方式

一.集成应用

  1. 进入官网www.aiops.com,登录账号

2. 在Cloud Alert中创建Cacti应用,点击集成 — 监控工具 — Cacti

3.填写“应用名称”,点击“保存并获取应用key”

4.安装并配置thold插件,配置邮件告警

5.修改thold插件,支持CloudAlert告警接入

(1) 打开 {cacti_home}/plugins/thold/thold_functions.php 例如:

vim /var/www/html/cacti/plugins/thold/thold_functions.php

定位到function thold_mail函数:

/* Sends a group of graphs to a user */

function thold_mail($to, $from, $subject, $message, $filename, $headers = '') {

global $config;

thold_debug('Preparing to send email');

include_once($config['base_path'] . '/plugins/settings/include/mailer.php');

include_once($config['base_path'] . '/plugins/thold/setup.php');

$subject = trim($subject);

$message = str_replace('', $subject, $message);

...... //此处省略

}

在 $message = str_replace('', $subject, $message); 后添加如下代码并替换appkey参数:

function onealert_for_cacti($msg, $subject) {

$fields = array(

"app"  =>  "--",  --处填入您新建应用时生成的appkey

"subject"  =>  $subject,

"msg"  =>   $msg

);

$fieldsdate = json_encode($fields);

$ch = curl_init("http://api.aiops.com/alert/api/event/cacti/new");

curl_setopt($ch, CURLOPT_HEADER, "Content-type: application/json");

curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, $fieldsdate);

$output = curl_exec($ch);

if(curl_errno($ch)){

print curl_error($ch);

}

curl_close($ch);

echo $output;

}

onealert_for_cacti($message,$subject);

(2) 重启SNMP

service snmpd restart

(3) 重启httpd

service httpd restart

(4) 配置Cacti使之触发告警,查看Cloud Alert告警和邮件告警是否正常

二.设置分派策略

  1. 点击配置 — 分派策略 — 新建分派

2.输入分派策略名称 — 选择应用 — 设置分派人(告警发生时通知的人),点击保存

用户可以根据【告警级别】【告警内容】等条件,来添加指定条件分派。

三.设置通知策略

  1. 点击【配置】—【通知策略】-【新建通知】

2.通知策略的可选择性也是很高的,用户可选择的地方有:告警状态、告警级别、通知方式、时间设置、延迟策略、通知人等,其中的意思分别如下:

告警状态:选择告警通知的状态。分别有发生时、认领时、关闭时、全选,4种选择。

告警级别:选择告警通知的级别。分别有提醒、警告、严重、所有,4种选择。

通知方式:选择告警通知的方式。分别有电话、短信、邮件、微信、APP,5种选择。

时间设置:选择告警通知的时间。分别有任何时间、工作时间、非工作时间,3种选择。

延迟策略:选择告警通知是否延迟。

通知人:选择告警通知的人。

例如:任何时间告警发生时严重级别的告警立刻电话通知所有人。

告警状态 — 发生时;告警级别 — 严重;通知方式 — 电话;时间设置 — 任何时间;延迟策略 — 立刻;通知人 — 全选

 

Cacti与CA告警级别映射关系

Cacti 所有告警默认严重级别 | subject包含NORMAL或是包含normal或是包含Restored 为恢复告警。

以上设置就完成了Cacti的电话通知设置,还有多种通知方式,用户看也可以根据自己的需求来进行设置。

Cacti如何实现电话告警的更多相关文章

  1. Zabbix实现电话告警通知的配置方法分享

    如果要讨论下当下热门的监控系统,我想zabbix应该能够占有自己的一席之地,拥有不小的话语权吧.然而身为一名苦逼的运维,为了不错过重大的告警信息,就需要配置个[电话告警]来进行最快速的通知. zabb ...

  2. zabbix电话告警V1

    最近决定将夜班值班人员取消,夜里告警采用机器人电话通知.总结一下这么几个情况,有问题还请指出,希望也能给大家多一个思路. V1做的太糙了,预计年初上V2 一.用谁家的服务 费用我没有太关注,主要就是看 ...

  3. python-----短信、电话告警

    Twilio 1.访问http://twilio.com/并注册.注册了新账户后,你需要验证一个手机号码,短信将发给该号码. 2.Twilio 提供的试用账户包括一个电话号码,它将作为短信的发送者.你 ...

  4. zabbix 告警实践分享 一键实现zabbix 电话、邮件、微信告警

    众所周知Zabbix 是一款用来监控IT基础设施的监控套件,同时也具有很多方便运维人员使用的优秀功能,如:支持多条件告警,支持多种告警方式,支持多组模板.支持模板继承,因此在众多的开源运维监控软件中独 ...

  5. Zabbix全方位告警接入-电话/微信/短信都支持

    百度告警平台地址: http://gaojing.baidu.com 联系我们: 邮箱:gaojing@baidu.com 电话:13924600771 QQ群:183806029 对于使用zabbi ...

  6. prometheus grafana graylog 钉钉告警 短信告警 电话告警系统 PrometheusAlert

    PrometheusAlert 简介 PrometheusAlert是开源的运维告警中心消息转发系统,支持主流的监控系统Prometheus,日志系统Graylog和数据可视化系统Grafana发出的 ...

  7. Zabbix 集成 OneAlert 实现全方位告警

    1. 前言 告警将重要信息发送给运维「或者其他相关人」,及时发现并且处理问题.在所有开源监控软件里面,Zabbix 的告警方式无疑是最棒的.告警的方式各式各样,从 Email 告警到飞信.139/18 ...

  8. Zabbix中获取各用户告警媒介分钟级统计

    任务内容: 获取Zabbix各用户告警媒介分钟级统计,形成趋势图,便于观察各用户在每分钟收到的告警数量,在后续处理中,可以根据用户在某时间段内(例如3分钟内)收到的邮件总数,来判断是否有告警洪水的现象 ...

  9. Zabbix-3.0.x使用OneAlert发送告警

    导读 OneAlert 是国内首个 SaaS 模式的云告警平台,集成国内外主流监控/支撑系统,实现一个平台上集中处理所有 IT 事件,提升 IT 可靠性.它能以史上第二快的速度,对事件进行智能的组织. ...

随机推荐

  1. boost之multiprecision

    multiprecision boost中提供的高精度库,支持高精度整型,浮点型等.并且提供统一的接口模板,只需要指定对应的后端类型即可实现对应类型的高精度计算: boost::multiprecis ...

  2. 适合刚刚学习编程的萌新:C语言编程学习制作超简单又好玩的报数游戏!

    C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现 ...

  3. Consul 学习笔记—服务发现

    前言: 上一篇文章简单实用Consul试下服务注册,本篇继续学习Consul中的另外特性:服务发现.KV操作 :以及对上篇文章中存在的问题进行解决 问题解决 在上一篇文章中,注册服务提示检查失败. 通 ...

  4. RHEL8和CentOS8怎么重启网络

      本文主要讲解如何重启RHEL 8或者CentOS 8网络以及如何解决RHEL8和CentOS8系统的网络管理服务报错,当我们安装好RHEL 8或者 CentOS 8,重启启动网络时,会出现以下报错 ...

  5. IDEA 半天卡住buid(编译)不动

    [号外号外!] 最终解决办法并不复杂,关键在于"遇见问题,怎么样层层分析,多条路径试错,最终解决问题的思路或者能力"--资深码农的核心竞争力之一 背景 今天结束完最近2个月的一个项 ...

  6. Dubbo系列之 (七)网络层那些事(2)

    辅助链接 Dubbo系列之 (一)SPI扩展 Dubbo系列之 (二)Registry注册中心-注册(1) Dubbo系列之 (三)Registry注册中心-注册(2) Dubbo系列之 (四)服务订 ...

  7. return i++ 是先用再加么

    return i++ 比较特殊,先是return i:然后i++. return i=i+ 1 则不同,它是先让i=i+1,再return

  8. Libevent库基础(1)

    1.创建 eevent_base struct event_base *base = event_base_new(); 2.创建 事件event struct event *ev; struct e ...

  9. OpenCV412+contrib+CUDA+cuDNN

    首先现在好软件(包含源码和官方编译好的库)和contrib源码包(对应版本怎么下载????) 软件: contirb包: 1.先把软件解压,在目录新建mybuild文件夹,用于输出保存自定义VS工程 ...

  10. SpringBoot第二集:注解与配置(2020最新最易懂)

    2020最新SpringBoot第二集:基础注解/基础配置(2020最新最易懂) 一.Eclipse安装SpringBoot插件 Eclipse实现SpringBoot开发,为便于项目的快速构建,需要 ...