실습 내용
로그 수집 아키텍처
: Backend -> File -> Logstash -> Elasticsearch -> Kibana
실습 순서
1) 도커 설정 (docker-compose.yml
)
: Application Log File에서 로그를 가져와서 Elasticsearch에 저장
: 실시간 데이터 처리를 위한 로그 파이프라인 구축
: 도커 설정 후 docker-compose up
: 도커 설정 시 주의사항!!
-> logstash volume 설정 (호스트 머신 - 컨테이너 연결)
volumes:
- type: bind
source: "./logs"
target: /var/log/app
read_only: true
2) Logstash 설정 (logstash.conf
)
: 파일에서 로그를 읽어오는 입력 플러그인 file
사용
: 출력 플러그인은 elasticsearch
사용
3) 애플리케이션 구현 (파이썬의 Flask
사용)
4) Elasticsearch, Logstash, Kibana
실행
: docker-compose up
5) logs 디렉토리 생성 (로그 기록되는 위치)
6) 애플리케이션 실행 (파이썬의 Flask
서버)
pip3 install flask
python3 app.py
7) 로그 발생 테스트
curl -X GET "http://127.0.0.1:5100/"
curl -X GET "http://127.0.0.1:5100/error"
curl -X GET "http://127.0.0.1:5100/user/123"
8) Kibana에서 로그 분석
: Kibana 접속 (http://localhost:5601
)
: 인덱스 패턴 생성
: Discover 탭에서 로그 확인
추천해주신 책