[SPRING] 스프링 부트 로그를 어떻게 탄력성에 직접 섭취합니까?
SPRING스프링 부트 로그를 어떻게 탄력성에 직접 섭취합니까?
스프링 부트 애플리케이션 로그를 탄력적 인 검색으로 직접 전송하는 가능성을 조사하고 있습니다. 파일이나 로그를 사용하지 않고. Ingest 플러그인이 도움이 될 것 같습니다.
나의 초기 생각은 TCP를 통해 logback을 사용하여 이것을하는 것이다.
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="stash" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
<destination>127.0.0.1:4560</destination>
<encoder class="net.logstash.logback.encoder.LogstashEncoder" />
</appender>
<root level="DEBUG">
<appender-ref ref="stash" />
</root>
</configuration>
위의 내용을 보시면 로그를 logstash에 직접 보낼 수 있습니다. 임 그냥 최신 기능을 사용하여 가능하고 logstash를 사용하여 건너 뛸 수 있는지 궁금해? ingest 메소드를 사용하여 네트워크를 통해 json으로 인코딩 된 로그를 직접 탄성으로 보내면?
내 질문
이것이 가능한지 궁금하네요? 그렇다면 어떻게 할 것인지 설명 할 수 있습니다. 또한 무엇이 함정이 될 수 있는지 등등.
해결법
-
==============================
1.방금 제안을 시도했지만 완벽하게 해결되었습니다.
방금 제안을 시도했지만 완벽하게 해결되었습니다.
먼저 POM에 다음과 같은 종속성을 추가하십시오.
<dependency> <groupId>org.logback-extensions</groupId> <artifactId>logback-ext-loggly</artifactId> <version>0.1.2</version> </dependency>
그런 다음 logback.xml 구성에서 다음과 같이 appender와 logger를 추가하십시오.
<appender name="ES" class="ch.qos.logback.ext.loggly.LogglyAppender"> <endpointUrl>http://localhost:9200/tests/test?pipeline=logback</endpointUrl> <pattern>%m</pattern> </appender> <logger name="es" level="INFO" additivity="false"> <appender-ref ref="ES"/> </logger>
다음과 같이 인제 스트 파이프 라인을 정의해야합니다.
PUT _ingest/pipeline/logback { "description": "logback pipeline", "processors": [ { "set" : { "field": "source", "value": "logback" } } ] }
그런 다음 코드에서 해당 로거를 사용하여 보유한 데이터를 ES에 보낼 수 있습니다
private Logger esLogger = LoggerFactory.getLogger("es"); ... esLogger.info("{\"message\": \"Hello World from Logback!\"}");
그리고이 문서는 ES에서 끝납니다 :
{ "_index": "tests", "_type": "test", "_id": "AV3Psj5MF_PW7ho1yJhQ", "_score": 1, "_source": { "source": "logback", "message": "Hello World from Logback!", } }
-
==============================
2.이전에 같은 질문을했습니다. Logback과 Elasticsearch를 직접 통합했습니다.
이전에 같은 질문을했습니다. Logback과 Elasticsearch를 직접 통합했습니다.
https://github.com/internetitem/logback-elasticsearch-appender를 방문하십시오.
업데이트 2017 년 10 월에 ES v6.x의 주요 문제점을 보완 한 logback-elasticsearch-appender 개발
from https://stackoverflow.com/questions/45615040/how-do-you-ingest-spring-boot-logs-directly-into-elastic by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 어떻게 사용자 정의 WebApplicationInitializer를 사용하여 테스트를 실행합니까? (0) | 2019.07.17 |
---|---|
[SPRING] Java Spring 특정 Bean 재 작성 (0) | 2019.07.17 |
[SPRING] 봄 AOP + Aspectj를 통한 예외 처리 (0) | 2019.07.16 |
[SPRING] 봄 부팅, 최대 절전 모드 검색 속성 (0) | 2019.07.16 |
[SPRING] jUnit 테스트에서 Spring @Service 객체에 액세스하는 방법 (0) | 2019.07.16 |