Как записать выполнение плагина - PullRequest
4 голосов
/ 16 января 2012

Я работаю над созданием пользовательского NUTCH плагина со специальными требованиями.

Я обнаружил, что мой плагин упоминается в hadoop.log, но он не имеет отношения.

Я добавил LOG.debug("test") и LOG.info("test2") в разных местах моего кода, и я написал в log4j.properties

# Logging for development
log4j.logger.org.apache.nutch.parse.html=DEBUG

У меня вопрос: где я могу найти эти сообщения, я проверил hadoop.log, но ничего не смог найти?

Как я могу регистрировать / отслеживать мой код Java? (Я не использую затмение.)

Спасибо

Ответы [ 2 ]

1 голос
/ 21 января 2012

Решено этим кодом

 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 public static final Logger LOG = LoggerFactory.getLogger("org.apache.nutch.parse.html");
1 голос
/ 17 января 2012

, если ваш плагин имеет класс Variable

public static final Log LOG = LogFactory.getLog(YourClass.class
        .getName());

И ваш вызываемый метод имеет:

LOG.info("Your Logmessage");

И вы создали свой плагин и настроили, чтобы Nutch использовал его при извлечении /crawling / ... затем сообщение регистрируется в hadoop.log.

Когда вы собрали Nutch, он говорит, что он собирает ваш плагин?

Если да, вы можете проверить свою конфигурацию плагина, которая развернута в NutchHome / runtime / local / conf / nutch-site.xml:

<property>
<name>plugin.includes</name>
<value>protocol-http|urlfilter-regex|parse-(html)|yourplugin</value>
<description>The plugins which are used in every crawl ordered by call-  order</description>
</property>

Если ваш плагин настроен в среде выполнения.Если нет, измените файл конфигурации, перестройте Nutch.Если это не поможет, вы можете дать мне больше информации.

...