Вопрос по hadoop, apache-pig, hdfs – Отладка в PIG UDF
2
ответа
EvalFunc
, вы можете использовать Logger, возвращенный изEvalFunc.getLogger()
, Вывод журнала должен быть виден в связанной задаче Map / Reduce, которую выполняет pig (если задание выполняется более чем за один этап, вам придется выбирать их, чтобы найти связанные записи журнала).
Таким образом, журналы попадут в файл журнала Map Reduce Task? Могу ли я специально сделать свои записи журнала в отдельный файл?
Uno
Прошу прощения за такой наивный вопрос. Но я использовал его следующим образом: PigLogger pigLogger = this.getPigLogger (); pigLogger.warn (объект, String, перечисление); Я что-то здесь упускаю? Или это для EvalFunc Logger. Я не вижу ничего, кроме предупреждения. У нас нет отладки, информации, ошибки?
Uno
Я пытался использовать this.getLogger.info (String); Должно ли это появиться в журнале задачника? Я не вижу журналов для этого.
Uno
это очевидно, но я советую отладить вашу UDF в локальном режиме перед развертыванием в кластере / псевдокластере. Таким образом, вы можете отладить его прямо в вашей IDE (затмение в моем случае), что проще, чем отладка журналов.
Есть ли сайт или какие-то шаги, которые я могу выполнить, чтобы начать работу в Eclipse? Я имею в виду свинью в затмении.
Uno
Не знаю о сайте с шагами, но все достаточно просто: поместите зависимости hadoop-core и pig в ваш maven pom, а затем работайте с
org.apache.pig.PigServer
, пытатьсяpigServer.registerScript(resource.getInputStream(), pigScriptParams, null);
а потомPigStats stats = pigServer.store("final_output", pigScriptParams.get("output_folder"), pigStoreFunc).getStatistics();