智能化監(jiān)控告警系統:基于物聯網移動網絡通信服務平臺的設計與實現

0 評論 6031 瀏覽 52 收藏 30 分鐘

監(jiān)控告警系統是一款用于實時監(jiān)控各類設備和系統狀態(tài)的工具,通過采集、分析和處理數據,生成有價值的指標和警報信息,并向管理員發(fā)送通知,確保系統穩(wěn)定運行。本文作者對智能化監(jiān)控告警系統進行了詳細的分析,一起來看一下吧。

一、系統概述

監(jiān)控告警系統是一款用于實時監(jiān)控各類設備和系統狀態(tài)的工具,通過采集、分析和處理數據,生成有價值的指標和警報信息,并向管理員發(fā)送告警通知,幫助管理員及時發(fā)現和解決問題,確保系統穩(wěn)定運行。

  • 保持系統穩(wěn)定:監(jiān)控告警系統需要實時監(jiān)控系統運行狀態(tài),并能夠及時發(fā)現問題和異常情況,及時發(fā)出告警通知并迅速響應異常,以便管理員采取及時措施。
  • 優(yōu)化運營策略:監(jiān)控告警系統支持對各項運營指標進行監(jiān)控以及分析,幫助運營人員及時調整運營策略,提高運營工作效率。例如通過監(jiān)控設備的流量使用情況,合理調整不同套餐的限速策略,避免出現用戶薅羊毛行為導致的流量浪費;
  • 改善服務質量:監(jiān)控告警系統支持對設備和系統狀態(tài)的數據進行采集和分析,生成有價值的指標和警報信息,及時發(fā)現并解決問題,避免用戶受到影響,提高用戶體驗。例如通過監(jiān)控設備的故障率,當出現大規(guī)模的設備故障時,能第一時間介入解決問題,避免設備故障導致用戶無法使用服務。
  • 實現成本控制:監(jiān)控告警系統支持對成本相關指標進行監(jiān)控以及分析,幫助運營人員掌握SIM卡資源的使用情況,有效地控制成本。例如,通過監(jiān)控 SIM 卡庫存情況,合理調整采購 SIM 卡策略,避免庫存過高或過低帶來的損失。
  • 性能和可擴展性:監(jiān)控告警系統需要具有良好的性能和可擴展性,以應對大量數據的處理和分析。
  • 安全和風險管理:監(jiān)控告警系統需要具備安全和風險管理機制,以保證數據的機密性和完整性。同時需要進行備份和恢復策略的設計,以應對系統出現故障的情況。

二、功能模塊

系統主要包括數據采集模塊、數據分析模塊、告警通知模塊、告警處理模塊、數據展示模塊、管理界面模塊等多個功能模塊。

  • 數據采集模塊:負責采集各個模塊的數據,包括但不限于平臺系統、SIM卡、設備等產生的數據。采集的數據會存儲到對應的數據庫中,供后續(xù)分析使用。
  • 數據分析模塊:負責對采集到的數據進行處理、分析和計算,從而得出有價值的指標和警報信息。數據處理模塊包括數據分析、告警規(guī)則和算法等子模塊。
  • 告警通知模塊:負責向管理員發(fā)送數據分析模塊生成的警報通知,包括短信、郵件、即時消息等多種形式。管理員可以根據自己的需求,選擇接收告警通知的方式。
  • 告警處理模塊:負責記錄告警信息的處理情況,包括告警信息是否已經被處理,處理結果如何等。管理員在收到告警通知后,采取措施解決問題,并將處理情況記錄,以便后續(xù)分析和跟蹤。
  • 數據展示模塊:負責將監(jiān)控數據以及分析結果以Dashboard的形式展示出來,幫助管理員更直觀地了解系統運行狀況。例如,管理員可以通過數據展示模塊查看在線設備數的歷史趨勢,以便更好地調整運營策略。
  • 管理界面模塊:提供監(jiān)控告警系統的管理界面,管理員可以通過該界面進行系統配置、警報設置、數據查看等操作。管理員可以在該界面中設置預警閾值等參數,用于數據分析模塊的判斷標準。

三、數據采集以及存儲

數據采集和存儲是監(jiān)控告警系統中非常重要的環(huán)節(jié)。一方面,數據的質量和及時性決定了監(jiān)控告警系統的準確度和實時性;另一方面,數據的存儲和處理能力也會對系統的性能和可擴展性產生重大影響。

1. 數據采集

在監(jiān)控告警系統中,需要采集各個業(yè)務系統、設備、應用程序以及核心指標的數據,包括但不限于服務器負載、網絡延遲、存儲空間、設備故障率、用戶訪問量等。數據采集的方式可以通過定時輪詢、推送通知等多種方式進行。

一種常見的數據采集方式是通過輪詢獲取各個監(jiān)控對象的數據。輪詢方式通常會周期性地向監(jiān)控對象發(fā)送請求,并獲取相應的數據。通過這種方式,可以快速、準確地獲取監(jiān)控對象的數據,但同時也會增加系統的負載和網絡流量。

另一種數據采集方式是通過推送通知的方式獲取數據。在這種方式下,監(jiān)控對象會主動將自己的狀態(tài)信息推送給監(jiān)控告警系統,監(jiān)控告警系統只需要監(jiān)聽推送通知并接收數據即可。這種方式能夠實現實時數據采集,避免了輪詢方式下可能存在的延遲和不準確性。

2. 數據存儲

采集到的數據需要進行存儲,以便后續(xù)的數據分析和指標生成。監(jiān)控告警系統通常會采用分布式存儲方案,以保證數據的高可靠性和高可用性。常見的分布式存儲方案包括主從架構、集群架構等。

主從架構一般是指將數據存儲在主節(jié)點上,然后通過從節(jié)點對數據進行備份和冗余。主節(jié)點和從節(jié)點之間通過數據同步機制進行數據同步,保證數據的可靠性和一致性。主從架構方案適用于數據量比較小的場景,相比于集群架構,主從架構的實現成本更低。

集群架構則是將數據存儲在多個節(jié)點上,每個節(jié)點都可以讀寫數據。在數據寫入時,系統會將數據分散到不同的節(jié)點上,以提高數據寫入的性能和可擴展性。集群架構適用于數據量較大或讀寫請求較為頻繁的場景,但相對于主從架構,其實現成本更高。

此外,為了提高系統性能和查詢效率,監(jiān)控告警系統還可以采用數據分片、索引優(yōu)化等技術進行優(yōu)化。數據分片可以將數據劃分為多個部分,分別存儲到不同的節(jié)點中,從而提高數據的并發(fā)讀寫能力和可擴展性。索引優(yōu)化則可以通過建立適當的索引結構,加快數據的查詢速度和準確性。

四、指標生成以及警報信息

在監(jiān)控告警系統中,指標生成和警報信息是核心功能之一。通過采集和存儲的數據,系統需要對其進行分析和計算,生成各種監(jiān)控指標,并及時發(fā)出警報信息,提醒相關人員進行處理和調整。

1. 數據分析

數據分析模塊的主要任務是對采集到的數據進行處理和分析,以便生成相應的監(jiān)控指標和監(jiān)控報告。在數據分析的過程中,需要考慮如下幾個方面:

  1. 數據分析算法和模型的選擇:根據不同的監(jiān)控對象和指標,采用不同的算法和模型進行處理。例如,對于網絡延遲和丟包率等指標,可以采用線性回歸、異常檢測等算法來進行分析和處理。
  2. 實時分析和計算:根據預設的規(guī)則和算法對采集到的數據進行實時分析和計算,并將生成的指標和警報信息存儲到相應的數據庫中,以供后續(xù)查詢和使用。例如,對于可分配卡數和已分配卡數等卡庫存相關指標,需要進行實時計算統計,避免出現卡庫存不足導致的服務故障;
  3. 可視化和報告生成:為了能讓用戶進行更加直觀和方便的數據分析和決策,需要將分析結果以可視化的形式展示出來。例如,對于故障設備率和故障設備數等指標,可以按照時間線使用折線趨勢圖來進行展示。

2. 指標生成

指標生成模塊通常會從存儲的數據中,提取出關鍵的業(yè)務指標和監(jiān)控指標,并將其計算、轉換、聚合等操作,生成新的指標數據。監(jiān)控指標可以分為系統級別指標、應用級別指標以及業(yè)務定制化指標:

  1. 系統級別指標包括CPU利用率、內存利用率、磁盤空間利用率等,可以幫助管理員全面了解系統的狀態(tài)和性能。
  2. 應用級別指標則更加細化,如某個應用程序的響應時間、訪問量等,可以幫助開發(fā)人員對應用程序進行優(yōu)化和調整。
  3. 業(yè)務定制化指標通常與業(yè)務的核心流程和關鍵性能指標相關,可以根據需求進行定制化,以滿足不同用戶的監(jiān)控需求,如卡庫存、采購成本、訂單量、故障設備率等等。這些指標對于業(yè)務決策非常關鍵,可以幫助業(yè)務人員快速發(fā)現問題,及時調整業(yè)務策略,提高業(yè)務效率和盈利能力。

3. 警報信息

警報信息則是根據指標生成模塊生成的監(jiān)控指標進行判斷和計算,及時發(fā)出警報信息,提醒相關人員進行處理和調整。

根據警報信息的類型和嚴重程度,可以分為三種:普通告警、嚴重告警和緊急告警。系統可以根據不同的告警級別進行靈活配置,如設置普通告警無需處理,但需要記錄日志;嚴重告警需要及時通知相關人員,以便進行處理;緊急告警需要立即采取措施,以避免損失。

五、算法與規(guī)則設計

為了能快速、準確地檢測到異常情況,及時發(fā)出警報,需要設計各種算法與規(guī)則,用于對采集到的監(jiān)控數據進行分析、計算和判斷,從而生成指標和告警信息。

1. 異常檢測算法

異常檢測算法是指對采集到的監(jiān)控數據進行處理和計算的算法,識別出異常情況,主要用于監(jiān)測設備、傳感器和其他IOT節(jié)點的狀態(tài)和性能。常見的異常檢測算法包括:

  1. 基于統計的異常檢測算法:該算法基于統計學原理,將各種監(jiān)控指標進行分析和比較,識別出與正常情況不符的數據點。例如,可以計算在線故障設備的歷史數據平均值和標準差,然后使用均值加減3倍標準差作為異常檢測的閾值,超過該閾值的數據點將被視為異常數據。
  2. 基于機器學習的異常檢測算法:該算法利用機器學習技術對監(jiān)控數據進行分析和建模,從而識別出與正常情況不符的模式和規(guī)律。例如,可以使用聚類算法對監(jiān)控數據進行分類,然后使用異常檢測算法對每個類別的數據進行分析和比較,識別出異常數據。
  3. 基于規(guī)則的異常檢測算法:該算法通過預先定義一組規(guī)則,對監(jiān)控數據進行檢測和分析,識別出與規(guī)則不符的數據點。例如,可以定義規(guī)則檢測設備不可用時長數據是否超過了閾值,如果超過了就視為異常數據。

2. 告警規(guī)則設置

告警規(guī)則需要結合業(yè)務需求,通過對監(jiān)控指標進行分析和比對,判斷當前狀態(tài)是否正常,并生成相應的告警信息的規(guī)則。告警規(guī)則需要考慮多個因素,如監(jiān)控指標的變化趨勢、閾值設定、告警級別、告警通知方式等。常用的告警規(guī)則有:

  1. 閾值告警規(guī)則:該規(guī)則根據監(jiān)控指標的閾值來觸發(fā)警報,例如,當可分配SIM卡數低于閾值時,就會觸發(fā)警報,并通知相關人員和部門。
  2. 持續(xù)時間告警規(guī)則:該規(guī)則根據監(jiān)控指標的持續(xù)時間來觸發(fā)警報,例如,當在線設備故障率超過了閾值,并持續(xù)5分鐘以上時,就會觸發(fā)警報,并通知相關人員和部門。
  3. 模式告警規(guī)則:該規(guī)則根據監(jiān)控指標的模式和趨勢來觸發(fā)警報,例如,當在線設備的可用率在一段時間內一直處于下降趨勢時,就會觸發(fā)警報,并通知相關人員和部門。
  4. 組合告警規(guī)則:該規(guī)則是將多個告警規(guī)則進行組合,當滿足其中一個或多個規(guī)則時,就會觸發(fā)警報,并通知相關人員和部門。
  5. 定時告警規(guī)則:該規(guī)則根據時間設置來觸發(fā)警報,例如,每天下午4點時,對設備進行一次巡檢,若發(fā)現異常,則觸發(fā)警報,并通知相關人員和部門。
  6. 機器學習告警規(guī)則: 機器學習算法可以對歷史數據進行分析和建模,根據數據模式來識別異常行為,并觸發(fā)相應的警報。例如,可以使用機器學習算法來分析設備的使用流量,當出現異常使用流量行為時,就觸發(fā)警報并通知相關人員和部門。
  7. 基于事件的告警規(guī)則: 基于事件的告警規(guī)則可以根據事件的發(fā)生來觸發(fā)警報。例如,通過對設備狀態(tài)數據的監(jiān)測,當出現設備異常故障這些事件時,監(jiān)控系統可以自動觸發(fā)警報,并通知相關人員進行故障診斷和修復。

3. 自動化告警處理算法

自動化告警處理算法是指對告警信息進行處理和分析的算法,以減輕管理員的工作負擔。在物聯網平臺中,自動化告警處理算法尤其重要,因為物聯網設備數量龐大,監(jiān)控指標繁多,手動處理告警信息幾乎是不可能的。例如,當系統出現異常告警時,自動化告警處理算法可以自動化地進行故障定位和修復操作。

常見的自動化告警處理算法包括:

1)自動化分析算法

通過對告警信息進行自動化分析和處理,提高告警處理的效率和準確性,減少人工處理的工作量。

  • 告警信息的提取和解析:通過自動化算法對監(jiān)控系統采集到的告警信息進行提取和解析。例如,從告警信息中提取出關鍵字、設備類型、SIM卡信息等重要信息。
  • 告警信息的分類:對采集到的告警信息進行分類,以便更快速地找到相關問題。例如,將告警信息分為硬件故障、網絡異常、卡故障、系統錯誤等類別。
  • 告警信息的關聯分析:對不同的告警信息進行關聯分析,找出異常的根本原因,并對告警信息進行去重,避免重復處理同一問題。例如,將不同設備之間的告警信息進行關聯分析,找出故障的根本原因。
  • 告警信息的預測分析:通過對歷史數據的分析,預測未來可能出現的故障情況。例如,通過對設備運行數據的分析,預測未來可能出現的設備故障情況,提前進行維護和修復。

2)自動告警處理算法

根據預設的規(guī)則自動執(zhí)行一定的處理動作,如發(fā)送短信、郵件等通知方式。

  • 發(fā)送通知:根據預設的規(guī)則,自動發(fā)送通知消息,如短信、郵件等,通知相關人員或部門進行處理。
  • 執(zhí)行預設操作:根據預設的規(guī)則,自動執(zhí)行一些操作,如重啟設備、調整設備配置等。
  • 自動調整策略:根據預設的規(guī)則,自動調整監(jiān)控策略,例如調整監(jiān)控閾值等。
  • 自動忽略告警:根據預設的規(guī)則,自動判斷告警是否需要處理,如果不需要則忽略。
  • 自動關閉告警:根據預設的規(guī)則,自動關閉已經處理完畢的告警。

六、告警通知的實現

告警系統發(fā)現問題并生成告警時,告警通知模塊會自動觸發(fā),并將告警信息通知給相關人員和部門,以便及時采取措施解決問題。以物聯網移動網絡通信服務平臺為例,當監(jiān)控系統發(fā)現問題時,告警通知模塊會自動觸發(fā)并發(fā)送告警通知,具體步驟如下:

1)告警生成:監(jiān)控系統檢測到異常情況并生成告警信息。

2)告警分類:告警通知模塊對告警信息進行分類,根據不同的告警等級和類型,選擇相應的通知方式和接收人員。

3)通知方式選擇:告警通知模塊根據用戶設置的通知方式,選擇合適的方式通知相關人員。例如,對于緊急的告警,可以通過短信或電話通知負責人員;對于普通的告警,可以通過郵件或即時通訊工具(企業(yè)微信或釘釘等)通知相關人員,低級別告警則在大屏幕上進行展示即可。

  • 郵件通知:將告警信息通過郵件發(fā)送給相關人員或部門。該方式適用于需要及時通知并且信息量較大的告警情況。
  • 短信通知:將告警信息以短信的形式發(fā)送給相關人員或部門。該方式適用于需要緊急通知但信息量較少的告警情況。
  • 語音電話通知:將告警信息通過語音電話形式通知相關人員或部門。該方式適用于需要緊急通知但又不能立即查看信息的告警情況。
  • 微信/釘釘/企業(yè)微信等即時通訊工具通知:將告警信息通過即時通訊工具發(fā)送給相關人員或部門。該方式適用于需要及時通知且方便處理的告警情況。
  • 大屏幕展示:將告警信息以可視化的形式展示在大屏幕上,方便相關人員實時了解監(jiān)控情況。
  • 應用內通知:當監(jiān)控系統產生告警信息時,可通過應用內通知的方式快速通知相關人員,并提供詳細的告警信息。

4)通知內容生成:告警通知模塊生成告警通知內容,并將告警信息、設備信息、時間等關鍵信息包含在通知中,以便相關人員了解問題的具體情況。

5)通知發(fā)送:通過自定義規(guī)則,告警通知模塊將通知發(fā)送給預設的接收人員,同時記錄發(fā)送時間、發(fā)送狀態(tài)等信息,方便后續(xù)跟進和處理。

七、警報信息處理

對已經發(fā)出來的告警信息進行處理以及記錄處理的內容,可以讓管理員清晰了解每個告警的處理狀態(tài)和處理過程,幫助管理員更好地管理和維護系統。

1. 告警信息的處理

當一個告警被觸發(fā)并且通知給管理員后,管理員需要對這個告警信息進行處理。這個處理過程包括以下幾個步驟:

  1. 分析告警信息:管理員需要對告警信息進行分析,了解告警的來源、告警等級以及影響范圍等,以便更好地判斷告警的緊急程度和處理方法。
  2. 判斷告警的處理方法:根據告警的緊急程度和影響范圍,管理員需要判斷告警的處理方法。如果告警比較緊急且影響范圍較大,管理員需要立即采取措施處理告警;如果告警比較普通且影響范圍較小,管理員可以在合適的時間進行處理。
  3. 處理告警:管理員需要采取措施對告警進行處理。具體措施包括重新啟動設備、更換已分配的SIM卡、修改配置等等。處理完成后,管理員需要記錄處理的內容,以便后續(xù)的跟蹤和分析。

2. 處理記錄的跟蹤

在物聯網移動網絡通信服務平臺中,每個告警信息都應該有相應的處理記錄,以便管理員追蹤告警的處理情況。處理記錄的跟蹤包括以下幾個方面:

1)記錄告警的處理過程

管理員需要記錄告警的處理過程,包括采取的措施、處理時間、處理結果等等。這些記錄可以幫助管理員了解告警的處理情況和處理效果。

2)記錄告警的處理人員

管理員需要記錄處理告警的人員信息,包括處理人員的姓名、工號、聯系方式等等。這些記錄可以幫助管理員了解告警的處理責任人和責任區(qū)域。

3)記錄告警的處理狀態(tài)

管理員需要記錄告警的處理狀態(tài),包括告警的開始時間、結束時間、處理狀態(tài)等等。這些記錄可以幫助管理員了解告警的處理狀態(tài)和處理效率。

  • 未處理:當監(jiān)控系統接收到告警信息后,還沒有進行任何處理,此時告警狀態(tài)為未處理狀態(tài)。
  • 處理中:當管理員開始處理告警信息時,告警狀態(tài)會被設置為處理中。此時,管理員正在對告警信息進行分析和處理。
  • 已解決:當管理員處理告警信息后,確定問題已經得到解決,告警狀態(tài)將被設置為已解決狀態(tài)。
  • 誤報:當告警信息被判定為誤報時,告警狀態(tài)會被設置為誤報狀態(tài)。
  • 忽略:當管理員認為告警信息不需要被處理時,可以將告警狀態(tài)設置為忽略狀態(tài)。

4)記錄告警的處理結果

管理員需要記錄告警的處理結果,包括處理結果的有效性、處理結果的影響范圍等等。這些記錄可以幫助管理員了解告警處理的情況,追蹤問題的解決過程,并為未來的處理提供參考。對于重要的告警事件,還可以向相關人員發(fā)送告警處理的結果,以便及時通知相關人員。

  • 告警處理結果描述:管理員需要描述告警的處理結果,包括解決方案、處理過程等。
  • 處理結果狀態(tài):管理員需要記錄處理結果的狀態(tài),如已解決、處理中等。
  • 處理人員:記錄處理告警的人員,以便追蹤問題的處理過程。
  • 處理時間:記錄告警處理的時間,以便追蹤問題的解決過程。
  • 處理影響范圍:記錄告警處理的影響范圍,以便管理員評估問題的嚴重程度,并為未來的處理提供參考。

八、系統界面設計

在物聯網移動網絡通信服務平臺中,監(jiān)控告警系統的系統界面通常包括以下功能模塊:

1)告警設置模塊

用于設置告警的規(guī)則和處理方式,如設置告警的級別、觸發(fā)條件、告警通知方式、告警的處理方式等。

2)告警列表模塊

包括當前所有的告警信息以及過去所有發(fā)生的告警信息,包括告警等級、告警類型、告警內容、告警時間等信息。

  • 管理員通過快速瀏覽當前所有的告警信息,并進行快速的定位和處理。
  • 管理員通過查看歷史告警的記錄,并了解告警的處理情況和處理結果。

3)告警詳情模塊

展示選中告警的詳細信息,包括告警的發(fā)生時間、告警的影響范圍、告警的處理情況等信息。管理員可以通過該模塊深入了解告警的具體情況,從而更好地制定解決方案。

4)告警處理模塊

用于處理已經發(fā)生的告警,通常在告警詳情頁面進行處理。管理員可以通過該模塊對告警信息進行處理,包括告警確認、告警分配、告警處理進展跟蹤等。同時,管理員也可以將處理結果記錄在該模塊中,便于后續(xù)的跟蹤和分析。

5)告警統計模塊

對所有告警信息進行統計分析,包括告警級別、告警類型、設備類型、告警時間、告警內容等等。通過該模塊來了解告警情況的總體概括,同時也為監(jiān)控系統的改進和優(yōu)化提供數據支持。

  • 總覽界面:展示系統中的所有告警信息,以及告警的處理情況和處理結果,并按照告警級別、告警類型等分類。
  • 數據可視化分析界面:結合具體的監(jiān)控告警指標,通過圖表的形式展示具體告警數據的趨勢和變化,例如歷史告警故障設備趨勢、歷史故障SIM卡分布等。

6)系統配置模塊

用于對監(jiān)控告警系統權限進行配置和管理。管理員可以通過該模塊對系統的用戶、權限、日志等進行管理,確保系統的安全和穩(wěn)定運行。

本文由 @產品@Devin 原創(chuàng)發(fā)布于人人都是產品經理,未經許可,禁止轉載。

題圖來自 Unsplash,基于 CC0 協議。

該文觀點僅代表作者本人,人人都是產品經理平臺僅提供信息存儲空間服務。

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發(fā)揮!