Uploaded image for project: 'Apache NiFi'
  1. Apache NiFi
  2. NIFI-8596

Output readable and configurable reports for 'flowStatus'

Attach filesAttach ScreenshotAdd voteVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 0.1.0
    • None
    • MiNiFi
    • None

    Description

      Consider the following command and its output:

      ./minifi.sh flowStatus processor:all:health
      minifi.sh: JAVA_HOME not set; results may vary
      
      Java home:
      MiNiFi home: /home/minifi/minifi
      
      Bootstrap Config File: /home/minifi/minifi/conf/bootstrap.conf
      
      FlowStatusReport{controllerServiceStatusList=null, processorStatusList=[{name='Delete internal attributes', processorHealth={runStatus='Running', hasBulletins=false, validationErrorList=[]}, processorStats=null, bulletinList=null}, {name='Tag suspicious entries', processorHealth={runStatus='Running', hasBulletins=false, validationErrorList=[]}, processorStats=null, bulletinList=null}, {name='Normalize Date', processorHealth={runStatus='Running', hasBulletins=false, validationErrorList=[]}, processorStats=null, bulletinList=null}, {name='Tag the origin datacenter', processorHealth={runStatus='Running', hasBulletins=false, validationErrorList=[]}, processorStats=null, bulletinList=null}, {name='ListenSyslog', processorHealth={runStatus='Running', hasBulletins=false, validationErrorList=[]}, processorStats=null, bulletinList=null}], connectionStatusList=null, remoteProcessGroupStatusList=null, instanceStatus=null, systemDiagnosticsStatus=null, reportingTaskStatusList=null, errorsGeneratingReport=[]}
      

      This is merely a result of a FlowStatusReport.toString(). Here's what we'd like to see improved:

      1. Configurable format (JSON or YAML). I personally would love a clean JSON output, as then it's easy to query with JQ processor on command line, for example.
      2. Clean output parseable by tools. I.e. don't print bootstrap output or provide a way to redirect a stream or save to a file. Again, mostly for CLI automation
      3. Update related status reporters to incorporate above changes (shell command handler and PeriodicStatusReporters)

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            aperepel Andrew Grande

            Dates

              Created:
              Updated:

              Slack

                Issue deployment