基於 Flink 和 Drools 的實時日誌處理

背景

日誌系統接入的日誌種類多、格式複雜多樣,主流的有以下幾種日誌:

  • filebeat採集到的文本日誌,格式多樣

  • winbeat採集到的操作系統日誌

  • 設備上報到logstash的syslog日誌

  • 接入到kafka的業務日誌

以上通過各種渠道接入的日誌,存在2個主要的問題:

  • 格式不統一、不規範、標準化不夠

  • 如何從各類日誌中提取出用戶關心的指標,挖掘更多的業務價值

爲了解決上面2個問題,我們基於flink和drools規則引擎做了實時的日誌處理服務。

系統架構

架構比較簡單,架構圖如下:

各類日誌都是通過kafka彙總,做日誌中轉。

flink消費kafka的數據,同時通過API調用拉取drools規則引擎,對日誌做解析處理後,將解析後的數據存儲到Elasticsearch中,用於日誌的搜索和分析等業務。

爲了監控日誌解析的實時狀態,flink會將日誌處理的統計數據,如每分鐘處理的日誌量,每種日誌從各個機器IP來的日誌量寫到Redis中,用於監控統計。

模塊介紹

系統項目命名爲eagle。

  • eagle-api:基於springboot,作爲drools規則引擎的寫入和讀取API服

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