конфигурация log4j2 с прерывателем

1

Я пытаюсь использовать log4j2 с disruptor в java-приложении. У меня есть следующие файлы jar в моем пути к классам:

  1. log4j-апи-2,0-rc2.jar
  2. log4j-ядро-2,0-rc2.jar
  3. нарушающий-3.2.0.jar

В моем классе Java я делаю следующее, чтобы проверить:

import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;

public class LoggerTest {   
     private static final Logger Logger = LogManager.getLogger(LoggerTest.class.getName());

    public static void main(String[] args) {
        Logger.info("testing log4j2 with disruptor");
}

Мой файл log4j2.xml выглядит следующим образом:

<?xml version="1.0" encoding="UTF-8"?>

<!-- Don't forget to set system property 
-DLog4jContextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector
     to make all loggers asynchronous. -->

<configuration status="INFO">
  <appenders>
    <!-- Async Loggers will auto-flush in batches, so switch off immediateFlush. -->
    <FastFile name="RandomAccessFile" fileName="logs/test.log" immediateFlush="false" append="false"> 
      <PatternLayout>
        <pattern>%d %p %c{1.} [%t] %m %ex%n</pattern>
      </PatternLayout>
    </FastFile>
  </appenders>
  <loggers>
    <root level="info" includeLocation="true">
      <appender-ref ref="RandomAccessFile"/>
    </root>
  </loggers>
</configuration>

Когда я запускаю приложение, я получаю следующую ошибку (без выхода журнала):

2014-07-10 14:45:32,930 ERROR Error processing element FastFile: CLASS_NOT_FOUND
2014-07-10 14:45:32,973 ERROR Unable to locate appender RandomAccessFile for logger 
  • 0
    рабочий - обновится с рабочим конфигом.
Теги:
logging
configuration
log4j2
disruptor-pattern

1 ответ

1
Лучший ответ

В beta9 приложение <FastFile> было переименовано в <RandomAccessFile>. Если вы переименуете этот элемент в своей конфигурации, он должен работать.

  • 0
    да, я тоже это заметил. Спасибо

Ещё вопросы

Сообщество Overcoder
Наверх
Меню