개발 slecs

Prometheus 수집 차단 방지를 위한 봇 필터 경로 설정 개선

목차

BotBlockFilter에서 /actuator 경로 제외 (Prometheus 수집 차단 해결)

2026-04-03에 관찰 가능성 스택에 기능을 추가하거나 설정을 개선했음.

운영 중 서버 상태를 실시간으로 확인하려면 메트릭 수집 구조가 안정적이어야 함. Spring Boot Actuator에서 /actuator/prometheus 엔드포인트로 메트릭을 노출하고, Prometheus가 주기적으로 긁어가는 구조로 돼 있음.

작업 내용

  • Prometheus 타겟 설정 추가 또는 수정
  • Grafana datasource 또는 대시보드 갱신
  • Zipkin/Tempo 연동 endpoint 조정
management:
  endpoints:
    web:
      exposure:
        include: health,prometheus
  metrics:
    export:
      prometheus:
        enabled: true

Actuator 엔드포인트는 외부에 노출되면 안 되니까 IP 필터로 허용 목록만 통과시키도록 별도 필터를 달아뒀음. 설정 파일에서 YAML 공백 파싱 문제로 한 번 막혔었는데, trim() 처리 추가하고 해결됐음.

작업 규모는 크지 않았지만 운영 안정성을 위한 필요한 변경이었음. 이런 작은 수정들이 쌓여서 전체 시스템의 신뢰도를 높임.

블랙리스트 자동 등록 구조

공격성 요청을 감지했을 때 수동 대응은 속도가 느림. DB에 자동 등록하고 다음 요청부터 즉시 차단하는 구조를 만들면 실시간 대응이 가능함.

자동 등록 시 주의할 점:
- 오탐 가능성: 로드 테스트나 배치 작업이 봇으로 오해받지 않도록 예외 처리
- 만료 설정: 영구 차단 대신 TTL을 설정해서 오탐 복구 가능하게
- 알림 연동: 자동 차단 발생 시 슬랙/디스코드 알림으로 모니터링

다음

댓글 0

첫 댓글 달아줘.