728x90
🍰 open-api conf 파일 작성하기 (http_poller)
*filter의 경우 파일 형식이나 구성에 따라 다양하다보니, input과 output에 대한 설명을 하려고 한다.
https://www.elastic.co/guide/en/logstash/8.0/plugins-inputs-http_poller.html
0. http_poller 작성하기 전에 ~
먼저 logstash 파일 plugin으로 http_poller가 있는지 확인하는게 선행되어야한다.
# 경로이동하기
cd /usr/share/logstash/bin
# logstash-plugin 리스트 형식으로 확인하기
./logstash-plugin list
1. input { } 작성 부분
input {
# logstash http_poller 플러그인 사용하기
http_poller {
# url 넣어주기
urls => {
# 공공data url주소 써주기
url => "http://apis.data.go.kr/1262000/CountryCodeService2/getCountryCodeList2?serviceKey=0X6dT7vfdpT0pZF0xuciE08laxozfslcPkhQP0TYgqbM%2BG60s4yM7u8GRbBqJiKgC7%2F7C8GSvk5JTuIzRazbtg%3D%3D&numOfRows=237&numOfRows=237"
}
# request_timeout은 전체 요청에 대한 시간 초과(초)입니다. 기본값이 60초 (굳이 쓸 필요없었네;;)
request_timeout => 60
# schedule은 URL 형식에서 주기적으로 폴링하는 일정입니다.
schedule => { every => "5m"}
# codec은 입력 데이터에 사용되는 코덱입니다.
# 입력 코덱은 Logstash 파이프라인에 별도의 필터가 필요 없이, 입력에 들어가기 전에 데이터를 디코딩하는 편리한 방법입니다
codec => "json"
# metadata_target은 요청/응답 메타데이터로 작업하려는 경우, 이 값을 메타데이터의 중첩 해시를 저장하려는 필드의 이름으로 설정합니다.
metadata_target => "http_poller_metadata"
}
}
1) logstash의 input plugin란에 http_poller를 입력한다.
2) 그리고 원하는 input option을 입력해준다.
위에서 사용한 옵션에 대한 설명을 첨부하였다!
(이보다 많은 옵션은 역시나 공식 홈페이지 참고! https://www.elastic.co/guide/en/logstash/8.0/plugins-inputs-http_poller.html#plugins-inputs-http_poller-common-options)
2. output { } 작성 부분
output {
# api를 받은 logstash를 elasticsearch로 넣어줄 예정
elasticsearch {
# elasticsearch의 port번호인 9200 써준다.
hosts => ["http://localhost:9200"]
# index를 설정해준다.
index => "countrycode-%{+YYYY.MM.dd}"
}
}
다들 그럼 안-녕 !🖐️
728x90
'😆 Big Data > - ELK STACK' 카테고리의 다른 글
[ELK] ⚒️12장 리눅스 실습 환경구성 - (Ubuntu + VM VirtualBox) (0) | 2022.02.27 |
---|---|
[ELK] 『엘라스틱 스택 개발부터 운영까지』좋은 책 발견!!😳 (0) | 2022.02.26 |
[ELK] 🥁ELK stack에 공공데이터 (오픈 api) 넣기 (http_poller) (0) | 2022.02.05 |
[ELK] 🥁CentOS에서 packetbeat -> logstash 연결하기 (패킷비트&로그스태시) (0) | 2022.02.04 |
[ELK] 🥁CentOS에서 metricbeat -> logstash 연결하기 (메트릭비트&로그스태시) (1) | 2022.02.04 |