2016-12-20 3 views
1

ich Nifi bin mit, und ich habe Daten fließen, wo ich die folgenden processos verwenden:Best Practices Fehler in Nifi behandeln

  • ExecuteScript
  • RouteOnAttribute
  • FetchMapDistribuedCache
  • InvokeHTTPRequest
  • EvaluateJSONPath

und zwei Ebenen pr Ocess Gruppe wie NIFI FLOW >>> Prozessgruppe 1 >>> Prozessgruppe 2, meine Frage ist, wie man mit Fehlern in diesem Fall umgehen muss, ich habe Ausgabeport für jeden Prozessor erstellt, um Fehler außerhalb der Prozessgruppe und im NIFI Flow I auszugeben hat einen Trichter für jeden Fehlertyp durchgeführt und dann diese Fehler alle in Hbase gefangen setzen, so kann ich später einige Berichterstattung tun, und wie Sie diese Beziehungen Multiples addieren sie vorstellen können und meinen einfachen Datenfluß Start wurde weniger sichtbar. Sie regelmäßig begegnen

Meine Fragen sind, was die besten Praktiken ist Fehler in Prozessoren zu handhaben, und was ist der beste Ansatz einige Fehlerberichterstattung mit Nifi (E-Mail oder PDF)

Antwort

1

Es hängt von den Fehlern zu tun. Einige Prozessoren können versagen, eine Aufgabe auszuführen (ein erwartetes, aber nicht gewünschtes Ergebnis), und die Route der ausgefallene Flowfile zu REL_FAILURE, eine spezifische Beziehung, die mit einem Prozessor verbunden werden kann, um diese Fehler zu handhaben, oder zurück zu dem gleichen Prozessor zu sein, wiederholt. Andere (oder die gleichen Prozessoren in verschiedenen Szenarien) können Ausnahmen stoßen, die unerwarteten Ereignisse sind, die nicht vom Prozessor gelöst werden können.

Ein Beispiel hierfür ist PutKafka vs. EncryptContent. Wenn das Remote-Kafka-System vorübergehend nicht verfügbar ist, kann der Prozessor den Flowfile-Inhalt nicht senden. Ein erneuter Versuch nach einer gewissen Verzögerung kann jedoch erfolgreich sein, wenn das entfernte System wieder verfügbar ist. Das Entschlüsseln von Chiffretext mit dem falschen Schlüssel löst jedoch immer eine Ausnahme aus, unabhängig davon, wie oft versucht wird oder wie lange die Wiederholungsverzögerung dauert.

Viele Benutzer leiten die Fehler an den Prozessor PutEmail weiter und melden sie an einen bestimmten Benutzer/eine Gruppe, die die Fehler auswerten und den Datenfluss überwachen können, falls erforderlich. Sie können auch "Berichtsaufgaben" verwenden, um Messwerte zu überwachen oder Proventionsdaten als Betriebsdaten zu erfassen und diese an E-Mail-/Offline-Speicher usw. weiterzuleiten, um damit Analysen durchzuführen.

+0

Ich habe eine neue Reporting-Aufgabe keine Ahnung erstellt, wie die Metriken oder Route anzuzeigen, die/Offline-Speicher E-Mail. Kannst du bitte führen? Vielen Dank. – zniv