Apache NiFi - İzleme
Apache NiFi'de, hatalar, bellek kullanımı, CPU kullanımı, Veri Akışı istatistikleri vb. Gibi sistemin farklı istatistiklerini izlemenin birçok yolu vardır. Bu eğitimde en popüler olanları tartışacağız.
Dahili İzleme
Bu bölümde, Apache NiFi'de yerleşik izleme hakkında daha fazla bilgi edineceğiz.
Bülten Panosu
Bülten panosu, NiFi işlemciler tarafından gerçek zamanlı olarak üretilen en son HATA ve UYARI'yı gösterir. Bülten tahtasına erişmek için, bir kullanıcının sağdaki açılır menüye gitmesi ve Bülten Tahtası seçeneğini seçmesi gerekecektir. Otomatik olarak yenilenir ve bir kullanıcı da devre dışı bırakabilir. Bir kullanıcı ayrıca hatayı çift tıklayarak gerçek işlemciye gidebilir. Bir kullanıcı ayrıca aşağıdakilerle çalışarak bültenleri filtreleyebilir -
- mesajla
- isimle
- id ile
- grup kimliğine göre
Veri kaynağı kullanıcı arayüzü
Herhangi bir işlemcide veya NiFi genelinde meydana gelen Olayları izlemek için, bir kullanıcı Veri kaynağına bülten panosuyla aynı menüden erişebilir. Bir kullanıcı ayrıca aşağıdaki alanlarla çalışarak veri kaynağı havuzundaki olayları filtreleyebilir:
- bileşen adına göre
- bileşen türüne göre
- türe göre
NiFi Özet Kullanıcı Arayüzü
Apache NiFi özetine, ilan panosuyla aynı menüden de erişilebilir. Bu kullanıcı arayüzü, söz konusu NiFi örneğinin veya kümesinin tüm bileşenleri hakkında bilgi içerir. Ada, türe veya URI'ye göre filtrelenebilirler. Farklı bileşen türleri için farklı sekmeler vardır. Aşağıdakiler, NiFi özet kullanıcı arayüzünde izlenebilen bileşenlerdir -
- Processors
- Giriş bağlantı noktaları
- Çıkış bağlantı noktaları
- Uzak süreç grupları
- Connections
- İşlem grupları
Bu kullanıcı arayüzünde, JVM istatistiklerini kontrol etmek için sağ alt tarafta sistem teşhisi adlı bir bağlantı vardır.
Raporlama Görevleri
Apache NiFi, Ambari, Grafana, vb. Gibi harici izleme sistemlerini desteklemek için birden fazla raporlama görevi sağlar. Bir geliştirici, özel bir raporlama görevi oluşturabilir veya NiFi'nin ölçümlerini harici izleme sistemlerine göndermek için dahili olanları yapılandırabilir. Aşağıdaki tablo, NiFi 1.7.1 tarafından sunulan raporlama görevlerini listelemektedir.
S.No. | Raporlama Görevi Adı | Açıklama |
---|---|---|
1 | AmbariReportingTask | NiFi için Ambari Metrics Service'i kurmak için. |
2 | ControllerStatusReportingTask | Bilgileri NiFi özet kullanıcı arayüzünden son 5 dakika için bildirmek için. |
3 | MonitorDiskUsage | Belirli bir dizinin disk kullanımını bildirmek ve uyarmak için. |
4 | MonitorMemory | JVM'nin Java Bellek havuzunda kullanılan Java Yığını miktarını izlemek için. |
5 | SiteToSite BültenRaporlamaTask | Site to Site protokolünü kullanarak bültenlerdeki hataları ve uyarıları bildirmek. |
6 | SiteToSiteProvenanceReportingTask | Siteden Siteye protokolünü kullanarak NiFi Veri Kaynağı olaylarını bildirmek için. |
NiFi API
Özel olarak geliştirilmiş herhangi bir uygulamada NiFI istatistiklerini izlemek için kullanılabilen, API adlı bir sistem teşhisi vardır. Postacıda API'yi kontrol edelim.
İstek
http://localhost:8080/nifi-api/system-diagnostics
Tepki
{
"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"
}
}
}
}