마이크로미터 소개

존스노우·2023년 10월 14일
0

  • 큰 회사는 배포랑 운영을 따로 하는 곳도있는대
  • 보통 배포 운영을 같이함

  • jmx 포멧에 맞추어 측정하고 전달해야 된다.

  • 프로메테우스로 바꾸면?
  • 마이크로미터라는 라이브러리로 해결 ? 추상화 한것인가

  • 표준 측정 방식을 제공 함

  • 개발자는 마이크로미터 표준 측정방식 하나만 알고 있으면 된다.
  • 파사드? 중간에서 뭔가 해결한다.
  • slf4j 떠올려 ?

  • 지원하는 종류들

https://micrometer.io/docs

매트릭 확인하기

  • 내가 직접 지표 수집?

  • 여기 들어가면

다양한 것들이 있다

  • 힙과 / 힙메모리가 아닌걸 짤라서 볼수 있따
  • 이걸 테그 필터!

  • 이런식으로

  • 초단위로 카운트 7개 이런식으로 나와있따
  • 최대 많이 걸린 시간등도 나타낸다.

  • 위에 문버처럼 짤라서 볼 수도 있다.

다양한 메트릭

  • 이런 다양한 종류들..

  • 애플리케이션 시작 매트릭 켰는대 얼마나 걸렸다.

  • 실무에서 아직본적없지만 그래도 필요할 대가 있지않을까
  • Mvc 매트릭

  • 아까 들어간 Http request 쪽 이다.
  • 흐음

  • 이런식으로 포스트 경로들이 많은대 ??
  • MAX 어떤 요청이 가장 시간이 맣ㄴ이걸렷네

이런 부분들

  • 톰캣 메트릭은 추천!

  • 유용한 매트릭들
  • 맥스 갯수를 초과하면? 큰일나겟지

  • 주문수가 줄어든다? 날씨가 비가오거나 눈이 오면
  • 우리가 보지못하는 다른걸 볼수 있음
  • 특정 지역에 주문수가 줄어든다? 그 지역에 사고가 났다. 시스템은 문제가 없는데.
  • 이런 특정한 경우도 확인가능
  • 매트릭 자체가 누락이 됬는데? 모니터링 부족한 부분을 크게크게 잡을 수 있따.

프로메테우스 그라파나

  • 프로메테우스? 이력 저장

  • 그라파나 프로메테우스를 시각화 편리하게

  • 액츄에이터 ++ 마이크로미터 -> 프로메테우스 구현체 -> 프로메테우스 수집
  • 최종적으로 그라파나로 조회

프로메테우스 설치

  • 실행 안된줄 알고 삽질을..

프로메테우스 설정

  • 양쪽의 설정이 필요

  • 설정 추가

  • 프로메테우스 생성

  • 너무많아서 생략..
  • 포맷이.. 프로메테우스 포맷이란다

  • 포맷 차이를 알아보자
  • 매트릭에서 사용한 포맷과 프로메테우스 포맷의 차이가 있다.
  • localhost/log 들어갈시

  • 카운트가 4개씩 늘어난다.

  • 프로메테우스 _total 이런식으로 총합을 씀

  • 프로메테우스는 세분화가 엄청되있다

프로메테우스 - 수집 설정

  • 추가!
  • 수집 주기는 1분 ~15초함 (권장 성능때문에) 예제여서 빠르게확인하기위한 1초
  • 타겟서버 주소,,

  • 프로메테우스 설정추가되잇음

  • 자기자신과 타겟서버수집중

  • 데이터 끌고오기

프로메테우스 - 기본 기능

  • 태그/레이블이 필드 명이고 숫자가 메트릭값

  • 그래프로가면 그래프 표시도해주고
  • 1초마사 수집이라 계속올라간다

  • log url요청해서 그래프가 올라간다

  • 검색기능은 중요한거 같다

  • 요런식

  • 이런것들이 있다 정말 다양하군

프로메테우스 게이지와 카운터

  • 게이지는 시스템 쪽? 하드웨어
  • 카운터는 어플리케이션쪽 값

  • 게이지 . 작업표시줄에 나온거 같은데

  • 전작에 보여줫던 log 나 요청부분들..

  • 그러나 증가만 하는 그래프에서는 특정 시간에 얼마나 고객의 요청이 들어왔는지 한눈에 확인하기 매우 어렵다. 이런 문제를 해결하기 위해 increase() , rate() 같은 함수를 지원함


  • 그래프 확인이너무 어렵다 특정 시간에 얼마나 왔는지 알기윟해
  • 위에 명령어를 씀
  • 실제로해보니 예시처럼 그래프가안나온다 하지만 중요한 명령어라
  • 기억해 두면 좋을거 같다
  • 특정 시간동안 고객의 요청이 얼마나 증가했는지 확인할 수 있다
  • 무한히 증가한 그래프에서 특정 순간에 얼마나 증가했는지 알 수 있따

  • 실제 사용해보니 인크리스랑 차트 모양은 비슷하지만 세로 숫자가 달라진다
  • 너무 복잡하게 생각하기 보다는 초당 얼마나 증가하는지 나타내는 지표로 보면 된다.
  • 둘 중의 하나를 쓰면 된다.

  • 급격하게 증가하는걸 보고 싶을땐 Irate? 복잡하다
  • 이때는 순간적으로 많이증가했다!

그나파나 설치

  • admin/admin

그라파나 - 연동

  • save 버튼 누르기

그라파나 - 대시보드 만들기

  • 애플리케이션 실행
  • 프로메테우스 실행
  • 그라파나 실행
  • 3가지 꼭해주기

  • 대쉬보드 추가하고 들어가기

  • 들어가서 add visulize 어쩌고 클릭하면됨 (강의에선 패널)

  • 프로메테우스 쿼리를 넣어주면 동작함

  • 이런식으로 옵션주기

  • disk 화면

그라파나 - 공유 대시보드 활용

  • 다운

  • 완성.. 대박인듯

  • 열개가넘으면? 장애!

  • 이런식으로 하나 들어가서 변경 이나 어떻게 구현됬는지 볼 수 있다


  • 여기에 나온걸 썻구나

  • 톰캣 현재 스레드
  • 실제 동작 스레드

  • 변경해야되는대 어디 버튼이안보여서 실패 ㅠㅠ
  • 이런식으로 변경
  • 저장하니까 되네

  • 새로운 데쉬보드 이것도 괜찬은듯

그라파나 - 메트릭을 통한 문제 확인

  • 부하를 주는 테스트를해서 실제로 한번 확인을 해보자

  • 부하를 주는코드

  • 로드 되지 않는다.

  • Cpu 사용량이 늘어난다

  • 이런식으로 여러군대 부하를 주면
  • 늘어난다.

  • jvm 부하테스트
  • 여러번 호출하면 ?

  • 메모리를 다써버림.. 중간에 끊어진 곳

  • 장애가 나버린다.

  • Jdbc 커넥션 테스트

  • 여러번 요청하면 펜딩이 뜬다 대기를 한단말이다

  • 30초이상 연결안되면 에러

  • 에러 로그를 찍어보자

  • 에러로그의 노출 빈도가 커졌다
profile
어제의 나보다 한걸음 더

0개의 댓글