Отключить сообщения регистрации OWL API

Я использую OWL (версия 4.0.2) и Pellet (3.0) для заполнения онтологии, а затем использую правила SWRL для вывода новых фактов. Но какая-то банка в OWL API печатает огромное количество сообщений, пока я пытаюсь сделать выводы, и в конце не отображается никакого результата - на самом деле, я не жду конца, потому что это занимает вечное выполнение.

Здесь я установил некоторую информацию об онтологии:

manager = OWLManager.createOWLOntologyManager();
    factory = manager.getOWLDataFactory();   
    this.ontologyURI = ontologyURI;
    pm = new DefaultPrefixManager(null, null,
            ontologyURI);


    File ontologyFile = new File("TwitterOntology.owl");
    try {
        ontology = manager.loadOntologyFromOntologyDocument(ontologyFile);
    } catch (OWLOntologyCreationException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

Высылаю вам часть логов:

14:54:38.961 [основная] ОТЛАДКА osordf.rdfxml.parser.TripleLogger — общее количество троек: 4788 14:54:38.966 [основная] ОТЛАДКА osorrpOptimisedListTranslator — список: ObjectPropertyAtom(http://www.semanticweb.org/michel/ontologies/2014/6/TwitterOntology#hashtagContainedInTweetRule Variable( ) Variable()) 14:54:38.967 [main] DEBUG osorrpOptimisedListTranslator — список: ObjectPropertyAtom(http://www.semanticweb.org/michel/ontologies/2014/6/TwitterOntology#posts Variable() Variable()) 14:54:38.967 [main] DEBUG osorrpOptimisedListTranslator — список: DataPropertyAtom()

14:54:40.316 [основная] ИНФОРМАЦИЯ ccoeBlackBoxExplanation - Начальное количество аксиом: 50 14:54:40.319 [основная] ИНФОРМАЦИЯ ccoeBlackBoxExplanation - Расширение аксиом (расширение 0) 14:54:40.320 [основная] ИНФОРМАЦИЯ ccoeBlackBoxExplanation - ... расширено на 62 14:54:40.321 [основная] ИНФОРМАЦИЯ ccoeBlackBoxExplanation - Расширение аксиом (расширение 1) 14:54:40.322 [основная] ИНФОРМАЦИЯ ccoeBlackBoxExplanation - ... расширено на 77 14:54:40.324 [основная] ИНФОРМАЦИЯ ccoeBlackBoxExplanation - Расширение аксиом (расширение 2) 14:54:40.324 [основная] ИНФОРМАЦИЯ ccoeBlackBoxExplanation - ... расширено на 96 14:54:40.328 [основная] ИНФОРМАЦИЯ ccoeBlackBoxExplanation - Расширение аксиом (расширение 3) 14:54:40.328 [основная] ] ИНФО ccoeBlackBoxExplanation - ... расширено на 120 14:54:40.333 [основная] ИНФОРМАЦИЯ ccoeBlackBoxExplanation - Расширение аксиом (расширение 4) 14:54:40.334 [основная] ИНФО ccoeBlackBoxExplanation - ... расширено на 150

Если бы кто-то из вас мог дать мне какую-нибудь подсказку, я был бы очень благодарен.

С уважением, Мишель.


person Mitch Souza    schedule 23.09.2015    source источник


Ответы (2)


Slf4j - это используемая библиотека ведения журнала, похоже, у вас очень низкий уровень ведения журнала.

Проверьте, есть ли у вас файл simplelogger.properties в пути к классам, и установите org.slf4j.simple logger.defaultLogLevel=error

В зависимости от существующих настроек вам, возможно, придется изменить некоторые другие локальные настройки.

person Ignazio    schedule 24.09.2015
comment
Я попытался установить свойство System в eclipse: -Dorg.slf4j.simple logger.defaultLogLevel=error перед запуском основного класса, но получил те же журналы. - person Mitch Souza; 25.09.2015
comment
Это означает, что одна из используемых вами библиотек устанавливает другое значение. Попробуйте logLevel вместо defaultLogLevel. - person Ignazio; 25.09.2015
comment
Должен быть какой-то другой источник для уровня журнала, установленного на INFO. Можете ли вы проверить свой путь к классам на наличие файлов свойств, возможно, включенных в банки, AMD убедитесь, что ваш файл свойств находится первым в пути к классам? - person Ignazio; 30.09.2015
comment
У меня нет файла свойств для журнала... Я просто устанавливаю системные свойства в eclipse: -Dorg.slf4j.simpleLogger.logLevel=error -Dtwitter4j.loggerFactory=twitter4j.NullLoggerFactory . Я использую Twitter4j для извлечения твитов из Twitter, поэтому мне нужно было установить второе свойство. По умолчанию Twitter4J выводит сообщения журнала на стандартный вывод. Если любой из SLF4J, Commons-Logging, Log4J находится в пути к классам, сообщения журнала будут напечатаны через доступную библиотеку журналов. Вы можете отключить ведение журнала, указав -Dtwitter4j.loggerFactory=twitter4j.NullLoggerFactory в свойствах системы. - person Mitch Souza; 30.09.2015
comment
Но это не работает. У меня есть файл twitter4j.properties, в котором я установил debug=false - person Mitch Souza; 30.09.2015

Я понял, как решить мою проблему. Я помещаю ответ здесь на случай, если кто-то из вас столкнется с тем же:

Я использовал slf4j-api-1.7.12.jar в своем коде. Для этой банки требуется .class из "org.slf4j.impl.StaticLoggerBinder". Я не заметил, что уже поместил следующую банку в свой путь к классам: ch.qos.logback.classic-0.9.28.jar. Эта последняя банка имеет класс «org.slf4j.impl.StaticLoggerBinder». Но проблема в том, что он печатает огромное количество сообщений журнала во время выполнения.

Я решил проблему, используя другой jar — slf4j-nop-1.7.12.jar — вместо — ch.qos.logback.classic-0.9.28.jar — который имеет нужный мне .class, но не печатает сообщения во время выполнения.

Надеюсь, я был понятен.

person Mitch Souza    schedule 19.10.2015