Cacti透過外掛Syslog,將能夠結合rsyslog,把系統收到的Syslog訊息先存放至資料庫,然後再呈現在Cacti頁面中,讓網路管理員能夠隨時掌握設備當下的運作狀況。
如圖9所示,此時先檢查Syslog這個檔案是否有收到該設備送出的Syslog(此Cisco Router的IP為10.100.32.101):
|
▲圖9 檢查是否有收到該設備送出的Syslog。 |
從中可以看出rsyslog Server已收到Syslog,並存放在「/var/log/syslog」檔案中。接下來,檢查一下Syslog是否已進入資料庫中:
由於Cacti每五分鐘呼叫Syslog Plugin整理一次資料庫,若查詢時已逾處理週期,Log會被移到syslog_logs這個Table中,如圖10所示:
|
▲圖10 呼叫Syslog Plugin整理資料庫。 |
Cacti相關操作:Syslogs
然後回到Cacti,查看Syslog Plugin是否有相關資料。登入Cacti後,選擇上方選單的syslog,再點選〔Syslogs〕,可看到之前shutdown interface bri0/0的Syslog已在其中,如圖11所示。(由於筆者測試時忘了擷圖,圖是後來重抓的,因此時間有所出入,請忽略)。
|
▲圖11 之前shutdown interface bri0/0的Syslog資料已經出現。 |
至此,已確認基本的Syslog功能已能正常使用,比較重要的資訊包含了Host、Date和Message,最後的Facility和Priority與統計及之後的管理較具相關性。另外,也可以在Search欄位輸入字串進行搜尋,但要注意的是,搜尋時比對的是Message裡面的字串,此外也能查看特定時段內的Syslog。這兩個功能是可以合併使用的。
Cacti相關操作:Rule設定
在Syslog的頁面右上角有三個連結,各具不同功能,以下分別說明:
·Alerts:用來設定要觸發告警的字串、Facility或Priority,若符合相關條件,則寄發告警信。
·Removals:用來設定要刪除的字串、Facility或Priority,若符合相關條件的Syslog就會被直接刪除,不會進Syslog的列表,也不會寄發告警信。
·Reports:可寄送前一天或前一周的報表,報表的內容可過濾特定的字串,目的是讓管理者知道某設備是否持續有相同的告警以利剖析問題,或者確認設備是否有週期性的問題。
這三個連結的功能與左方選單的Syslog Settings下方的Alert Rules、Removal Rules、Report Rules相同。接下來使用一些簡單的範例,來示範這三種規則的功能。
Alert Rules測試
先點選Alert,再點選右上角的Add,新增一筆Alert Rule。如圖12所示,Alert Name部分輸入易於識別的名稱,在此輸入「Interface Up/Down」,String Match Type的部分則選擇【Contains】,這裡可供選擇的有【Begins with】、【Contains】、【Ends with】、【Hostname is】、【Facility is】、【SQL Expression】,可依自己的需求進行調整。之後的兩個Rule也都有這些選項,不再贅述。
|
▲圖12 新增一筆Alert Rule。 |
由於Syslog訊息的開頭可能是時間,因此Begin with有時會比對失敗,所以一般使用Contains或Hostname、Facility這幾個選項。Syslog Message Match String的部分須輸入用於比對的字串。觀察Syslog的訊息,發現在介面斷線時都有LINK-3-UPDOWN的字串,所以輸入「LINK-3-UPDOWN」。
往下是收件者的部分,填入E-mail Address,若有多個E-mail Address,中間以逗號(,)做區隔。也可以選擇Open Ticket開工單以便後續追蹤,但本例未使用此功能,因此設定保持為【No】。最後按下〔Create〕按鈕,建立這個規則,如圖13所示。
|
▲ 圖13 填寫E-mail Address後,按下〔Create〕按鈕以建立這個規則。 |
同樣把bri0/0這個介面shutdown/no shutdown,以測試是否有收到告警信。之後就會收到E-mail主旨開頭為Event Alert的告警信,其內容如圖14所示,確認在介面up/down時會收到告警信。
|
▲圖14 收到告警信。 |
而Message的部分,由於各家設備的格式不同,可能在最前方會有日期和時間,但日期和時間的格式又有所不同。這並不影響閱讀,目前的設備大多支援自訂格式,讀者可以詢問銷售商或自行查詢相關指令進行調整。對於Syslog Plugin而言,要修正所有收集來的Syslog格式是個大工程,因此建議由設備端著手。
由於Cacti預設是每5分鐘執行一次Poller,若收到Syslog時,Cacti剛處理完上一週期的Syslog,要等5分鐘後才能讀到最新的資料,若查詢不到相關Alert Log時請稍做等待。同樣的道理,Alert Log也是每5分鐘才會發一次,若未收到告警,也請耐心等候。