Где находятся журналы Spark в EMR?

Я не могу найти журналы ошибок или сообщения от println вызовов в Scala при выполнении заданий на Spark в EMR.

Где я могу получить к ним доступ?

Я отправляю Spark job, написанный в Scala, в EMR, используя script-runner.jar с аргументами --deploy-mode, установленными на cluster, и --master, установленными на yarn. Он отлично справляется с работой.

Однако я не вижу свои операторы println в Amazon EMR UI, где перечислены "stderr, stdoutetc. 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

`


person Sean Bollin    schedule 27.05.2015    source источник


Ответы (5)


В режиме развертывания кластера на пряже драйвер Spark и, следовательно, исполняемый пользовательский код будут находиться в контейнере Application Master. Похоже, вы включили отладку EMR в кластере, поэтому журналы также должны были быть отправлены на S3. В локации S3 посмотрите на task-attempts/<applicationid>/<firstcontainer>/*.

person ChristopherB    schedule 29.05.2015
comment
Да, это правильно. Спасибо. Для сведения других пользователей вы можете увидеть этот URI журнала в веб-интерфейсе Amazon EMR для информации/деталей вашего кластера. - person Sean Bollin; 18.06.2015

Если вы подключитесь по SSH к главному узлу вашего кластера, вы сможете найти журналы stdout, stderr, syslog и контроллера в разделе:

/mnt/var/log/hadoop/steps/<stepname>
person Anders Hammar    schedule 28.05.2015
comment
Это журналы Step, которые не содержат журналов приложений Spark (например, операторов println OP). - person Azuaron; 30.05.2018
comment
Как указано в комментарии выше, этот ответ неверен. - person kyle; 07.09.2018

Журналы событий, необходимые для spark-history-server, можно найти по адресу:

hdfs:///var/log/spark/apps
person randal25    schedule 29.01.2019

Я также потратил много времени, чтобы понять это. Найдены журналы в следующем расположении: Консоль пользовательского интерфейса EMR -> Сводка -> URI журнала -> Контейнеры -> application_xxx_xxx -> container_yyy_yy_yy -> stdout.gz.

person VSh    schedule 18.07.2020

Если вы отправляете задание с помощью emr-bootstrap вы можете указать каталог журнала как корзину s3 с помощью --log-uri

person Holden    schedule 28.05.2015
comment
спасибо - я думаю, это может быть установлено при создании кластера (а не при отправке задания)? я попробую в следующий раз, когда я создам кластер - person Sean Bollin; 28.05.2015
comment
Журналы S3 представляют собой обычный текст, однако на сервере истории Spark я могу загрузить журналы JSON, которые идеально подходят для индексации в Elasticsearch (кнопка «Загрузить» в столбце «Журнал событий»). Где они хранятся? - person lfk; 21.05.2018