Von Luca Spiegel auf Dienstag, 10. Juni 2025
Kategorie: Data Management

Maximale Kontrolle über NiFi-Logs: So ändert ihr das Log-Level in Echtzeit!

Apache NiFi ist eine leistungsstarke Plattform zur Automatisierung und Verwaltung von Datenflüssen – doch was tun, wenn mal etwas klemmt? NiFi ermöglicht eine granulare Konfiguration des Log-Verhaltens. Besonders praktisch: Das Log-Level kann auch während des laufenden Betriebs dynamisch angepasst werden, sodass Fehleranalysen ohne Neustart des Systems möglich sind und Ausfallzeiten vermieden werden.

Wie genau das funktioniert, zeigen wir euch in diesem kurzen Beitrag. 

​Tiefe Einblicke gewinnen

NiFi nutzt, wie die meisten Apache-Projekte, Log4J als Logging Framework. Dies ist Fluch und Segen zugleich. Zum einen ist es weit verbreitet und standardisiert, aber es hat auch die Neigung, sehr viele Informationen zu schreiben.

In der Regel benötigen wir nicht immer alle Informationen des INFO- oder DEBUG-Loglevels, sondern nur gezielt die der zu betrachteten Komponenten. Dies ist in NiFi möglich und das, ohne den Service durchzustarten. 

​Wo befindet sich das Log-Level in NiFi?

Apache NiFi setzt standardmäßig auf die Logging-Konfiguration mittels logback.xml, die sich im conf-Verzeichnis von NiFi befindet (z. B. nifi/conf/logback.xml). Diese Datei steuert:

Beispiel für das Haupt-Logfile nifi-app.log: 

Möchte man temporär mehr Details sehen, kann man das Log-Level zum Beispiel auf DEBUG setzen: 

Dies führt in diesem Beispiel dazu, dass alle Komponenten in NiFi auf DEBUG-Level schreiben.

Das mag auf den ersten Blick die richtige Wahl sein, doch gerade in mittleren bis größeren Umgebungen enthält dies zu viele Informationen. 

Wie lässt sich als das Loglevel nur für Komponenten anpassen?

Das ist möglich, indem der Klassenname im Logger erweitert wird. In diesem Fall für den LogAttribute Prozessor. 

Nach wenigen Minuten lassen sich in der Logdatei die ersten „DEBUG“-Meldungen erkennen: 

Sobald das Problem erkannt und behoben wurde, kann das Log-Level wieder auf INFO zurückgesetzt werden: 

Mögliche Stolperfallen und Tipps

Mehr Logging = mehr Daten: Will ich das wirklich?

Bei sehr hohem Logging-Level können Logdateien rasch mehrere Gigabyte groß werden. Das erschwert natürlich auch die Suche nach einer Fehlermeldung. Versucht das Zeitfenster einzugrenzen und bereitet entsprechende Analysetools, wie lognav vor.

Achtung Cluster!

In einem NiFi-Cluster kann jeder Node separat konfiguriert werden.

Wenn der Fehler nur auf einem Knoten auftritt, reicht es nur dort die Anpassungen vorzunehmen. Welcher Knoten betroffen ist, hängt vom „Ort“ des FlowFiles ab.

Fazit

Das Ändern des Log-Levels in Apache NiFi „on-the-fly“ ist ein Beispiel dafür, wie man in modernen Datenverarbeitungsplattformen Flexibilität und Zuverlässigkeit vereint. Statt ein komplettes System neu starten zu müssen – was in geschäftskritischen Umgebungen kaum akzeptabel ist –stellt NiFi dynamische Konfigurationsmöglichkeiten bereit.

Ob ihr nun rasch auf Fehler reagieren oder den Detailgrad der Protokolle im Regelbetrieb reduzieren wollt: Die Fähigkeit, das Logging bequem über die UI oder per Konfigurationsendpunkt anzupassen, ist ein entscheidender Vorteil in der Praxis. Achtet jedoch stets darauf, die richtigen Log-Level nur so lange aktiv zu halten, wie ihr sie wirklich benötigt, um Performance-Probleme und übermäßiges Datenaufkommen zu vermeiden.

Habt ihr weitere Fragen oder Tipps? Sprecht uns gerne an! 

Seminarempfehlungen

Verwandte Beiträge

Kommentare hinterlassen