5顯示日誌 關於執行日誌實時監控的設計方案

2021-10-16 05:46:07 字數 1448 閱讀 7578

今年在設計pss的時候,一直在思考乙個功能。

從我個人出發和從開源反饋上來看,都希望乙個功能,圖形化自動展示日誌。

比如,當前服務客戶端連線數,指定時間內的斷開和建立數量。

某個關鍵指令的實時處理量。

這些東西如果能自動的圖形化展示給運營,將是非常方便的。必須要實時性,只是曲線圖重新整理。

但是實現這個功能需要兩個前提:

(1)後台怎麼把日誌吐成圖形需要的資料格式?

(2)後端如何將指定的日誌變為多圖形?

第乙個問題簡單。我規範化一下日誌。

日誌輸出格式如下:

連線資料|2019-10-12 15:00:00|11

連線資料|2019-10-12 15:30:00|15

連線資料|2019-10-12 16:00:00|20

連線資料|2019-10-12 16:30:00|11

連線資料|2019-10-12 17:00:00|16

連線資料|2019-10-12 17:30:00|25

資料間的格式,以|隔開,後面的資料可以繼續疊加,這樣可以擴充套件不同的線段(目前版本的時候是線圖)

解決第二個問題,一定要保留彈性。什麼是彈性呢?

也就是說,我要生成的圖形,必須可以根據日誌檔案的配置不同,生成不同的圖表。

也就是說,前端要按照我的配置,生成不同的日誌圖表。

不那麼,我就需要乙個配置檔案,來完成後端json生成的過程。

於是配置檔案如下:(後端用go實現)

,

],"listeninfo":

這裡的loginfo 可以配置你想配置的若干個檔案。你想配置多少個就配置多少個,這個例子是2個。你可以根據實際情況,生成若干個。

logpath 是需要圖形化的日誌路徑

filename 是檔名

readcount 是讀取日誌最後幾行。因為圖形化的資料,考慮到後端一直輸出日誌,比如輸出了幾萬行,那麼對於看圖形的人,最多需要的可能只是最新的幾條資料而已,所以在這裡配置。

listeninfo 是後端http resful介面配置相關資訊。

好了,有了這些,後端的材料就基本備齊了。

再說前端,前端使用vue做架子。目前的vue版本是2.8

vue載入對應的前端顯示元素,並連線後端的介面或者資料展示(前後端分離)

顯示結果為下圖。

專案目錄結構為:

backgound_src 為go的後端實現。

src為vue架構**。

iOS實時檢視App執行日誌

本文討論如何實時檢視輸出在console控制台的日誌。一 xcode 通過window devices開啟devices介面,選擇我們的手機,也能看到手機中執行的程序輸出的日誌。如圖 二 libimobiledevice 安裝libimobiledevice很簡單,在命令列輸入 brew insta...

iOS實時檢視App執行日誌

本文討論如何實時檢視輸出在console控制台的日誌。一 xcode 通過window devices開啟devices介面,選擇我們的手機,也能看到手機中執行的程序輸出的日誌。如圖 二 libimobiledevice 安裝libimobiledevice很簡單,在命令列輸入 brew insta...

crontab執行日誌

在 var spool mail 使用者 基本格式 command 分 時 日 月 周 命令 第1列表示分鐘1 59 每分鐘用 或者 1表示 第2列表示小時1 23 0表示0點 第3列表示日期1 31 第4列表示月份1 12 第5列標識號星期0 6 0表示星期天 第6列要執行的命令crontab e...