2013-05-07 1 views
9

Я работаю с PigLatin, используя хрюканье, и каждый раз, когда я «сбрасываю» вещи, моя консоль сбивается с помощью blah blah, blah non-info, есть ли способ подавить все это?Как подавить раздувание бесполезной информации при использовании команды DUMP при использовании grunt через 'pig -x local'?

 
grunt> A = LOAD 'testingData' USING PigStorage(':'); dump A; 

2013-05-06 19: 42: 04146 [главную] INFO org.apache.pig.tools.pigstats.ScriptState - Свиньи функции, используемые в сценарии: Неизвестный
2013-05-06 19 : 42: 04,147 [main] INFO
org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MRCompiler - порог конкатенации файлов: 100 оптимистичен? ложная ...
...
--- другой, как 50 строк бесполезного контекста затирание мусора здесь ... до --- ...
...
org.apache.pig .backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher - Успех!

теперь мой, как 4 строки информации ищет:

 
(daemon,*,1,1,System Services,/var/root,/usr/bin/false) 
(uucp,*,,,/var/spool/uucp,/usr/sbin/uucico) 
(taskgated,*,13,13,Task Gate Daemon,/var/empty,/usr/bin/false) 
(networkd,*,24,24,Network Services,/var/empty,/usr/bin/false) 
(installassistant,*,25,25,/usr/bin/false)
grunt>

---> очевидно, если он ошибки, отлично Lotsa информация полезна, но не тогда, когда он в основном работает.

+0

Я пробовал выше, это не работает ... Однако эта ссылка работает http: // stackoverflow.com/questions/16627748/pig-batch-mode-how-to-set-logging-level-to-hide-info-log-messages – Rudra

ответ

7

Необходимо установить свойства log4j. Например:

$PIG_HOME/conf/pig.properties : 
enable: 
# log4jconf=./conf/log4j.properties 

rename: log4j.properties.template -> log4j.properties 

log4j.properties : 
set info to error: 
log4j.logger.org.apache.pig=info, A 

Вы также можете установить связанную Hadoop уровень ведения журнала, а также:

log4j.logger.org.apache.hadoop = error, A 
+2

Кажется, что есть [ошибка] (https://issues.apache.org/jira/browse/PIG-3275) в Pig 0.12.0, что приводит к сбою. – Xaero182

+0

@ Xaero182 Я думаю, что 0.12.0 использует logback вместо log4j. Попробуйте добавить этот файл JAVA OPT: -Dlogback.configurationFile =/path/to/your/logback.xml. – Tony

3

При запуске свиньи передайте файл log4j.properties с pig -4 <filename>.

В моем случае был log4j.properties в каталоге conf и установив уровень регистратора имени org.apache.pig в ERROR достаточно, чтобы сделать регистратор менее многословным.

log4j.logger.org.apache.pig=ERROR, A 
6

Простой способ сделать это, кажется, чтобы перенаправить стандартную ошибку, как показано ниже.

Но он будет подавлять все errors.

pig -x local 2> /dev/null 

обнаружил также, что если удалить или переименовать ваш Hadoop установить каталог, в основном делает его недоступным для свиней, то все эти информационные сообщения уходят.
Изменение уровней ведения журнала в hadoop не помогло, просто чтобы вы знали.

+2

Это, честно говоря, единственное, что напрямую отвечает на вопрос и дает простое решение. Создание и редактирование файла log4j.properties на самом деле не режут его для меня. – WattsInABox

+0

Это лучший способ для меня –

0

свинья имеет уровень журнала отладки один необходимо установить, что в pig.properties файле,

# Logging level. debug=OFF|ERROR|WARN|INFO|DEBUG (default: INFO) 
# 
# debug=INFO 

Причина одна получить большие журналы на консоли, например, измените его на ERROR

+0

Нужно ли перезагружать Unix после этого изменения? это не работает для меня. Я обновил его, но он не работает. – lucifer

Смежные вопросы