로그스태시(Logstash) 에서 JSON 코덱 플러그인(plugin)과 File 플러그인 사용하기
지난 시간에 이어서 오늘은 로그스태시(Logstash)에서 JSON 코덱 플러그인을 사용해 보고, 그 후 File 아웃풋 플러그인을 사용해서 입력 데이터를 파일로 출력해 보겠습니다.
관련 이전 게시물 :
- 로그스태시를 실행하고 JSON 형태의 데이터를 입력해 봅니다.
# JSON format 데이터인 {"name": "cookie", "level": 99}를 입력하고 message 부분에 어떻게 보이는지 확인
- 컨트롤 씨 (Ctrl + C)로 빠져나오시고 config 폴더에서 지난 번 만든 conf 파일을 엽니다. 그리고 input 부분 stdin 안에 codec => json 를 추가하고 저장합니다.
- 다시 로그스태시를 실행하고 위에 사용한 JSON 데이터를 입력해서 봅니다. 아까랑 힘의 차이가 느껴지시요? 같은 데이터를 입력했는데 결과가 다르죠?
![]() |
json 코덱 사용 후 |
![]() |
json 코덱 사용 전 |
- 한 번 지난 번 처럼 hello world를 입력해 볼까요? 엇! 에러가 나네요. JSON parse 에러. 코덱은 json인데 데이터는 json이 아니니깐요. 하지만! 일반 텍스트로 저장이 되고 jsonparsefailure란 태그가 달립니다. 메세지 부분 보시면 hello world가 그대로 저장돼있죠?
- 컨트롤씨로 나오세요. 그리고 configuration file 에서 file { path => "cookie.txt" } 를 추가하고 저장합니다. (저 원래 인덴테이션 잘 지켜요. 업무는 맥에서 하고, 윈도우에서 cmd랑 노트패드로 시연하려니 ㅠ.ㅠ )
# stdout 플러그인은 결과를 화면에 출력하고, file 플러그인은 결과를 디스크에 파일로 저장할 것입니다. 파일명은 cookie.txt 로 정하였고 경로는 상대 경로로 로그스태시 실행파일이 있는 bin 폴더에 저장됩니다. 다른 곳에 저장 원하시면 경로 수정 ㄱㄱ씽.
- 저장하셨으면 로그스태시 실행합니다. 지난 번 내용 잘 기억안나실까봐 친절하게 명령어 다시! logstash -f ..\config\logstash-cookie.conf (신기하게 cmd에서 \, / 둘 다 인식하네요. cmd엔 \ 가 다르게 표시됩니다.
- The End -
Comments
Post a Comment