Logstash로 Kinesis Data Streams를 연결하고 나서, 추가적으로 Data Streams 하나를 더 생성해서 연결하려고 하는데
계속 제대로 연결되지 않았다. 🤔
왜일까... 하고 찾아봤는데,
Logstash Kinesis input plugin (Kinesis Data Streams만 지원한다. Kinesis Firehose Delivery streams는 지원되지 않으니 주의! 대신 Kinesis Firehose Delivery Streams 의 목적지를 S3으로 하면 Logstash S3 input을 사용해서 S3에서 데이터를 받아오고 바로 지울 수 있다.) 은 Dynamodb를 사용하는데, 이 Dynamodb는 기본적으로 'logstash'라는 이름으로 생성되고, 로그스태시 플러그인에서는 이 이름의 테이블을 찾는다.
따라서 2개 이상의 Kinesis Data Streams를 Logstash input으로 받아오려면,
input {
kinesis {
kinesis_stream_name => "kinesis"
codec => "json"
region => "ap-northeast-2"
application_name => "logstash1"
}
kinesis {
kinesis_stream_name => "kinesis-test"
codec => "json"
region => "ap-northeast-2"
application_name => "logstash2"
}
}
application_name 옵션에 각각 고유한 값을 줘야 한다. (첫 번째 kinesis input의 값은 기재하지 않고 그냥 logstah로 두어도 무방하다. )
이렇게 옵션을 주니 그제야! Logstash에서 데이터를 잘 받아와서 output으로 보내주었다.
'인프라,데이터 > Elasticsearch, Logstash, Kibana' 카테고리의 다른 글
Metricbeat로 Logstash 모니터링하기 (0) | 2023.02.03 |
---|---|
ELK란? + ELK 8.2.0 버전에 추가된 사항 (0) | 2022.05.15 |
Logstash 6.3.x 버전에서의 GC(Garbage Collector) (0) | 2022.03.10 |
Logstash file input시 파일 열고 수정하면 데이터 중복 집계되는 이유 (0) | 2022.02.25 |
Logstash는 로그를 왜 message라는 field로 저장할까? (0) | 2022.02.16 |