Spark在哪里登录EMR?

时间:2015-05-27 23:38:50

标签: scala apache-spark emr

我在Spark的{​​{1}}上运行作业时,无法找到Scala中EMR次来电的错误日志或消息。

我在哪里可以访问这些?

我使用Spark job提交Scala写的EMR script-runner.jar--deploy-mode参数cluster设为--masteryarn设置为println。它运作良好。

但是我没有在Amazon EMR UI列出&{34; stderr,stdout etc. Furthermore if my job errors I don't see why it had an error. All I see is this in the stderr`中的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 语句:

{{1}}

`

5 个答案:

答案 0 :(得分:14)

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

答案 1 :(得分:8)

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

/mnt/var/log/hadoop/steps/<stepname>

答案 2 :(得分:1)

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

答案 3 :(得分:0)

如果您使用emr-bootstrap提交作业,则可以将日志目录指定为带有--log-uri的s3存储区

答案 4 :(得分:0)

事件日志,spark-history-server所需的日志可以在以下位置找到:

hdfs:///var/log/spark/apps