Выходные данные и ошибки заданий AWS Glue записываются в два разных журнала CloudWatch, /aws-glue/jobs/error
и /aws-glue/jobs/output
по умолчанию. Когда я включаю операторы print()
в свои сценарии для отладки, они записываются в журнал ошибок (/aws-glue/jobs/error
).
Я пробовал использовать:
log4jLogger = sparkContext._jvm.org.apache.log4j
log = log4jLogger.LogManager.getLogger(__name__)
log.warn("Hello World!")
но "Привет, мир!" не отображается ни в одном из журналов выполненного мной тестового задания.
Кто-нибудь знает, как записывать операторы журнала отладки в выходной журнал (/aws-glue/jobs/output
)?
TIA!
РЕДАКТИРОВАТЬ:
Оказывается, вышесказанное действительно работает. Произошло то, что я выполнял задание в окне редактора сценариев AWS Glue Script, которое фиксирует комбинации клавиш Command-F и выполняет поиск только в текущем сценарии. Поэтому, когда я попытался найти на странице вывод журнала, мне показалось, что он не был зарегистрирован.
ПРИМЕЧАНИЕ. Во время тестирования предложения первого респондента я обнаружил, что скрипты AWS Glue, похоже, не выводят никаких сообщений журнала с уровнем ниже WARN!
log4jLogger
? Каким-то образом добавив эти три строки в мой скрипт, моя работа зависла там. Статус показываетrunning
, но журнал не создается - person cozyss   schedule 24.07.2018