2016-05-25 33 views
5

Voglio sapere se esiste un modo per acquisire i messaggi del bollettino (sostanzialmente errori) che compaiono sull'interfaccia utente di Nifi e memorizzarli in qualche attributo/file in modo che possa essere visto dopo. Lo schermo viene aggiornato ogni 5 minuti e se c'è un guasto in uno qualsiasi dei processori vorrei sapere il motivo.come acquisire i messaggi bollettini in apache nifi

Non sto parlando particolarmente della parte di registrazione qui.

risposta

5

Come sapete, i bollettini riflettono i messaggi già registrati. Quindi tutto questo contenuto è già memorizzato in {NIFI_HOME} /logs/nifi-app.log. Tuttavia, se volessi utilizzare direttamente il bollettino, hai un paio di opzioni diverse.

  • È possibile consumare i bollettini dall'API REST. Esistono due endpoint per l'accesso ai bollettini.

http [s]: // {host}: {porta}/nifi-api/Controller/processo di gruppi/{processo-group-id}/stato recursive = true

Questa richiesta otterrà lo stato (compresi i bollettini) di tutti i componenti nell'ambito del gruppo di processi specificato. È possibile utilizzare l'alias "root" per il gruppo di processi di livello root. Il flag ricorsivo indicherà se restituire o meno solo i figli di quel gruppo di processi o tutti i componenti discendenti.

http [s]: // {host}: {porta}/nifi-api/regolatore/stato

Questa richiesta otterrà lo stato (compresi i bollettini) dei componenti di livello Controller. Ciò include tutti i bollettini segnalati da Controller Services, Reporting Tasks e lo stesso NiFi Framework (messaggi di clustering, ecc.).

http [s]: // {host}: {porta}/nifi-api/regolatore/albo limite = n & sourceid = {id} & messaggio = {str}

Questa richiesta accederà a tutti i bollettini e supporterà i componenti basati sul filtraggio, il messaggio e la limitazione del numero di bollettini restituiti.

  • È anche possibile creare un'implementazione di Reporting Task che abbia accesso al repository di bollettini. Le attività di reporting sono un punto di estensione che ha lo scopo di segnalare i dettagli di questa istanza NiFi. Ciò richiederebbe un codice Java ma ti consentirebbe di segnalare il bollettino come preferisci. Ecco un esempio che riporta le metriche ad 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

+0

Grazie per questi suggerimenti. Proverò presto e ti farà sapere se ha funzionato. –

Problemi correlati