我在Cloudera上使用Spark启用了纱线日志聚合,但是当Spark作业失败时,我运行了
yarn logs -applicaitonId <id>
或
yarn logs -applicationId <id> -am ALL
我所得到的都是stderr
中的工作日志
但是在Yarn故障诊断行中,我设法看到
Diagnostics: User class threw exception: java.lang.reflect.InvocationTargetException
棘手的部分是我在任何地方都找不到此异常,包括每台计算机上的/var/log/hadoop-yarn
日志文件夹位置。
我需要此异常详细信息,以便我可以了解火花环境设置中缺少哪个Jar或究竟是哪里出了问题。
有什么想法可以找到此日志位置吗?我在以下日志中发现了一些类似的问题:
17/08/16 02:28:06 ERROR yarn.ApplicationMaster: User class threw exception: java.lang.reflect.InvocationTargetException
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
因此,我试图定位ApplicationMaster日志位置,也许这与我们通常在容器日志中所做的不同。