如何使用Prometheus採集SAP ABAP Netweaver的應用日誌數據

Prometheus是一套開源的系統監控報警框架。它啓發於Google的borgmon 監控系統,由工做在 SoundCloud 的 google 前員工在 2012 年建立,做爲社區開源項目進行開發,並於2015年正式發佈。2016年,Prometheus 正式加入 Cloud Native Computing Foundation,成爲受歡迎度僅次於Kubernetes 的項目。數據庫

clipboard1,1

咱們能夠利用Prometheus強大的監控功能來採集SAP ABAP Netweaver服務器上運行應用的各項日誌。以SAP CRM Fiori應用My Opportunity爲例,假設我開發了一個自定義日誌功能,把全部用戶對Opportunity的讀操做明細, 包括請求者,請求日期和請求時間記錄在一個數據庫表裏。服務器

clipboard2,2

而後我但願藉助Prometheus,按期地查詢Netweaver服務器,監控它服務了讀請求的數量。下面是具體步驟。框架

(1) 在CRM My Opportunity後臺的OData服務實現的BAdI definition CRM_OPPORTUNITY_ODATA_BD裏建立一個加強。google

由於全部的讀請求,最後都要通過方法SORT_AND_FILTER_OPPT_TABLE的處理,因此咱們把日記記錄實如今這個方法裏:spa

clipboard3,3

(2) 事務碼SICF建立一個新的服務節點:3d

clipboard4,4

用SELECT COUNT(*)把數據庫日誌表的條目數讀取出來,經過HTTP的方式返回給消費者。日誌

clipboard5,5

(3) 在Prometheus服務器的配置文件prometheus.yml裏,添加一條按期抓取步驟二建立的Netweaver HTTP服務:blog

clipboard6,6

第26行metrics_path即爲SICF事務碼裏建立的服務路徑,28行意思是每2秒抓取一次。33行是Netweaver服務器的主機名。事務

啓動Prometheus服務器:ip

clipboard7,7

到Fiori UI上使用My Opportunity應用,觸發讀請求:

clipboard8,8

能看到日誌表裏填充了數據:

clipboard9,9

localhost:9090訪問Prometheus的UI控制檯,能看到採集的讀請求個數:

clipboard10,10

切換到Graph面板,能看到指定時間間隔內的讀請求變化趨勢,好比下圖意思是過去五分鐘以內,讀請求數量呈線性增加趨勢

clipboard11,11
clipboard12,12

要獲取更多Jerry的原創文章,請關注公衆號"汪子熙":
公衆號截圖

相關文章
相關標籤/搜索