728x90
반응형

Fluentd에서 로그를 전송하는 부분을 수정한 이후로 잘 동작하고 있었지만

 

flush_interval을 5분으로 하여 실시간으로 로그를 볼 수가 없었다.

 

그리고 Fluentd 서버를 확인해 보니 로그 전송 버퍼가 많이 쌓여 있었다.

 

그래서 버퍼를 빠르게 비우고 로그도 최대한 실시간으로 볼 수 있도록

 

Fluentd의 설정 문서를 읽어보면서 여러 가지들을 적용해보았다.

 

우선은 버퍼 사이즈를 줄여보면서 쌓여있는 버퍼가 빠르게 전송되는지 확인해보았다.

 

처음에는 buffer_queue_limit를 32로 buffer_chunk_limit를 2m로

 

그 다음에는 buffer_queue_limit를 64, buffer_chunk_limit를 1m로

 

테스트해보았지만 두번 다 버퍼는 계속 쌓였다.

 

그래서 num_threads를 8로 적용해보니 버퍼가 빠르게 없어지는 것을 확인할 수 있었다.

 

그리고 flush_interval을 1s로 줄여도 버퍼가 많이 쌓이지 않았고 Kibana를 통해 로그를 보니

 

거의 실시간(30초 정도 지연)으로 처리되는 것을 확인할 수 있었다.

 

최종적으로 설정한 값은 다음과 같다.

buffer_queue_limit 64
buffer_chunk_limit 1m
flush_interval 1s
num_threads 8

 

참고 문헌

  1. https://docs.fluentd.org/v/0.12/output/kafka#buffer_queue_limit-buffer_chunk_limit

반응형

'Log' 카테고리의 다른 글

[Log] NoNodesAvailable 에러 해결  (0) 2020.02.27
[Log] Spark ElasticSearch Parquet  (0) 2020.01.25
[Log] Logstash Kafka 연동 에러 해결  (0) 2020.01.25
[Log] Logstash Pipeline 사용하기  (0) 2020.01.25
[Log] Fluentd Kafka Logstash 연동  (0) 2020.01.25

+ Recent posts