ㅡ.ㅡ

[Monitoring] JVM Exporter(Micrometer) 본문

Observabillity

[Monitoring] JVM Exporter(Micrometer)

ekwkqk12 2022. 1. 20. 09:04

APP/Build.gradle

actuator와 micrometer Prometheus 메트릭 의존성 추가

dependencies {
  implementation 'org.springframework.boot:spring-boot-starter-actuator'
  implementation 'io.micrometer:micrometer-registry-prometheus'
}

APP/Application.yaml

Promethues에 추가될 앱 이름과 메트릭에 포함될 정보들 포함

spring:
  application:
    name: 앱이름

management:
  metrics:
    tags:
      application: ${spring.application.name}
  endpoints:
    web:
      exposure:
        include: health, metrics, prometheus

APP/Service

Prometheus 수집관련 Annotations 추가

(없어도 메트릭 수집에 문제없는듯) > Istio 503 에러로 제거

apiVersion: v1
kind: Service
metadata:
  name: springboot-svc-clusterip
  labels:
      app: {{ .Values.app_name }}-svc
  #nnotations:
    #prometheus.io/scrape: "true"
    #prometheus.io/path: "/actuator/prometheus"
    #prometheus.io/port: "7070"
spec:
  ports:
  - port: 7070
    name: app
    targetPort: {{ .Values.service.port }}
  selector:
    app: {{ .Values.app_name }}
  type: ClusterIP

Prom-Stak/Service-Monitor

매칭된 라벨(서비스)을 통해 데이터를 수집할 서비스(APP/service)에 포트 및 메트릭 노출 경로 지정

apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  name: spring-service-monitor
spec:
  selector:
    matchLabels:
      app: {{ .Values.app_name }}-svc
  endpoints:
  - port: app
    path: "/actuator/prometheus"

Prometheus&Grafana

생각보다 많은 정보가 나오는데...... 먼진 잘모르겠다..ㅎㅎ

공부해야지.....................

Grafana Dashboard(https://grafana.com/grafana/dashboards/4701)

'Observabillity' 카테고리의 다른 글

[K8S] Opentelemetry  (0) 2023.12.20
[Tracing] Grafana Tempo  (0) 2023.12.20
[Monitoring] Prometheus-Stack  (0) 2021.10.31
[Logging] APP Logging/Fluentd&Fluentbit  (0) 2021.10.17
[K8S] Kubernetes Dashboard  (0) 2021.01.30