Spark在哪里登录EMR?

Sea*_*lin 16 scala emr apache-spark

println在运行作业时Spark,我无法从Scala中的调用中找到错误日志或消息EMR.

我在哪里可以访问这些?

我提交Spark job,写在ScalaEMR使用script-runner.jar带有参数--deploy-mode设定cluster--master设定yarn.它运行良好.

但是我没有看到我printlnAmazon EMR UI"stderr,stdout etc. Furthermore if my job errors I don't see why it had an error. All I see is this in thestderr` 列出的语句中的语句:

15/05/27 20:24:44 INFO yarn.Client: Application report from ResourceManager: 
 application identifier: application_1432754139536_0002
 appId: 2
 clientToAMToken: null
 appDiagnostics: 
 appMasterHost: ip-10-185-87-217.ec2.internal
 appQueue: default
 appMasterRpcPort: 0
 appStartTime: 1432758272973
 yarnAppState: FINISHED
 distributedFinalState: FAILED
 appTrackingUrl: http://10.150.67.62:9046/proxy/application_1432754139536_0002/A
 appUser: hadoop
Run Code Online (Sandbox Code Playgroud)

`

Chr*_*erB 14

通过在纱线上使用群集的部署模式,Spark驱动程序以及因此执行的用户代码将位于Application Master容器中.听起来你在群集上启用了EMR调试,因此日志也应该推送到S3.在S3位置看看task-attempts/<applicationid>/<firstcontainer>/*.


小智 7

如果您通过SSH连接到群集的主节点,那么您应该能够在以下位置找到stdout,stderr,syslog和controller日志:

/mnt/var/log/hadoop/steps/<stepname>
Run Code Online (Sandbox Code Playgroud)

  • 这些是 Step 日志,不包含 Spark 应用程序日志(例如 OP 的 println 语句)。 (4认同)

VSh*_*VSh 6

我也花了很多时间来解决这个问题。在以下位置找到日志:EMR UI 控制台 -> 摘要 -> 日志 URI -> 容器 -> application_xxx_xxx -> container_yyy_yy_yy -> stdout.gz。