Как filebeats вызывается при использовании logstash в этом весеннем загрузочном приложении java? - PullRequest
0 голосов
/ 11 апреля 2019

Я успешно отправляю логи из моего журнала приложений, я начал с этого урока http://www.andrew -programming.com / 2018/09/18 / integrate-springboot-application-with-elk-and-filebeat / затем легко внедрил мой код в мои собственные приложения.

У меня вопрос, который я не упомянул нигде в моем приложении, как оно используется?

Все естьработает, но любопытно узнать, откуда взялись filebeats, через зависимость logstash в файле pom?

logback-spring.xml

<!DOCTYPE configuration>
<configuration>
  <appender name="LOGSTASH" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
    <destination>localhost:4560</destination>
    <encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder">
    </encoder>
  </appender>

  <include resource="org/springframework/boot/logging/logback/base.xml"/>

  <root level="INFO">
    <appender-ref ref="LOGSTASH" />
    <!--<appender-ref ref="CONSOLE" />-->
  </root>

</configuration>

application.properties

logging.file=/tmp/filebeatDemoApp.log

pom зависимость

        <dependency>
            <groupId>net.logstash.logback</groupId>
            <artifactId>logstash-logback-encoder</artifactId>
            <version>5.1</version>
        </dependency>

logstash.conf

input {
  tcp {
  port => 4560
  codec => json_lines
  }
  beats {
    host => "127.0.0.1"
    port => "5044"
  }
}
output{
  stdout { codec => rubydebug }
  elasticsearch {
  hosts => ["localhost:9200"]
  index => "app-%{+YYYY.MM.dd}"   
  document_type => "%{[@metadata][type]}"
  }
}

1 Ответ

1 голос
/ 12 апреля 2019

Вы не используете Filebeat. С <destination>localhost:4560</destination> вы отправляете напрямую в Logstash. Это хорошо, потому что вам не нужно заботиться о файлах журналов, их разборе или заполнении диска. Недостатком является то, что вы не будете получать никаких сообщений, если сеть не работает, и Logback будет буферизовать только 200 МБ журналов из того, что я помню, так что вы можете потерять журналы при длительных сбоях.

PS: при использовании этой конфигурации вы можете удалить блок beats { из logstash.conf, поскольку вы его не используете (и Filebeat тоже).

...