Monitoring OpenSearch Data Prepper with metrics
출처: 문서
본문
메트릭을 통한 OpenSearch Data Prepper 모니터링
OpenSearch Data Prepper를 Micrometer를 사용하여 메트릭으로 모니터링할 수 있어요. 두 가지 유형의 메트릭이 있어요: JVM/시스템 메트릭과 플러그인 메트릭이에요. Prometheus가 기본 메트릭 백엔드로 사용돼요.
JVM 및 시스템 메트릭
JVM 및 시스템 메트릭은 Data Prepper 인스턴스를 모니터링하는 데 사용되는 런타임 메트릭이에요. 클래스 로더, 메모리, 가비지 컬렉션, 스레드 등에 대한 메트릭이 포함돼요. 자세한 내용은 JVM 및 시스템 메트릭을 참조하세요.
명명 규칙
JVM 및 시스템 메트릭은 Micrometer에서 미리 정의된 이름을 따라요. 예를 들어, 메모리 사용량에 대한 Micrometer 메트릭 이름은 jvm.memory.used예요. Micrometer는 메트릭 시스템에 맞게 이름을 변경해요. 같은 예시로, jvm.memory.used는 Prometheus에 jvm_memory_used로 보고되고, Amazon CloudWatch에는 jvm.memory.used.value로 보고돼요.
제공
기본적으로 메트릭은 Data Prepper 서버의 /metrics/sys 엔드포인트에서 Prometheus 스크레이프 형식으로 제공돼요. Prometheus가 Data Prepper URL에서 스크레이프하도록 구성할 수 있어요. 그러면 Prometheus가 Data Prepper에서 메트릭을 폴링하여 데이터베이스에 저장해요. 데이터를 시각화하려면 Grafana처럼 Prometheus 메트릭을 수용하는 프론트엔드를 설정할 수 있어요. 엔드포인트를 필요로 하지 않거나 호스팅하지 않고 메트릭을 CloudWatch에 직접 게시하는 Amazon CloudWatch 같은 다른 레지스트리에 메트릭을 제공하도록 구성을 업데이트할 수도 있어요.
플러그인 메트릭
플러그인은 자체 메트릭을 보고해요. Data Prepper는 메트릭의 일관성을 위해 명명 규칙을 사용해요. 플러그인 메트릭은 차원을 사용하지 않아요.
AbstractBufferCounterrecordsWritten: 버퍼에 기록된 레코드 수recordsRead: 버퍼에서 읽은 레코드 수recordsProcessed: 버퍼에서 읽어 처리된 것으로 표시된 레코드 수writeTimeouts: 버퍼에서 쓰기 시간 초과 횟수
GaugefirrecordsInBuffer: 버퍼에 있는 레코드 수recordsInFlight: 버퍼에서 읽어 다운스트림 구성 요소(예: 프로세서 및 싱크)가 처리 중인 레코드 수
TimerreadTimeElapsed: 버퍼에서 읽는 동안 경과된 시간checkpointTimeElapsed: 체크포인트 동안 경과된 시간
AbstractProcessorCounterrecordsIn: 프로세서에 유입된 레코드 수recordsOut: 프로세서에서 유출된 레코드 수
TimertimeElapsed: 프로세서 초기화 동안 경과된 시간
AbstractSinkCounterrecordsIn: 싱크에 유입된 레코드 수
TimertimeElapsed: 싱크 실행 동안 경과된 시간
명명 규칙
메트릭은 PIPELINE_NAME_PLUGIN_NAME_METRIC_NAME의 명명 규칙을 따라요. 예를 들어, output-pipeline이라는 파이프라인에 있는 opensearch-sink 플러그인의 recordsIn 메트릭은 정규화된 이름이 output-pipeline_opensearch_sink_recordsIn이에요.
제공
기본적으로 메트릭은 Data Prepper 서버의 /metrics/sys 엔드포인트에서 Prometheus 스크레이프 형식으로 제공돼요. Prometheus가 Data Prepper URL에서 스크레이프하도록 구성할 수 있어요. Data Prepper 서버 포트의 기본값은 4900이며 수정할 수 있고, 이 포트는 Grafana처럼 Prometheus 메트릭을 수용하는 모든 프론트엔드에서 사용할 수 있어요. 엔드포인트를 필요로 하지 않거나 호스팅하지 않고 메트릭을 CloudWatch에 직접 게시하는 CloudWatch 같은 다른 레지스트리에 메트릭을 제공하도록 구성을 업데이트할 수도 있어요.