- Apache NiFi 教程
- Apache NiFi - 首頁
- Apache NiFi - 簡介
- Apache NiFi - 基本概念
- Apache NiFi - 環境設定
- Apache NiFi - 使用者介面
- Apache NiFi - 處理器
- Apache NiFi - 處理器分類
- Apache NiFi - 處理器關係
- Apache NiFi - FlowFile
- Apache NiFi - 佇列
- Apache NiFi - 處理組
- Apache NiFi - 標籤
- Apache NiFi - 配置
- Apache NiFi - 管理
- Apache NiFi - 建立資料流
- Apache NiFi - 模板
- Apache NiFi - API
- Apache NiFi - 資料溯源
- Apache NiFi - 監控
- Apache NiFi - 升級
- Apache NiFi - 遠端處理組
- Apache NiFi - 控制器設定
- Apache NiFi - 報告任務
- Apache NiFi - 自定義處理器
- Apache NiFi - 自定義控制器服務
- Apache NiFi - 日誌記錄
- Apache NiFi 有用資源
- Apache NiFi - 快速指南
- Apache NiFi - 有用資源
- Apache NiFi - 討論
Apache NiFi - 監控
在 Apache NiFi 中,有多種方法可以監控系統的不同統計資訊,例如錯誤、記憶體使用情況、CPU 使用情況、資料流統計資訊等。在本教程中,我們將討論最流行的方法。
內建監控
在本節中,我們將詳細瞭解 Apache NiFi 中的內建監控。
公告板
公告板即時顯示 NiFi 處理器生成的最新錯誤和警告。要訪問公告板,使用者需要轉到右側的下拉選單並選擇“公告板”選項。它會自動重新整理,使用者也可以停用它。使用者還可以透過雙擊錯誤導航到實際的處理器。使用者還可以透過以下方式過濾公告:
- 按訊息
- 按名稱
- 按 ID
- 按組 ID
資料溯源 UI
要監控任何特定處理器或整個 NiFi 上發生的事件,使用者可以從與公告板相同的選單訪問資料溯源。使用者還可以透過以下欄位過濾資料溯源儲存庫中的事件:
- 按元件名稱
- 按元件型別
- 按型別
NiFi 摘要 UI
Apache NiFi 摘要也可以從與公告板相同的選單訪問。此 UI 包含有關該特定 NiFi 例項或叢集的所有元件的資訊。它們可以按名稱、型別或 URI 進行過濾。不同的元件型別有不同的選項卡。以下是可以在 NiFi 摘要 UI 中監控的元件:
- 處理器
- 輸入埠
- 輸出埠
- 遠端處理組
- 連線
- 處理組
在此 UI 中,在右下角有一個名為“系統診斷”的連結,用於檢查 JVM 統計資訊。
報告任務
Apache NiFi 提供多個報告任務來支援外部監控系統,例如 Ambari、Grafana 等。開發人員可以建立自定義報告任務,也可以配置內建報告任務以將 NiFi 的指標傳送到外部監控系統。下表列出了 NiFi 1.7.1 提供的報告任務。
| 序號 | 報告任務名稱 | 描述 |
|---|---|---|
| 1 | AmbariReportingTask | 為 NiFi 設定 Ambari 度量服務。 |
| 2 | ControllerStatusReportingTask | 報告過去 5 分鐘內 NiFi 摘要 UI 中的資訊。 |
| 3 | MonitorDiskUsage | 報告並警告特定目錄的磁碟使用情況。 |
| 4 | MonitorMemory | 監控 JVM 的 Java 記憶體池中使用的 Java 堆大小。 |
| 5 | SiteToSiteBulletinReportingTask | 使用站點到站點協議報告公告中的錯誤和警告。 |
| 6 | SiteToSiteProvenanceReportingTask | 使用站點到站點協議報告 NiFi 資料溯源事件。 |
NiFi API
有一個名為“系統診斷”的 API,可用於在任何自定義開發的應用程式中監控 NiFi 統計資訊。讓我們在 postman 中檢查 API。
請求
https://:8080/nifi-api/system-diagnostics
響應
{
"systemDiagnostics": {
"aggregateSnapshot": {
"totalNonHeap": "183.89 MB",
"totalNonHeapBytes": 192819200,
"usedNonHeap": "173.47 MB",
"usedNonHeapBytes": 181894560,
"freeNonHeap": "10.42 MB",
"freeNonHeapBytes": 10924640,
"maxNonHeap": "-1 bytes",
"maxNonHeapBytes": -1,
"totalHeap": "512 MB",
"totalHeapBytes": 536870912,
"usedHeap": "273.37 MB",
"usedHeapBytes": 286652264,
"freeHeap": "238.63 MB",
"freeHeapBytes": 250218648,
"maxHeap": "512 MB",
"maxHeapBytes": 536870912,
"heapUtilization": "53.0%",
"availableProcessors": 4,
"processorLoadAverage": -1,
"totalThreads": 71,
"daemonThreads": 31,
"uptime": "17:30:35.277",
"flowFileRepositoryStorageUsage": {
"freeSpace": "286.93 GB",
"totalSpace": "464.78 GB",
"usedSpace": "177.85 GB",
"freeSpaceBytes": 308090789888,
"totalSpaceBytes": 499057160192,
"usedSpaceBytes": 190966370304,
"utilization": "38.0%"
},
"contentRepositoryStorageUsage": [
{
"identifier": "default",
"freeSpace": "286.93 GB",
"totalSpace": "464.78 GB",
"usedSpace": "177.85 GB",
"freeSpaceBytes": 308090789888,
"totalSpaceBytes": 499057160192,
"usedSpaceBytes": 190966370304,
"utilization": "38.0%"
}
],
"provenanceRepositoryStorageUsage": [
{
"identifier": "default",
"freeSpace": "286.93 GB",
"totalSpace": "464.78 GB",
"usedSpace": "177.85 GB",
"freeSpaceBytes": 308090789888,
"totalSpaceBytes": 499057160192,
"usedSpaceBytes": 190966370304,
"utilization": "38.0%"
}
],
"garbageCollection": [
{
"name": "G1 Young Generation",
"collectionCount": 344,
"collectionTime": "00:00:06.239",
"collectionMillis": 6239
},
{
"name": "G1 Old Generation",
"collectionCount": 0,
"collectionTime": "00:00:00.000",
"collectionMillis": 0
}
],
"statsLastRefreshed": "09:30:20 SGT",
"versionInfo": {
"niFiVersion": "1.7.1",
"javaVendor": "Oracle Corporation",
"javaVersion": "1.8.0_151",
"osName": "Windows 7",
"osVersion": "6.1",
"osArchitecture": "amd64",
"buildTag": "nifi-1.7.1-RC1",
"buildTimestamp": "07/12/2018 12:54:43 SGT"
}
}
}
}
廣告