Cacti如何實現電話告警

Cacti是一套基於PHP,MySQL,SNMP及RRD Tool開發的網絡流量監測圖形分析工具。Cacti提供了一個快速輪詢器,高級圖表模板,多種數據採集方法和用戶管理功能。所有這一切都被包裝在一個直觀的,易於使用的界面中,這對於局域網以及成千上萬個設備的複雜網絡來說是有意義的。
但是爲了不錯過重要的閥值告警,往往郵件通知是不夠的,電話通知的方式往往是最直接方式。在產生重要的告警的時候,可以第一時間接收到告警電話,使得用戶可以第一時間進行處理。睿象雲智能告警平臺 Cloud Alert就可以簡單而又快速的實現電話告警,接下來就講下如何實現吧!
主要分爲三大步驟:
1.集成應用 — 也就是將Cacti集成到睿象雲智能告警平臺
2.設置分派策略 — 設置告警發生時的通知人
3.設置通知策略 — 設置電話的通知方式

一.集成應用
1.進入官網www.aiops.com,登錄賬號

Cacti如何實現電話告警
2.在Cloud Alert中創建Cacti應用,點擊集成 — 監控工具 — Cacti

Cacti如何實現電話告警
3.填寫“應用名稱”,點擊“保存並獲取應用key”

Cacti如何實現電話告警
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.點擊配置 — 分派策略 — 新建分派

Cacti如何實現電話告警
2.輸入分派策略名稱 — 選擇應用 — 設置分派人(告警發生時通知的人),點擊保存

Cacti如何實現電話告警
用戶可以根據【告警級別】【告警內容】等條件,來添加指定條件分派。
三.設置通知策略
1.點擊【配置】—【通知策略】-【新建通知】

Cacti如何實現電話告警
2.通知策略的可選擇性也是很高的,用戶可選擇的地方有:告警狀態、告警級別、通知方式、時間設置、延遲策略、通知人等,其中的意思分別如下:
告警狀態:選擇告警通知的狀態。分別有發生時、認領時、關閉時、全選,4種選擇。
告警級別:選擇告警通知的級別。分別有提醒、警告、嚴重、所有,4種選擇。
通知方式:選擇告警通知的方式。分別有電話、短信、郵件、微信、APP,5種選擇。
時間設置:選擇告警通知的時間。分別有任何時間、工作時間、非工作時間,3種選擇。
延遲策略:選擇告警通知是否延遲。
通知人:選擇告警通知的人。

例如:任何時間告警發生時嚴重級別的告警立刻電話通知所有人。
告警狀態 — 發生時;告警級別 — 嚴重;通知方式 — 電話;時間設置 — 任何時間;延遲策略 — 立刻;通知人 — 全選

Cacti與CA告警級別映射關係
Cacti 所有告警默認嚴重級別 | subject包含NORMAL或是包含normal或是包含Restored 爲恢復告警。

以上設置就完成了Cacti的電話通知設置,還有多種通知方式,用戶看也可以根據自己的需求來進行設置。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章