본문 바로가기
카테고리 없음

✅ Spring Boot Actuator와 Prometheus 연동을 통한 WebLogic 환경 내 실시간 메트릭 수집 체계 구축

by frontier12 2025. 5. 30.


1. 개요: WebLogic + Spring Boot 환경에서 Prometheus로 관측성 확보하기

WebLogic 서버 위에서 구동되는 Spring Boot 애플리케이션은 일반적인 내장 톰캣 기반 앱과 달리, 기본적인 메트릭 수집 방식이 제한적일 수 있습니다.
이를 해결하기 위해 Spring Boot의 Actuator와 Micrometer(Prometheus 연동기)를 통해 Prometheus-Friendly한 메트릭 엔드포인트를 노출할 수 있으며,
이를 WebLogic 네트워크 구조에 맞게 수집∙보안∙분리하는 방식으로 통합합니다.



2. 구성도

graph LR
  A[Spring Boot App on WebLogic]
  B[Actuator /actuator/prometheus]
  C[WebLogic Proxy or Firewall]
  D[Prometheus Server]
  E[Grafana]

  A --> B --> C --> D --> E




3. Micrometer 기반 Prometheus 연동 방법

① 의존성 추가 (Gradle 기준)

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

② application.yml 설정

management:
  endpoints:
    web:
      exposure:
        include: prometheus
  endpoint:
    prometheus:
      enabled: true
  metrics:
    export:
      prometheus:
        enabled: true

③ 결과 확인

/actuator/prometheus 경로에 접근하면 다음과 같은 Prometheus 형식의 응답이 나옵니다:

# HELP jvm_memory_used_bytes The amount of used memory
# TYPE jvm_memory_used_bytes gauge
jvm_memory_used_bytes{area="heap",id="Survivor Space",} 3.2E7




4. WebLogic 환경에서 보안적으로 구성하기

항목 설명
내부망 포트 전용 설정 management.server.port: 9001, localhost only
IP 기반 화이트리스트 WebLogic Proxy, Web Filter, Spring Security로 제한
Basic 인증 도입 actuator path에 인증 적용 (단 Prometheus가 인증 처리 가능해야 함)
Ingress 구성 시 /actuator/prometheus만 외부 노출 + CORS 제한 필수




5. Prometheus 설정 예시

scrape_configs:
  - job_name: 'weblogic-springboot-app'
    metrics_path: '/actuator/prometheus'
    static_configs:
      - targets: ['192.168.10.20:9001']




6. 확장 구성 방안

확장 요소 설명
Grafana 대시보드 JVM Memory, CPU, GC, DB ConnectionPool 등 시각화
Alertmanager 연동 GC Time, Heap Memory 등 임계치 초과 시 Slack 알림
Spring Boot + WebLogic MBean 연계 Actuator 외 WebLogic 자체 MBean도 Prometheus에 수집 (JMX Exporter)
Multi-tenant Metrics 분리 Application Tag 또는 Team Label별로 집계 분리 가능




✅ 결론
• /actuator/prometheus는 WebLogic 환경에서도 Prometheus 메트릭 수집을 위한 표준 포인트로 활용 가능
• 네트워크 보안·인증 설정이 반드시 필요하며, 다른 actuator 엔드포인트와의 경로 분리 및 최소 노출 원칙 적용이 중요
• Prometheus 수집기, Alertmanager, Grafana를 통해 WebLogic + Spring Boot 환경에서도 엔터프라이즈 수준의 모니터링 체계 구성 가능