таймаут с kakfkaAppender в log4j? - PullRequest
       103

таймаут с kakfkaAppender в log4j?

0 голосов
/ 06 августа 2020

Когда я использую KafkaAppender log4j, у меня возникает проблема, когда я устанавливаю одного брокера, но он остановлен. Проблема в том, что KafkaAppender очень долго ждет, прежде чем выйти из строя. Я использую syncsend=false. Я хочу установить некоторый таймаут, чтобы приложение не ждало так долго.

Не могли бы вы сказать мне, как мне настроить KafkaAppender, чтобы предотвратить это ожидание?

1 Ответ

0 голосов
/ 08 августа 2020

На самом KafkaAppender нет настройки тайм-аута, но есть несколько вариантов тайм-аута, которые можно настроить на KafkaProducer. Параметры описаны в документации Kafka .

Здесь у вас есть пример конфигурации приложения kafka с двумя настройками тайм-аута производителя kafka с их значениями по умолчанию:

 <Appenders>
    <Kafka name="Kafka" topic="log-test">
      <PatternLayout pattern="%date %message"/>
      <Property name="bootstrap.servers">localhost:9092</Property>
      <Property name="request.timeout.ms">30000</Property><!-- 30 seconds -->
      <Property name="transaction.timeout.ms">60000</Property><!-- 1 minute -->
    </Kafka>
  </Appenders>

Вы можете хотите поиграть с ними, чтобы получить ожидаемое поведение.

Также помните, что опция syncSend была добавлена ​​в версию log4j 2.8. Если вы используете старую версию, это не повлияет.

...