Dropwizard Emitter
Dropwizard Emitter
이 확장을 사용하려면 확장 로드 목록에 dropwizard-emitter를 포함하세요.
출처: 문서
본문
소개 (Introduction)
이 확장은 Dropwizard 메트릭 라이브러리를 Druid와 통합해서, Dropwizard 사용자가 Druid를 자신의 모니터링 생태계에 쉽게 흡수할 수 있게 해줘요.
Druid 메트릭을 dropwizard 메트릭으로 축적하고, dropwizard가 지원하는 reporter를 통해 다양한 sink로 방출해요.
현재 지원되는 dropwizard 메트릭 타입은 counter, gauge, meter, timer, histogram이에요.
이 메트릭들은 Console 또는 JMX reporter로 방출할 수 있어요.
이 emitter를 사용하려면 다음을 설정하세요:
druid.emitter=dropwizard
설정 (Configuration)
Dropwizard emitter의 모든 구성 파라미터는 druid.emitter.dropwizard 아래에 있어요.
| property | description | required? | default |
|---|---|---|---|
druid.emitter.dropwizard.reporters |
사용할 dropwizard reporter 목록 | yes | none |
druid.emitter.dropwizard.prefix |
메트릭 이름에 사용할 선택적 접두사 | no | none |
druid.emitter.dropwizard.includeHost |
host와 port를 메트릭 이름의 일부로 포함할지 여부 | no | yes |
druid.emitter.dropwizard.dimensionMapPath |
모든 Druid 메트릭에 대한 dropwizard 메트릭 타입과 원하는 dimension을 정의하는 JSON 파일 경로 | no | 기본 매핑 제공. 아래 참고. |
druid.emitter.dropwizard.alertEmitters |
alert가 전달될 emitter 목록 | no | 빈 목록 (forwarding 없음) |
druid.emitter.dropwizard.maxMetricsRegistrySize |
언제든 캐시될 메트릭 registry의 최대 크기 | no | 100 Mb |
Druid에서 Dropwizard 이벤트로의 변환
Dropwizard로 방출되는 각 메트릭은 [timer, counter, guage, meter, histogram] 중 하나의 타입을 지정해야 해요. Dropwizard Emitter는 이 매핑이 JSON 파일로 제공되기를 기대해요. 또한 이 매핑은 각 메트릭에 어떤 dimension을 포함할지 지정해요.
사용자가 직접 JSON 파일을 지정하지 않으면 기본 매핑이 사용돼요.
모든 메트릭이 매핑되기를 기대해요. 매핑되지 않은 메트릭은 무시돼요.
Dropwizard 메트릭 경로는 다음 스키마로 구성돼요:
<druid metric name> : { "dimensions" : <dimension list>, "type" : <Dropwizard metric type>, "timeUnit" : <For timers, timeunit in which metric is emitted>}
예:
"query/time" : { "dimensions" : ["dataSource", "type"], "type" : "timer", "timeUnit": "MILLISECONDS"},
"segment/scan/pending" : { "dimensions" : [], "type" : "gauge"}
대부분의 사용 사례에서 기본 매핑으로 충분해요.
지원되는 Dropwizard reporter
JMX Reporter
JMX를 통해 druid 메트릭을 보고하는 데 사용돼요.
druid.emitter.dropwizard.reporters=[{"type":"jmx"}]
Console Reporter
Druid 메트릭을 콘솔 로그에 출력하는 데 사용돼요.
druid.emitter.dropwizard.reporters=[{"type":"console","emitIntervalInSecs":30"}]
기본 메트릭 매핑
최신 기본 메트릭 매핑은 여기에서 찾을 수 있어요.
더 알아보기 (Learn more)
- Loading extensions — 이 확장을 로드 목록에 포함하는 방법을 알아봐요.
- Dropwizard metrics — Dropwizard 메트릭 라이브러리에 대해 배워요.