基于復雜事件處理引擎的監控系統的制作方法
【技術領域】
[0001] 本發明涉及監控技術領域,尤其涉及一種基于復雜事件處理引擎的監控系統。
【背景技術】
[0002] 在當前的監控領域,各類監控技術及監控軟件層出不窮。通過對這些監控技術研 究發現,基本上所有的監控技術采用的報警手段,都是基于"滿足單一規則一一觸發報警" 的模式,例如"某服務器CPU IDLE低于10%,則報警",或者"某服務器磁盤空間使用率超過 80%,則報警",這類規則能起到基礎的異常情況捕獲及報警的作用。
[0003] 但是,隨著軟件產業的飛速發展,分布式、虛擬化、云服務等多種軟件體系架構的 興起,上述傳統的監控報警技術已經無法滿足當前的運維需求,因為通過傳統的"閾值+比 較"的監控技術,當服務規模大到一定程度時,會在很短的時間間隔內甚至同一之間內產生 大量的報警事件。由此,當前運維存在的缺陷是如何在海量服務器、大量報警事件并發時, 去偽存真,在海量監控事件中提煉得出管理員最需要的關鍵報警信息,如果能夠做到這一 點,將會極大程度的節約管理員的精力并且大幅度的提高報警效率。
【發明內容】
[0004] 為解決現有存在的技術問題,本發明實施例提供一種基于復雜事件處理引擎的監 控系統。
[0005] 為達到上述目的,本發明實施例的技術方案是這樣實現的:
[0006] -種基于復雜事件處理引擎的監控系統,所述系統包括:
[0007] 代理、復雜事件處理引擎、存儲器以及主控單元;所述代理為一個或多個,部署在 應用服務器上,一個應用服務器上部署一個代理;
[0008] 所述代理,用于監控應用服務器,收集應用的事件信息并發送給所述復雜事件處 理引擎;
[0009] 復雜事件處理引擎,用于基于預先配置的規則對所述事件信息進行過濾和分析, 得到最終的報警數據,并交由所述存儲器保存;
[0010] 存儲器,用于保存所述復雜事件處理引擎得到的報警數據,以及保存所述復雜事 件處理引擎所需的規則;
[0011] 主控單元,用于控制所述復雜事件處理引擎所需規則的配置、基于所述報警數據 控制前端界面的展示、以及控制所述代理;
[0012] 前端界面,用于用戶配置規則、以及向用戶展示報警數據。
[0013] 其中,所述存儲器包括緩存單元,所述緩存單元用于保存所述復雜事件處理引擎 得到最終的報警數據、以及供所述復雜事件處理引擎對事件信息進行過濾和分析的規則。
[0014] 其中,所述存儲器還包括數據庫,所述數據庫用于保存供所述復雜事件處理引擎 對事件信息進行過濾和分析的規則。
[0015] 其中,所述復雜事件處理引擎與所述緩存單元之間通過數據處理器交互。
[0016] 其中,所述主控單元,還用于用戶通過所述前端界面配置的規則發送到所述緩存 單元進行保存,并將所述緩存單元中的規則轉儲到所述數據庫,以進行持久化保存。
[0017] 其中,所述前端界面,用于針對終端用戶提供新增規則、修改規則、刪除規則、和/ 或查看歷史數據的功能項。
[0018] 其中,所述前端界面,用于為終端用戶展示配置規則的界面,一個規則對應一個界 面;接收用戶在相應規則界面輸入的規則內容并生成相應的規則;所述界面為根據預先配 置的規則模板展示的界面,和/或隨機展示的界面,所述規則模塊用于終端用戶配置具有相 同功能特性的一類報警規則。
[0019] 其中,所述前端界面,還用于將生成的規則發送給所述主控單元;
[0020] 所述主控單元,還用于將所述規則發送到所述緩存單元進行保存。
[0021] 其中,所述前端界面,用于針對系統管理員提供管理規則模塊、管理監控點、管理 代理、和/或管理應用的功能項;所述規則模塊用于終端用戶配置具有相同功能特性的一類 報警規則。
[0022] 其中,所述前端界面,用于提供用于管理監控點的界面;接收系統管理員輸入的監 控點信息,并將所述監控點信息發送給所述主控單元;
[0023]所述主控單元,還用于將所述監控點信息封裝為報文并發送給所述代理;
[0024]所述代理,還用于接收監控點信息的報文,對所述報文進行解析,并從FTP服務器 上下載具體的插件,再基于所述報文中包含的監控信息對插件進行處理,最后將插件加入 到執行調度配置文件中,并開始調度。
[0025]其中,所述前端界面,還用于為系統管理員提供管理代理的界面;在所述管理代理 的界面,接收系統管理員選擇要升級的代理和版本號,并發送給主控單元;
[0026]所述主控單元,還用于根據所述要升級的代理和版本號生成升級報文并發送給相 應的代理;
[0027]所述代理,還用于接收所述升級報文,對所述升級報文進行解析,基于所述升級報 文從指定的FTP服務器上下載代理升級包,對所述代理升級包進行解壓替換掉原來的jar 包,替換完之后自動重啟,完成自身的升級操作。
[0028]其中,所述前端界面,還用于針對系統管理員提供管理規則模塊的界面,在該界面 上接收系統管理員配置的規則模板信息,并發送給所述主控單元;
[0029] 主控單元,還用于根據所述規則模塊信息生成相應的規則模板,并發送給所述緩 存單元進行保存;以及,在終端用戶配置規則時,還用于調用所述緩存單元中的規則模塊并 發送給所述前端界面。
[0030] 其中,所述應用包括:數據發送模塊、任務調度模塊和任務接收模塊;
[0031] 任務接收模塊,用于通過消息中間件接收主控單元發送的監控命令,接收監控命 令后對所述監控命令進行處理,生成一個個可執行的監控腳本,并由任務調度模塊進行調 度;
[0032] 所述任務調度模塊,用于實時檢測所述監控腳本,發現應用異常時生成事件信息 的報文并交由數據發送模塊;
[0033] 所述數據發送模塊,用于將所述事件信息的報文通過消息中間件發送給復雜事件 處理引擎。
[0034] 其中,所述復雜事件處理引擎與所述應用之間通過消息中間件通信。
[0035] 其中,所述主控單元與所述應用之間通過消息中間件通信。
[0036] 其中,所述消息中間件包括AMQ服務器;所述代理,用于將應用的事件信息發送到 AMQ服務器上;所述AMQ服務器,用于采用主題topic方式在所述代理與所述復雜事件處理引 擎之間傳輸數據;所述復雜事件處理引擎,用于通過訂閱topic的方式獲取所述應用的事件 信息。
[0037] 本發明實施例針對現有技術存在的缺陷,提出一種基于復雜事件處理引擎的監控 方法及系統,采用復雜事件處理技術及大數據處理方法,針對監控運維大數據處理,提高報 警命中率的同時也大幅提高運維監控報警效率。與此同時,通過前端界面還能夠支持最大 限度的個性化定制。
【附圖說明】
[0038] 在附圖(其不一定是按比例繪制的)中,相似的附圖標記可在不同的視圖中描述相 似的部件。具有不同字母后綴的相似附圖標記可表示相似部件的不同示例。附圖以示例而 非限制的方式大體示出了本文中所討論的各個實施例。
[0039] 圖1為本發明實施例監控系統的外部連接示意