[ELK] tomcat 로그 모니터링 툴 작업기 -1

HI·2024년 5월 9일
0

ELK 작업

목록 보기
2/4

ELK를 사용해 웹서버의 tomcat로그를 가져오는 방법 정리
elasticsearch는 띄워져있다고 생각하고 logstash,filebeat 설치 방법을 정리함.

구성

Filebeat설치는 읽어올 로그가 있는 서버에 각각 설치해준다
서버가 3대면 각 서버에 Filebeat설치해야함
logstash,elasticsearch는 맘에드는 서버에 설치하면 되고 A라는 서버에 함께 설치했다.

1. logstash 설치하기

1) logstash 압출 파일을 서버에 가져와 tar -xvf logstash로 압축 해제

2) 실행할 conf 파일 생성

$touch /사용자지정경로/logstash.conf
$vi logstash.conf

input {
   beats {
       port => "5044" 
   }
}
filter {
  grok {
     match => {"message" => "%{COMBINEDAPACHELOG"}
  }
}
output {
  stdout {
     codec => rubydebug
  }
  elasticsearch {
      hosts => ["host:9200"]
      index => "test-logstash-%{+YYYY.MM.dd}"     
  }
}

logstash 는 1) input 2) filter 3) output 크게 3가지 구조가 있다.

  • input : logstash로 로그를 전송받는 포트
  • filter : 로그를 패턴으로 캡쳐해 필드생성등 데이터 변경
  • output : 내보낼 경로,elasticsearch지정/색인명 지정 등

3) logstash 실행하기

$/~bin/logstash -f /사용자지정경로/logstash.conf

위의 방법으로 실행시 기본위치에 data폴더로 쓰여짐
! 데이터 폴더 지정하여 실행 방법
$/~bin/logstash -f /사용자지정경로/logstash.conf --path.data /사용자지정경로/my_data/
이렇게 하면 data폴더가 아닌 my_data폴더를 사용하게 되어 여러 logstash를 띄울 수 있다.(단, 각 conf파일은 다른 port사용해야함)

2. Filebeat 설치하기

마찬가지로 filebeat.tar 파일을 가져와 tar -xvf filebeat 압축해제

1) filebeat.yml 파일 수정

$vi filebeat.yml

filebeat.inputs:
- type: log
 enabled: true
 paths:
   - /dir/tomcat
 fields:
   log_type: "catalina"
   project: "my_project"
   
output.logstash:
 # The Logstash hosts
 hosts: ["logstash_install_host:5044"]

위의 부분 제외 모두 주석 처리한다.

2) filebeat 실행

$ ./filebeat -e

3. elasticsearch 색인 생성 확인

logstash를 실행하고 filebeat로 로그를 보낸다면 이제 elasticsearch의 kibana로 가면 색인이 생성된 것을 확인 할 수 있다.

profile
https://github.com/gaeunban

0개의 댓글