PHP - 不需要資料庫的 Linux 監控

4 月 20, 2023

--

最簡化的網頁監控方案

出社會之後後來因為都找程式設計師的工作,因此就比較少在公司負責 MIS 相關工作。

可是一直都還是有遇到 Linux 使用問題,例如連線出問題是因為記憶體還是頻寬不足,或是 CPU 負載 100% 無法處理。可是沒有一個影響主機運作最少的監控工具,目前市面上的工具大多要資料庫儲存數據,這樣光是監控就要耗費效能,所以 Hoyo 只能自己設計一套不使用資料庫的監控方案。

此原始碼分享到 GitHub (linux-monitor-no-database)

--

思路

  • 由網頁前端定時詢問主機獲取數值
  • 獲取數值必須盡可能使用最基本的程式,減低獲取數值時系統負擔
  • 將數值儲存在 JavaScript 陣列
  • 使用陣列數值繪製圖表

--

特色

  • 不需要資料庫
  • 不需要設定定期執行
  • 不需要執行服務
  • 可以得到 CPU 負載、記憶體空間、硬碟空間即時百分比
  • 可以得到即時網路流量以及最近一分鐘流量圖表
  • 手動釋放記憶體快取 CACHE

--

取得硬體資訊

硬碟大小是需要取得真實大小不是分割後大小,所以使用 fdisk

預設 fdisk -l 列出的資訊是:

--

取得使用數據

網站連線數

網卡流量

硬碟空間

CPU 使用負載

記憶體空間

記憶體主要區分有 used, shared,  buff/cache 等數值

回傳後在網頁上還原成

--

背景執行

關閉終端還可以運作

--

 687 total views,  1 views today

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。