카테고리: Logstash

Filebeat to Logstash에서 임의의 index name 사용하기

 

기본 설정으로 logstash output을 Elasticsearch로 보내면 인덱싱을 위한 접두사로 ‘logstash-‘가 붙게 된다.

이 index name을 원하는 이름으로 바꾸기 위해서, 다음과 같은 방법을 적용할 수 있다.

 

1. logstash 출력 옵션에서 @metadata를 참조하기

기본적으로 @metadata는 다음과 같은 구조를 가진다.

“beat” 필드의 값은 index 필드로 설정할 수 있고, 기본값은’ filebeat’이다.
“type” 필드의 값은 현재 사용되지 않으며, ‘doc’로 고정되어 있다.

즉, index 필드의 값을 변경하는 것으로 logstash에서 [‘@metadata’][‘beat’]를 적용하여 동적으로 인덱스 이름을 적용할 수 있다.

 

즉, 다음과 같은 설정을 적용할 수 있다.

 

2. filebeat에서 field를 설정한 뒤 logstash pipeline를 설정하기

prospector에 따라 다른 종류의 로그를 수집할 수 있으므로, 사용자 정의가 가능한 fields 필드를 사용한다.

 

 

이것으로 한 호스트에서 다양한 정보를 수집할 때, prospector별로 다른 index name을 줄 수 있을 것이다.