早期在 Nagios 3.2.0 整合 SaltStack + ThinkPHP,實現資產管理、批量執行、分組出圖。新版基於 Nagios 4.1.1 + PNP4Nagios 輕量重構,移除 ThinkPHP 依賴,直接修改核心 CGI 實現分組圖表,降低複雜度、加速交付。

status.cgi(核心 CGI)graphview.phpgraphview.php(PNP4Nagios 目錄下)hostgroup/servicegroup 參數status.dat 或 Livestatus API 獲取該分組下所有服務graph?host=...&srv=...&view=...))<img> 標籤或 iframe 嵌入,實現單頁聚合展示| 點 | 說明 |
|---|---|
| 資料來源 | Nagios status.dat / objects.cache 或 MK Livestatus (推薦,效能更好) |
| 分組映射 | 利用 Nagios hostgroup/servicegroup 定義業務邊界 |
| PNP 整合 | 直接呼叫 PNP graph 端點,複用現有 RRD 繪圖引擎 |
| 權限控制 | 複用 Nagios authorized_for_* CGI 變數,零成本繼承既有權限體系 |
| 維度 | Nagios 3.2.0 + ThinkPHP | Nagios 4.1.1 純核心修改 |
|---|---|---|
| 架構複雜度 | 三套系統整合,維護成本高 | 單一代碼庫,依賴極少 |
| 開發效率 | 需跨框架協作 | 直接改 CGI/PHP,迭代快 |
| 效能 | ThinkPHP 層額外開銷 | 直連 Livestatus/PNP,延遲低 |