로그 모니터링 서비스를 만들 때까지 Docker에서 Elastic Stack을 실행합니다. - 프리젠테이션
사소한 일은 그만두고, 어쨌든 한번 움직여 보고 싶다!이런 사람을 향해.
완성품이 준비되어 있기 때문에 그것을 돌려보려는 시위 행진을 해야 한다.
할 수 있는 일
이 투고는 어떻게 시리즈화된 시리즈 보도의 번외편을 만들었는가!
다른 기사도 가능하면 꼭 보세요.
Elastic search 편: Docker에서 Elasticsearch를 시작하고 실제 가동 시험
키바나 편: Docker에서 Kibana를 시작하여 데이터를 시각화
Filebeat 편: Filebeat를 이용하여 Kibana로 로그 파일을 표시
스프링 부트 편: 로컬에서 간단한 Spring 웹 응용 프로그램을 실행하고 로그를 작성하여 키바나를 통해 시각화
절차.
1. 설치
그럼 이 프로젝트를 바로 다운로드할게요.
먼저terminal로 가서 아래처럼 프로젝트를 복제하세요.
그런 다음 루트 디렉토리로 이동하여 docker-compose로 Elastic Stack을 시작합니다.
git clone https://github.com/sgr0416st/elastic-docker-demo.git
cd elastic-docker-demo
docker-compose up --build
2. Spring Boot 응용 프로그램 시작다음은 프로젝트에logging-demo라는 하위 항목이 존재해야 하기 때문에 당신이 좋아하는 IDE로 이것을 열어 보세요.(마벤트 명령을 직접 build Jar로 실행하는 방법도 사용할 수 있습니다.)
이것은 maven이 관리하는 Spring Boot 응용 프로그램입니다. http://localhost:8080 에 접근하면
yyyy-MM-ddThh:mm:ss.SSS: return response
형식으로 현재 시각의 로그를 logs/logging-demo합니다.로그로 출력하고 Hello, World 문자열로 되돌아오는 간단한 단점이 있습니다.지금 시작하면logs/폴더 내logging-demo입니다.log 이 파일이 잘 생성되었는지 확인하고 계속 진행하십시오.
3. 실행 여부 확인
이후 filebeat가 로그를 읽고 데이터를 Elasticsearch에 보낼 수 있는지 확인하기 위해 filebeat에서 만든 색인 모드의 로그가 있는지 확인하는 요청을 보냅니다.
새 터미널에서 다음 명령을 입력하고 실행하십시오.
curl -XGET "http://localhost:9200/filebeat-*/_search" -H 'Content-Type: application/json' -d'
{
"query": {
"match_all": { }
},
"sort": [
{
"@timestamp": "desc"
}
]
}'
다음과 같은 반응을 얻을 수 있다면 성공할 것이다.{
"took" : 4,
"timed_out" : false,
"_shards" : {
"total" : 1,
"successful" : 1,
"skipped" : 0,
"failed" : 0
},
"hits" : {
"total" : {
"value" : 4,
"relation" : "eq"
},
...
4. Kibana에 로그 데이터 표시다음은 Kibana에 index pattern을 수동으로 등록하는 것은 처음이기 때문에 Kibana(http://localhost:5601)를 방문하여 홈페이지 왼쪽 상단의 아이콘에서 Stack Management > Index Pattern으로 가서Create Index Pattern을 선택하십시오.
다음에 "sel"표시줄에서 filebeat-*를 선택한 다음 계속하십시오.
그리고timefield 표시줄 아래 선택@timestamp에서 index pattern을 만듭니다.
이렇게 하면 무난하게 준비되므로 메뉴에서 Analytics Discover로 이동하십시오.
왼쪽 드롭다운 메뉴에서 만든 index pattern이 선택되었는지 확인합니다.
이후 파일 비트를 실행하는 날의 0:00 ~ 다음날의 0:00으로 검색 범위를 설정하고 검색합니다.
이왕 이렇게 된 이상 검색창에 넣어서refresh를 보세요.
이 키워드와 일치하는 일지는 아직 찾지 못했을 것이다.
마지막으로 방문해 보세요http://localhost:8080.
그리고 응용 프로그램 측에서
yyyy-MM-ddThh:mm:ss.SSS: return response
라는 형식의 로그를 생성하는데 이것은 키바나에 반영될 것이다.30초가량 기다렸다가 키바나를 다시 열고 refresh 버튼을 누른다.(기본적으로 filebeat에서 로그를 읽는 시간은 30초 간격)이렇게 검색 결과를 바꿔서 새로운 로그를 얻을 수 있는 여러분, 축하합니다!!
이렇게 하면 Docker에서 Elastic Stack을 이동하여 Spring Boot 응용 프로그램의 로그를 감시하는 방법을 체험할 수 있다.
처음부터 하고 싶다면 이 시리즈의 다른 기사를 꼭 보세요!
마지막으로 컨테이너를 깨끗이 치워라.
docker-compose down -v --rmi local
프로젝트 URL 완료
Reference
이 문제에 관하여(로그 모니터링 서비스를 만들 때까지 Docker에서 Elastic Stack을 실행합니다. - 프리젠테이션), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/sgr0416st/items/6409fb84f5463cd2112a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)