Jak wiadomo, biuletyny odzwierciedlają wiadomości, które są już zarejestrowane. Tak więc cała ta zawartość jest już przechowywana w katalogu {NIFI_HOME} /logs/nifi-app.log. Jednakże, jeśli chcesz skonsumować biuletyn bezpośrednio, masz kilka różnych opcji.
- Można spożywać biuletyny z interfejsu API REST. Istnieje kilka punktów końcowych dostępu do biuletynów.
HTTP [s]: // {gospodarza}: {port}/nifi, API/regulator/procesowo/grupy {proces grupę ID}/stan rekurencyjne = prawda
To żądanie otrzyma status (w tym biuletyny) wszystkich komponentów w określonej grupie procesów. Możesz użyć aliasu "root" dla grupy procesów o poziomie katalogu głównego. Flaga rekursywna wskaże, czy zwrócić tylko dzieci z tej grupy procesów lub wszystkie składniki potomne.
http [s]: // {gospodarz}: {port}/nifi-api/kontroler/status
Ten wniosek otrzyma status (w tym biuletynach) komponentów poziomie kontrolera. Obejmuje to wszelkie zgłoszone biuletyny z usług Controller Services, Reporting Tasks i samego NiFi Framework (wiadomości klastrowe itp.).
HTTP [s]: // {gospodarza}: {port}/nifi, API/kontroler/Tablica pokładzie limit = n & sourceid = {id} & wiadomość = {str}
To żądanie spowoduje dostęp do wszystkich biuletynów i obsługuje komponenty oparte na filtrowaniu, wiadomości i ograniczenia liczby zwróconych biuletynów.
- Można również utworzyć implementację zadania raportowania, która ma dostęp do repozytorium biuletynów. Zgłaszanie Zadania są punktem rozszerzenia, który służy do zgłaszania szczegółów z tej instancji NiFi. Wymagałoby to trochę kodu Java, ale pozwoliłoby ci raportować biuletyn, jak chcesz. Oto przykład raportujący dane do Ambari [1].
[1] https://github.com/apache/nifi/blob/master/nifi-nar-bundles/nifi-ambari-bundle/nifi-ambari-reporting-task/src/main/java/org/apache/nifi/reporting/ambari/AmbariReportingTask.java
Dzięki za te sugestie. Wypróbuje je wkrótce i poinformuje, czy zadziałało. –