코딜기

[Prometheus] 데이터 수집 방식 본문

Data Engineering/Prometheus

[Prometheus] 데이터 수집 방식

코딜기 2024. 5. 7. 17:45
반응형

로그 데이터 수집 방식

1. 파일 수집 방식

  • 어플리케이션에서는 로그를 파일로 남기기만 하고, 로그 수집기는 파일을 수집해서 전송만 하는 방식입니다.
  • 장점
    • 어플리케이션과 로그 수집기가 관심사의 분리(SoC)가 되기 때문에 유연성이 높아집니다.
    • 컨테이너 환경을 이용해서 어플리케이션 수집기의 리소스를 분리하면 수집기는 어플리케이션에 부하를 주지 않습니다.
  • 단점
    •  어플리케이션과 로그 수집기를 별도로 관리해야 합니다.

2. Network Push 방식

  • 어플리케이션에서 TCP, HTTP 등의 프로토콜을 이용해서 직접 전송하는 방식입니다.
  • 장점
    • 로그 전송의 성공과 실패 여부를 어플리케이션에서 판단할 수 있습니다.
  • 단점
    •  어플리케이션의 로직과 로그 전송을 같은 프로세스에서 수행하기 때문에 서로 영향을 미칠 수 있습니다.
    • 로그 전송때문에 어플리케이션의 부하나 병목이 발생할 수 있습니다.
    • 문제를 디버깅하기 복잡해집니다.

3. Network Polling 방식

  • 어플리케이션이 시스템의 정보와 로그를 수집할 수 있는 채널을 열어두면, 로그 수집기가 주기적으로 Polling하여 수집하는 방식입니다.
  • 로그 수집보다는 메트릭 수집에 더 적합한 방식입니다.
  • 장점
    • 어플리케이션과 메트릭 수집에 대한 관심사의 분리(SoC)가 이루어집니다.
    • 어플리케이션 개발자가 수집에 대한 관리를 할 필요가 없습니다.
    • 분산 환경, 컨테이너 환경, 자동화된 인프라 환경에서 사용성이 편하고 확장성이 높습니다.
  • 단점
    • Polling 주기나 수집 시점에 따라 값이 바뀌므로 측정 순간의 정확한 정보를 얻는데는 적합하지 않습니다.

반응형
Comments