Pulsar OpenTelemetry 메트릭

Pulsar OpenTelemetry 메트릭 (Pulsar OpenTelemetry Metrics)

Pulsar는 OpenTelemetry 표준에 맞춘 여러 메트릭을 노출해요. 이 메트릭을 수집하면 브로커와 Java 클라이언트의 상태를 표준 규격으로 모니터링할 수 있어요. 이번에는 브로커와 Java 클라이언트가 제공하는 OpenTelemetry 메트릭을 하나씩 살펴볼게요.

출처: 문서

본문

Pulsar는 다음 OpenTelemetry 메트릭을 노출해요.

Broker

연결 메트릭 (Connection Metrics)

pulsar.broker.connection.count

연결 수예요.

  • 유형: UpDownCounter
  • 단위: {connection}
  • 속성:
    • pulsar.connection.status - 연결 상태. 다음 중 하나:
      • active
      • open
      • close

pulsar.broker.connection.create.operation.count

연결 생성 작업 수예요.

  • 유형: UpDownCounter
  • 단위: {operation}
  • 속성:
    • pulsar.connection.create.operation.status - 생성 작업의 상태. 다음 중 하나:
      • success
      • failure

pulsar.broker.connection.rate_limit.count

연결이 요율 제한(rate limit)된 횟수예요.

  • 유형: Counter
  • 단위: {operation}
  • 속성:
    • pulsar.connection.rate_limit.operation.name - 수행된 요율 제한 작업의 이름. 다음 중 하나:
      • paused
      • resumed
      • throttled
      • unthrottled

토픽 메시징 메트릭 (Topic Messaging metrics)

pulsar.broker.topic.subscription.count

이 브로커가 제공하는 토픽의 Pulsar 구독 수예요.

  • 유형: UpDownCounter
  • 단위: {subscription}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.producer.count

이 브로커에 연결된 토픽의 활성 프로듀서 수예요.

  • 유형: UpDownCounter
  • 단위: {producer}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.consumer.count

이 브로커에 연결된 토픽의 활성 컨슈머 수예요.

  • 유형: UpDownCounter
  • 단위: {consumer}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.message.incoming.count

이 토픽에 수신된 총 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.message.outgoing.count

이 토픽에서 읽힌 총 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.message.incoming.size

이 토픽에 수신된 총 메시지 바이트 수예요.

  • 유형: Counter
  • 단위: By
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.message.outgoing.size

이 토픽에서 읽힌 총 메시지 바이트 수예요.

  • 유형: Counter
  • 단위: By
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.publish.latency

메시지 게시의 지연 시간(초)이에요.

  • 유형: Histogram
  • 단위: s

pulsar.broker.topic.publish.rate.limit.count

게시 요율 제한이 트리거된 횟수예요.

  • 유형: Counter
  • 단위: {event}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.storage.size

이 토픽 메시지의 총 저장 크기(복제본이 사용하는 저장 공간 포함)예요.

  • 유형: UpDownCounter
  • 단위: By
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.storage.logical.size

이 토픽 메시지의 저장 크기(복제본이 사용하는 저장 공간 제외)예요.

  • 유형: UpDownCounter
  • 단위: By
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.storage.backlog.size

이 토픽의 백로그 저장 크기예요.

  • 유형: UpDownCounter
  • 단위: By
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.storage.offloaded.size

이 토픽에서 계층형 저장소로 오프로딩된 총 데이터 양이에요.

  • 유형: UpDownCounter
  • 단위: By
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.storage.backlog.quota.limit.size

이 토픽의 크기 기반 백로그 할당량 한도예요.

  • 유형: UpDownCounter
  • 단위: By
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.storage.backlog.quota.limit.time

이 토픽의 시간 기반 백로그 할당량 한도예요.

  • 유형: Gauge
  • 단위: s
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.storage.backlog.quota.eviction.count

백로그가 할당량을 초과한 이후 퇴거(eviction)된 횟수예요.

  • 유형: Counter
  • 단위: {eviction}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.backlog.quota.type - 백로그 할당량 유형. 다음 중 하나: size, time

pulsar.broker.topic.storage.backlog.age

가장 오래된 미확인 메시지(백로그)의 나이예요.

  • 유형: Gauge
  • 단위: s
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.storage.entry.outgoing.count

이 토픽에 대해 저장소에 쓰여진 총 메시지 배치(항목) 수예요.

  • 유형: Counter
  • 단위: {entry}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.storage.entry.incoming.count

이 토픽에 대해 저장소에서 읽힌 총 메시지 배치(항목) 수예요.

  • 유형: Counter
  • 단위: {entry}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.compaction.removed.message.count

컴팩션(compaction)으로 제거된 총 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.compaction.operation.count

총 컴팩션 작업 수예요.

  • 유형: Counter
  • 단위: {operation}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.compaction.status - 컴팩션 상태. 다음 중 하나: success, failure

pulsar.broker.topic.compaction.duration

토픽의 컴팩션 작업 총 시간이에요.

  • 유형: DoubleUpDownCounter
  • 단위: s
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.compaction.incoming.size

이 토픽에 대해 컴팩션 프로세스가 읽은 총 바이트 수예요.

  • 유형: Counter
  • 단위: By
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.compaction.outgoing.size

이 토픽에 대해 컴팩션 프로세스가 쓴 총 바이트 수예요.

  • 유형: Counter
  • 단위: By
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.compaction.compacted.entry.count

총 컴팩트된 항목 수예요.

  • 유형: Counter
  • 단위: {entry}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.compaction.compacted.entry.size

컴팩트된 항목의 총 크기예요.

  • 유형: Counter
  • 단위: By
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.broker.topic.transaction.count

이 토픽의 트랜잭션 수예요.

  • 유형: UpDownCounter
  • 단위: {transaction}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.transaction.status - 트랜잭션 상태. 다음 중 하나: active, committed, aborted

pulsar.broker.topic.transaction.buffer.client.operation.count

트랜잭션 버퍼 클라이언트의 작업 수예요.

  • 유형: Counter
  • 단위: {operation}
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.transaction.status - Pulsar 트랜잭션 상태. 다음 중 하나: aborted, committed
    • pulsar.transaction.buffer.client.operation.status - Pulsar 트랜잭션 버퍼 클라이언트 작업 상태. 다음 중 하나: failure, success

pulsar.broker.topic.subscription.delayed.entry.count

디스패치가 지연된 총 메시지 배치(항목) 수예요.

  • 유형: UpDownCounter
  • 단위: {entry}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

토픽 룩업 메트릭 (Topic Lookup metrics)

pulsar.broker.lookup.request.duration

토픽 룩업 요청(바이너리 또는 HTTP)의 지속 시간이에요.

  • 유형: Histogram
  • 단위: second
  • 속성:
    • pulsar.lookup.response - 룩업 요청의 응답 유형
      • failure
      • broker
      • redirect

pulsar.broker.request.topic.lookup.concurrent.usage

브로커의 보류 중인 룩업 작업 수예요. broker.conf에 정의된 임계값 maxConcurrentLookupRequest에 도달하면 새 요청이 거부돼요.

  • 유형: UpDownCounter
  • 단위: {operation}

pulsar.broker.request.topic.lookup.concurrent.limit

브로커의 보류 중인 최대 룩업 작업 수예요. broker.conf에 정의된 maxConcurrentLookupRequest과 같아요.

  • 유형: UpDownCounter
  • 단위: {operation}

pulsar.broker.topic.load.concurrent.usage

브로커의 보류 중인 토픽 로드 작업 수예요. broker.conf에 정의된 임계값 maxConcurrentTopicLoadRequest에 도달하면 새 요청이 거부돼요.

  • 유형: UpDownCounter
  • 단위: {operation}

pulsar.broker.topic.load.concurrent.limit

브로커의 보류 중인 최대 토픽 로드 작업 수예요. broker.conf에 정의된 maxConcurrentTopicLoadRequest과 같아요.

  • 유형: UpDownCounter
  • 단위: {operation}

메타데이터 저장소 메트릭 (Metadata Store metrics)

pulsar.broker.metadata.store.outgoing.size

메타데이터 저장소에 쓰여진 총 데이터 양이에요.

  • 유형: Counter
  • 단위: {By}
  • 속성:
    • pulsar.metadata.store.name - 메타데이터 저장소의 이름

pulsar.broker.metadata.store.executor.queue.size

메타데이터 저장소 실행기 큐의 배치 작업 수예요.

  • 유형: UpDownCounter
  • 단위: {operation}
  • 속성:
    • pulsar.metadata.store.name - 메타데이터 저장소의 이름

컨슈머 메트릭 (Consumer metrics)

pulsar.broker.consumer.message.outgoing.count

이 컨슈머에게 디스패치된 총 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.subscription.name - 토픽 구독 이름
    • pulsar.subscription.type - 구독 유형
    • pulsar.consumer.name - 컨슈머 이름
    • pulsar.consumer.id - 컨슈머 ID

pulsar.broker.consumer.message.outgoing.size

이 컨슈머에게 디스패치된 총 메시지 바이트 수예요.

  • 유형: Counter
  • 단위: By
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.subscription.name - 토픽 구독 이름
    • pulsar.subscription.type - 구독 유형
    • pulsar.consumer.name - 컨슈머 이름
    • pulsar.consumer.id - 컨슈머 ID

pulsar.broker.consumer.message.ack.count

이 컨슈머로부터 받은 총 메시지 확인(acknowledgment) 수예요.

  • 유형: Counter
  • 단위: {ack}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.subscription.name - 토픽 구독 이름
    • pulsar.subscription.type - 구독 유형
    • pulsar.consumer.name - 컨슈머 이름
    • pulsar.consumer.id - 컨슈머 ID

pulsar.broker.consumer.message.redeliver.count

이 컨슈머에게 재전달된 총 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.subscription.name - 토픽 구독 이름
    • pulsar.subscription.type - 구독 유형
    • pulsar.consumer.name - 컨슈머 이름
    • pulsar.consumer.id - 컨슈머 ID

pulsar.broker.consumer.message.unack.count

이 컨슈머가 현재 확인하지 않은 메시지 수예요.

  • 유형: UpDownCounter
  • 단위: {message}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.subscription.name - 토픽 구독 이름
    • pulsar.subscription.type - 구독 유형
    • pulsar.consumer.name - 컨슈머 이름
    • pulsar.consumer.id - 컨슈머 ID

pulsar.broker.consumer.permit.count

이 컨슈머에게 현재 사용 가능한 허가(permit) 수예요.

  • 유형: UpDownCounter
  • 단위: {permit}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.subscription.name - 토픽 구독 이름
    • pulsar.subscription.type - 구독 유형
    • pulsar.consumer.name - 컨슈머 이름
    • pulsar.consumer.id - 컨슈머 ID

관리 원장 커서 메트릭 (Managed Ledger Cursor metrics)

pulsar.broker.managed_ledger.persist.operation.count

원장의 확인 작업 수예요.

  • 유형: Counter
  • 단위: {operation}
  • 속성:
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름
    • pulsar.managed_ledger.cursor.name - 관리 커서 이름
    • pulsar.managed_ledger.cursor.operation.status - 관리 커서 작업 상태. 다음 중 하나: success, failure

pulsar.broker.managed_ledger.persist.mds.operation.count

메타데이터 저장소의 확인 작업 수예요.

  • 유형: Counter
  • 단위: {operation}
  • 속성:
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름
    • pulsar.managed_ledger.cursor.name - 관리 커서 이름
    • pulsar.managed_ledger.cursor.operation.status - 관리 커서 작업 상태. 다음 중 하나: success, failure

pulsar.broker.managed_ledger.message_range.count

비연속 삭제 메시지 범위의 수예요.

  • 유형: UpDownCounter
  • 단위: {range}
  • 속성:
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름
    • pulsar.managed_ledger.cursor.name - 관리 커서 이름

pulsar.broker.managed_ledger.cursor.outgoing.size

원장에 쓰여진 총 데이터 양이에요.

  • 유형: Counter
  • 단위: {By}
  • 속성:
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름
    • pulsar.managed_ledger.cursor.name - 관리 커서 이름

pulsar.broker.managed_ledger.cursor.outgoing.logical.size

원장에 쓰여진 총 데이터 양(복제본 포함 안 함)이에요.

  • 유형: Counter
  • 단위: {By}
  • 속성:
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름
    • pulsar.managed_ledger.cursor.name - 관리 커서 이름

pulsar.broker.managed_ledger.cursor.incoming.size

원장에서 읽힌 총 데이터 양이에요.

  • 유형: Counter
  • 단위: {By}
  • 속성:
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름
    • pulsar.managed_ledger.cursor.name - 관리 커서 이름

pulsar.broker.managed_ledger.cursor.persist.unacked_ranges.truncated

커서가 managedLedgerMaxUnackedRangesToPersist를 초과해 영속화 시 ack 상태가 잘려진 횟수예요. 이 한도를 넘는 ack 상태는 브로커 재시작 시 유실돼요.

  • 유형: Counter
  • 단위: {truncation}
  • 속성:
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름
    • pulsar.managed_ledger.cursor.name - 관리 커서 이름

pulsar.broker.managed_ledger.cursor.persist.batch_deleted_indexes.truncated

커서가 managedLedgerMaxBatchDeletedIndexToPersist를 초과해 영속화 시 배치 삭제 인덱스 상태가 잘려진 횟수예요. 이 한도를 넘는 상태는 브로커 재시작 시 유실돼요.

  • 유형: Counter
  • 단위: {truncation}
  • 속성:
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름
    • pulsar.managed_ledger.cursor.name - 관리 커서 이름

관리 원장 캐시 메트릭 (Managed Ledger Cache metrics)

pulsar.broker.managed_ledger.count

총 관리 원장 수예요.

  • 유형: UpDownCounter
  • 단위: {managed_ledger}

pulsar.broker.managed_ledger.cache.eviction.count

총 캐시 퇴거 작업 수예요.

  • 유형: Counter
  • 단위: {eviction}

pulsar.broker.managed_ledger.cache.entry.count

항목 캐시의 항목 수예요.

  • 유형: UpDownCounter
  • 단위: {entry}
  • 속성:
    • pulsar.managed_ledger.cache.entry.status - 캐시 항목 상태. 다음 중 하나:
      • active - 현재 캐시에 있는 항목 수를 나타냄. evicted - inserted과 같음.
      • inserted - 캐시에 삽입된 총 항목 수를 나타냄.
      • evicted - 캐시에서 퇴거된 총 항목 수를 나타냄.

pulsar.broker.managed_ledger.cache.entry.size

항목 캐시에 저장된 항목의 바이트 양이에요.

  • 유형: UpDownCounter
  • 단위: {By}

pulsar.broker.managed_ledger.cache.operation.count

캐시 작업 수예요.

  • 유형: Counter
  • 단위: {entry}
  • 속성:
    • pulsar.managed_ledger.cache.operation.status - 캐시 작업 결과. 다음 중 하나:
      • hit - 성공적인 캐시 조회 작업을 나타냄.
      • miss - 실패한 캐시 조회 작업을 나타냄.

pulsar.broker.managed_ledger.cache.operation.size

캐시 작업에서 검색된 데이터의 바이트 양이에요.

  • 유형: Counter
  • 단위: {By}
  • 속성:
    • pulsar.managed_ledger.cache.operation.status - 캐시 작업 결과. 다음 중 하나:
      • hit - 성공적인 캐시 조회 작업을 나타냄.
      • miss - 실패한 캐시 조회 작업을 나타냄.

pulsar.broker.managed_ledger.cache.pool.allocation.active.count

direct arena의 현재 활성 할당 수예요.

  • 유형: UpDownCounter
  • 단위: {allocation}
  • 속성:
    • pulsar.managed_ledger.pool.arena.type - 아레나 유형. 다음 중 하나: small, normal, huge

pulsar.broker.managed_ledger.cache.pool.allocation.size

direct arena에 할당된 메모리예요.

  • 유형: UpDownCounter
  • 단위: {By}
  • 속성:
    • pulsar.managed_ledger.pool.chunk.allocation.type - 청크 할당 유형. 다음 중 하나: allocated, used

프로듀서 메트릭 (Producer metrics)

pulsar.broker.producer.message.incoming.count

이 프로듀서로부터 받은 총 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.producer.name - 프로듀서 이름
    • pulsar.producer.id - 프로듀서 ID
    • pulsar.producer.access_mode - 프로듀서의 접근 모드. 다음 중 하나: shared, exclusive, wait_for_exclusive, exclusive_with_fencing

pulsar.broker.producer.message.incoming.size

이 프로듀서로부터 받은 총 메시지 바이트 수예요.

  • 유형: Counter
  • 단위: By
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.producer.name - 프로듀서 이름
    • pulsar.producer.id - 프로듀서 ID
    • pulsar.producer.access_mode - 프로듀서의 접근 모드. 다음 중 하나: shared, exclusive, wait_for_exclusive, exclusive_with_fencing

pulsar.broker.producer.message.drop.count

이 프로듀서로부터 버려진(dropped) 총 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.producer.name - 프로듀서 이름
    • pulsar.producer.id - 프로듀서 ID
    • pulsar.producer.access_mode - 프로듀서의 접근 모드. 다음 중 하나: shared, exclusive, wait_for_exclusive, exclusive_with_fencing

관리 원장 메트릭 (Managed Ledger metrics)

pulsar.broker.managed_ledger.message.outgoing.count

이 원장에 대한 쓰기 작업 수예요.

  • 유형: UpDownCounter
  • 단위: {operation}
  • 속성:
    • pulsar.namespace - 관리 원장 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름
    • pulsar.managed_ledger.operation.status - 관리 원장 작업 상태. 다음 중 하나: success, failure

pulsar.broker.managed_ledger.message.outgoing.logical.size

이 원장에 쓰여진 총 메시지 바이트 수(복제본 제외)예요.

  • 유형: Counter
  • 단위: By
  • 속성:
    • pulsar.namespace - 관리 원장 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름

pulsar.broker.managed_ledger.message.outgoing.replicated.size

이 원장에 쓰여진 총 메시지 바이트 수(복제본 포함)예요.

  • 유형: Counter
  • 단위: By
  • 속성:
    • pulsar.namespace - 관리 원장 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름

pulsar.broker.managed_ledger.backlog.count

이 원장의 모든 컨슈머에 대한 백로그 메시지 수예요.

  • 유형: UpDownCounter
  • 단위: {message}
  • 속성:
    • pulsar.namespace - 관리 원장 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름

pulsar.broker.managed_ledger.message.incoming.count

이 원장에 대한 읽기 작업 수예요.

  • 유형: UpDownCounter
  • 단위: {operation}
  • 속성:
    • pulsar.namespace - 관리 원장 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름
    • pulsar.managed_ledger.operation.status - 관리 원장 작업 상태. 다음 중 하나: success, failure

pulsar.broker.managed_ledger.message.incoming.size

이 원장에서 읽힌 총 메시지 바이트 수예요.

  • 유형: Counter
  • 단위: By
  • 속성:
    • pulsar.namespace - 관리 원장 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름

pulsar.broker.managed_ledger.message.incoming.cache.miss.count

이 원장에서 읽는 동안 캐시가 빗나간(miss) 횟수예요.

  • 유형: UpDownCounter
  • 단위: {operation}
  • 속성:
    • pulsar.namespace - 관리 원장 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름

pulsar.broker.managed_ledger.mark_delete.count

이 원장의 총 mark delete 작업 수예요.

  • 유형: Counter
  • 단위: {operation}
  • 속성:
    • pulsar.namespace - 관리 원장 네임스페이스
    • pulsar.managed_ledger.name - 관리 원장 이름

pulsar.broker.managed_ledger.message.outgoing.latency

종단 간 쓰기 지연 시간(실행기 큐에서 보낸 시간 포함)이에요.

  • 유형: Histogram
  • 단위: s
  • 속성:
    • pulsar.namespace - 관리 원장 네임스페이스

pulsar.broker.managed_ledger.message.outgoing.ledger.latency

종단 간 쓰기 지연 시간이에요.

  • 유형: Histogram
  • 단위: s
  • 속성:
    • pulsar.namespace - 관리 원장 네임스페이스

pulsar.broker.managed_ledger.ledger.switch.latency

새 원장으로 전환하는 데 걸린 시간이에요.

  • 유형: Histogram
  • 단위: s
  • 속성:
    • pulsar.namespace - 관리 원장 네임스페이스

pulsar.broker.managed_ledger.entry.size

원장에 쓰여진 항목의 크기예요.

  • 유형: Histogram
  • 단위: By
  • 속성:
    • pulsar.namespace - 관리 원장 네임스페이스

pulsar.broker.managed_ledger.inflight.read.limit

저장소 또는 캐시에서 읽힌 관리 원장 데이터가 보유할 수 있는 최대 바이트 수예요.

  • 유형: Counter
  • 단위: By

pulsar.broker.managed_ledger.inflight.read.usage

저장소 또는 캐시에서 읽힌 관리 원장 데이터가 보유한 것으로 추정되는 바이트 수예요.

  • 유형: Counter
  • 단위: By
  • 속성:
    • pulsar.managed_ledger.inflight.read.usage.state - 관리 원장 메모리 제한기 사용 상태를 나타냄. 다음 중 하나: used, free

웹 실행기 서비스 메트릭 (Web Executor Service metrics)

pulsar.web.executor.thread.limit

pulsar-web 실행기 풀의 스레드 한도예요.

  • 유형: UpDownCounter
  • 단위: {thread}
  • 속성:
    • pulsar.web.executor.thread.limit.type - 스레드 풀의 한도 유형. max, min

pulsar.web.executor.thread.usage

pulsar-web 실행기 풀의 현재 스레드 사용량이에요.

  • 유형: UpDownCounter
  • 단위: {thread}
  • 속성:
    • pulsar.web.executor.thread.usage.type - 스레드 풀의 사용 유형.
      • active - 요청을 적극적으로 처리하는 스레드 수를 나타냄.
      • current - 현재 풀과 연결된 총 스레드 수를 나타냄.
      • idle - 요청을 처리할 수 있는 스레드 수를 나타냄.

복제(replicator) 메트릭 (Replicator metrics)

pulsar.broker.replication.message.incoming.count

이 복제기를 통해 원격 클러스터에서 받은 총 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.replication.remote.cluster.name - 원격 클러스터 이름

pulsar.broker.replication.message.outgoing.count

이 복제기를 통해 원격 클러스터로 보낸 총 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.replication.remote.cluster.name - 원격 클러스터 이름

pulsar.broker.replication.message.incoming.size

이 복제기를 통해 원격 클러스터에서 받은 총 메시지 바이트 수예요.

  • 유형: Counter
  • 단위: {By}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.replication.remote.cluster.name - 원격 클러스터 이름

pulsar.broker.replication.message.outgoing.size

이 복제기를 통해 원격 클러스터로 보낸 총 메시지 바이트 수예요.

  • 유형: Counter
  • 단위: {By}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.replication.remote.cluster.name - 원격 클러스터 이름

pulsar.broker.replication.message.backlog.count

이 복제기의 백로그에 있는 총 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.replication.remote.cluster.name - 원격 클러스터 이름

pulsar.broker.replication.message.backlog.age

복제기 백로그의 가장 오래된 메시지 나이예요.

  • 유형: Gauge
  • 단위: s
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.replication.remote.cluster.name - 원격 클러스터 이름

pulsar.broker.replication.message.expired.count

이 복제기에서 만료된 총 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.replication.remote.cluster.name - 원격 클러스터 이름

pulsar.broker.replication.message.dropped.count

이 복제기가 버린 총 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.domain - 토픽 도메인. 다음 중 하나: persistent, non-persistent
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.replication.remote.cluster.name - 원격 클러스터 이름

스키마 레지스트리 메트릭 (Schema Registry Metrics)

pulsar.broker.request.schema_registry.duration

스키마 레지스트리 요청의 지속 시간이에요.

  • 유형: Histogram
  • 단위: s
  • 속성:
    • pulsar.namespace - 스키마 레지스트리 요청이 참조하는 네임스페이스
    • pulsar.schema_registry.request - 스키마 레지스트리 요청 유형
      • get
      • list
      • put
      • delete
    • pulsar.schema_registry.response - 스키마 레지스트리 응답 유형
      • success
      • failure

pulsar.broker.operation.schema_registry.compatibility_check.count

브로커가 수행한 스키마 레지스트리 호환성 검사 작업 수예요.

  • 유형: Counter
  • 단위: {operation}
  • 속성:
    • pulsar.namespace - 호환성 검사 작업이 참조하는 네임스페이스
    • pulsar.schema_registry.compatibility_check.response - 호환성 검사 응답 유형
      • compatible
      • incompatible

HTTP 요청 필터 메트릭 (HTTP Request Filter Metrics)

pulsar.web.filter.rate_limit.request.count

요율 제한 필터가 처리한 HTTP 요청 수예요.

  • 유형: Counter
  • 단위: {request}
  • 속성:
    • pulsar.web.filter.rate_limit.result - 요율 제한 작업 결과. 다음 중 하나: accepted, rejected

트랜잭션 코디네이터 메트릭 (Transaction Coordinator Metrics)

pulsar.broker.transaction.coordinator.transaction.count

코디네이터가 처리한 트랜잭션 수예요.

  • 유형: UpDownCounter
  • 단위: {transaction}
  • 속성:
    • pulsar.transaction.coordinator.id - Pulsar 트랜잭션 코디네이터 ID
    • pulsar.transaction.status - Pulsar 트랜잭션 상태. 다음 중 하나: aborted, active, created, committed, timeout

pulsar.broker.transaction.coordinator.append.log.count

코디네이터가 추가한 트랜잭션 메타데이터 항목 수예요.

  • 유형: Counter
  • 단위: {entry}
  • 속성:
    • pulsar.transaction.coordinator.id - Pulsar 트랜잭션 코디네이터 ID
    • pulsar.transaction.status - Pulsar 트랜잭션 상태. 다음 중 하나: aborted, active, created, committed, timeout

트랜잭션 보류 확인 저장소 메트릭 (Transaction Pending Acknowledgment Store Metrics)

pulsar.broker.transaction.pending.ack.store.transaction.count

영속 ack 저장소가 처리한 트랜잭션 수예요.

  • 유형: Counter
  • 단위: {transaction}
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition.index - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.subscription.name - Pulsar 구독 이름
    • pulsar.transaction.status - Pulsar 트랜잭션 상태. 다음 중 하나: aborted, committed
    • pulsar.transaction.pending.ack.store.operation.status - 보류 확인 저장소 작업 상태. 다음 중 하나: failure, success

인증 메트릭 (Authentication Metrics)

pulsar.authentication.operation.count

인증 작업 수예요.

  • 유형: Counter
  • 단위: {operation}
  • 속성:
    • pulsar.authentication.provider - 인증 제공자 클래스 이름
    • pulsar.authentication.method - 인증 메서드 이름
    • pulsar.authentication.result - 인증 결과. 다음 중 하나: success, failure
    • pulsar.authentication.error - 결과가 failure인 경우 인증 오류

토큰 메트릭 (Token Metrics)

pulsar.authentication.token.expired.count

총 만료 토큰 수예요.

  • 유형: Counter
  • 단위: {token}

pulsar.authentication.token.expiry.duration

만료될 토큰의 남은 시간(초)이에요.

  • 유형: Histogram
  • 단위: s

복제 구독 메트릭 (Replication Subscription Metrics)

pulsar.broker.replication.subscription.snapshot.operation.count

시도된 스냅샷 작업 수예요.

  • 유형: Counter
  • 단위: {operation}

pulsar.broker.replication.subscription.snapshot.operation.duration

클러스터 간 일관된 스냅샷 작업을 완료하는 데 걸린 시간이에요.

  • 유형: Histogram
  • 단위: s
  • 속성:
    • pulsar.replication.subscription.snapshot.operation.result - 스냅샷 작업 결과. 다음 중 하나: success, timeout

Java 클라이언트 (Java Client)

프로듀서 메트릭 (Producer Metrics)

pulsar.client.producer.message.send.duration

애플리케이션이 경험하는 게시 지연 시간으로, 클라이언트 배칭 시간을 포함해요.

  • 유형: Histogram
  • 단위: s
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.response.status - 응답 상태. 다음 중 하나: success, failed

pulsar.client.producer.rpc.send.duration

데이터 전송부터 ack 수신까지 클라이언트가 내부적으로 경험하는 게시 RPC 지연 시간이에요.

  • 유형: Histogram
  • 단위: s
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.response.status - 응답 상태. 다음 중 하나: success, failed

pulsar.client.producer.message.send.size

게시된 바이트 수예요.

  • 유형: Counter
  • 단위: By
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.client.producer.message.pending.count

전송 대기 중인 프로듀서 내부 전송 큐의 메시지 수예요.

  • 유형: UpDownCounter
  • 단위: {message}
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.client.producer.message.pending.size

전송 대기 중인 프로듀서 내부 큐의 메시지 크기예요.

  • 유형: UpDownCounter
  • 단위: By
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.client.producer.opened

열린 프로듀서 세션 수예요.

  • 유형: Counter
  • 단위: {session}
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

pulsar.client.producer.closed

닫힌 프로듀서 세션 수예요.

  • 유형: Counter
  • 단위: {session}
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.

컨슈머 메트릭 (Consumer Metrics)

pulsar.client.consumer.opened

열린 컨슈머 세션 수예요.

  • 유형: Counter
  • 단위: {session}
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.subscription - 구독 이름

pulsar.client.consumer.closed

닫힌 컨슈머 세션 수예요.

  • 유형: Counter
  • 단위: {session}
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.subscription - 구독 이름

pulsar.client.consumer.message.received.count

컨슈머 애플리케이션이 명시적으로 받은 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.subscription - 구독 이름

pulsar.client.consumer.message.received.size

컨슈머 애플리케이션이 명시적으로 받은 바이트 수예요.

  • 유형: Counter
  • 단위: By
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.subscription - 구독 이름

pulsar.client.consumer.receive_queue.count

현재 컨슈머 수신 큐에 있는 메시지 수예요.

  • 유형: UpDownCounter
  • 단위: {message}
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.subscription - 구독 이름

pulsar.client.consumer.receive_queue.size

현재 컨슈머 수신 큐에 있는 메시지의 총 바이트 크기예요.

  • 유형: UpDownCounter
  • 단위: By
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.subscription - 구독 이름

pulsar.client.consumer.message.ack

확인된 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.subscription - 구독 이름

pulsar.client.consumer.message.nack

부정 확인(negative acknowledgement)된 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.subscription - 구독 이름

pulsar.client.consumer.message.dlq

데드 레터 큐(dead letter queue)로 보내진 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.subscription - 구독 이름

pulsar.client.consumer.message.ack.timeout

구성된 타임아웃 기간 내에 확인되지 않아 클라이언트가 재전송을 요청한 메시지 수예요.

  • 유형: Counter
  • 단위: {message}
  • 속성:
    • pulsar.tenant - 토픽 테넌트
    • pulsar.namespace - 토픽 네임스페이스
    • pulsar.topic - 토픽 이름
    • pulsar.partition - 토픽의 파티션 인덱스. 토픽이 파티셔닝된 경우에만 존재.
    • pulsar.subscription - 구독 이름

연결 메트릭 (Connection Metrics)

pulsar.client.connection.opened

열린 연결 수예요.

  • 유형: Counter
  • 단위: {connection}

pulsar.client.connection.closed

닫힌 연결 수예요.

  • 유형: Counter
  • 단위: {connection}

pulsar.client.connection.failed

실패한 연결 시도 수예요.

  • 유형: Counter
  • 단위: {connection}
  • 속성:
    • pulsar.failure.type - 연결 실패 유형. 다음 중 하나: tcp-failed, handshake

룩업 서비스 메트릭 (Lookup Service Metrics)

pulsar.client.lookup.duration

룩업 작업의 지속 시간이에요.

  • 유형: Histogram
  • 단위: s
  • 속성:
    • pulsar.lookup.transport-type - 룩업에 사용된 전송 유형. 다음 중 하나: http, binary
    • pulsar.response.status - 응답 상태. 다음 중 하나: success, failed

메모리 버퍼 메트릭 (Memory Buffer Metrics)

pulsar.client.memory.buffer.usage

클라이언트의 현재 메모리 버퍼 사용량이에요.

  • 유형: UpDownCounter
  • 단위: By

pulsar.client.memory.buffer.limit

클라이언트에 구성된 메모리 버퍼 한도예요.

  • 유형: UpDownCounter
  • 단위: By

더 알아보기 (Learn more)

  • 기존(레거시) 메트릭은 Pulsar metrics 문서를 참고해요.
  • OpenTelemetry 표준은 OpenTelemetry 공식 문서를 봐요.
  • 계층형 저장소 오프로딩 지표는 offload metrics를 확인해요.