ApplicationReport applicationReport;
         YarnApplicationState applicationState;
 
         do{
             Thread.sleep(1000);
             applicationReport = yarnClient.getApplicationReport(applicationId);
             applicationState = applicationReport.getYarnApplicationState();
 
             System.out.println("Diagnostics " + applicationReport.getDiagnostics());
 
         }while(applicationState != YarnApplicationState.FAILED &&
                applicationState != YarnApplicationState.FINISHED &&
                applicationState != YarnApplicationState.KILLED );
 
         System.out.println("Application finished with " + applicationState + " state and id " + applicationId);
     }
 
 
