在Yarn UI中将Spark Job标记为失败



应用程序是复杂生态系统的一部分,我们使用Yarn Rest Api跟踪所有作业的状态。

现在对于一些特定的业务场景,我们需要将Spark Job标记为失败,但我已经陷入了Gotcha的情况,因为无论我在Spark Job错误/异常或System.exit(123) Job中提出什么,都不会在Yarn中标记为完成,finalstatus为成功。

使用spark-submit启动spark作业。

object Execute {
 def main(args: Array[String]) {
   val sc = new SparkContext(sparkConf)
   if(businessException needs to be raised)
      //What to do???
 }
}

我在spark工作中尝试过的事情:

  • 抛出新的错误("Whatever")
  • 抛出新的异常("Whatever")
  • system . exit (123)
  • sys.exit (123)

希望有人能告诉我如何在yarn UI中标记spark job失败

别管这个。无论如何,Yarn对spark应用程序的报告是不稳定的,从Jira上的多个错误可以看出,这表明Yarn有时会将成功的spark作业标记为失败,反之亦然。

我最终制作了自己的db表来跟踪产生的最终状态(错误,成功等),这是根据条件从spark job更新的

相关内容

  • 没有找到相关文章

最新更新