Pulsar OpenTelemetry Metrics
Pulsar exposes the following OpenTelemetry metrics.
Broker
Connection Metrics
pulsar.broker.connection.count
The number of connections.
- Type: UpDownCounter
- Unit:
{connection}
- Attributes:
pulsar.connection.status
- The status of the connection. Can be one of:active
open
close
pulsar.broker.connection.create.operation.count
The number of connection create operations.
- Type: UpDownCounter
- Unit:
{operation}
- Attributes:
pulsar.connection.create.operation.status
- The status of the create operation. Can be one of:success
failure
pulsar.broker.connection.rate_limit.count
The number of times a connection has been rate limited.
- Type: Counter
- Unit:
{operation}
- Attributes:
pulsar.connection.rate_limit.operation.name
- The name of the rate limiting operation performed. Can be one of:paused
resumed
throttled
unthrottled
Topic Messaging metrics
pulsar.broker.topic.subscription.count
The number of Pulsar subscriptions of the topic served by this broker.
- Type: UpDownCounter
- Unit:
{subscription}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.producer.count
The number of active producers of the topic connected to this broker.
- Type: UpDownCounter
- Unit:
{producer}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.consumer.count
The number of active consumers of the topic connected to this broker.
- Type: UpDownCounter
- Unit:
{consumer}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.message.incoming.count
The total number of messages received for this topic.
- Type: Counter
- Unit:
{message}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.message.outgoing.count
The total number of messages read from this topic.
- Type: Counter
- Unit:
{message}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.message.incoming.size
The total number of messages bytes received for this topic.
- Type: Counter
- Unit:
By
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.message.outgoing.size
The total number of messages bytes read from this topic.
- Type: Counter
- Unit:
By
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.publish.rate.limit.count
The number of times the publish rate limit is triggered.
- Type: Counter
- Unit:
{event}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.storage.size
The total storage size of the messages in this topic, including storage used by replicas.
- Type: UpDownCounter
- Unit:
By
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.storage.logical.size
The storage size of the messages in this topic, excluding storage used by replicas.
- Type: UpDownCounter
- Unit:
By
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.storage.backlog.size
The size of the backlog storage for this topic.
- Type: UpDownCounter
- Unit:
By
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.storage.offloaded.size
The total amount of the data in this topic offloaded to the tiered storage.
- Type: UpDownCounter
- Unit:
By
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.storage.backlog.quota.limit.size
The size based backlog quota limit for this topic.
- Type: UpDownCounter
- Unit:
By
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.storage.backlog.quota.limit.time
The time based backlog quota limit for this topic.
- Type: Gauge
- Unit:
s
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.storage.backlog.quota.eviction.count
The number of times a backlog was evicted since it has exceeded its quota.
- Type: Counter
- Unit:
{eviction}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.pulsar.backlog.quota.type
- The backlog quota type. Can be one of:size
time
pulsar.broker.topic.storage.backlog.age
The age of the oldest unacknowledged message (backlog).
- Type: Gauge
- Unit:
s
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.storage.entry.outgoing.count
The total message batches (entries) written to the storage for this topic.
- Type: Counter
- Unit:
{entry}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.storage.entry.incoming.count
The total message batches (entries) read from the storage for this topic.
- Type: Counter
- Unit:
{entry}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.compaction.removed.message.count
The total number of messages removed by compaction.
- Type: Counter
- Unit:
{message}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.compaction.operation.count
The total number of compaction operations.
- Type: Counter
- Unit:
{operation}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.pulsar.compaction.status
- The compaction status. Can be one of:success
- `failure
pulsar.broker.topic.compaction.duration
The total time duration of compaction operations on the topic.
- Type: DoubleUpDownCounter
- Unit:
s
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.compaction.incoming.size
The total count of bytes read by the compaction process for this topic.
- Type: Counter
- Unit:
By
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.compaction.outgoing.size
The total count of bytes written by the compaction process for this topic.
- Type: Counter
- Unit:
By
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.compaction.compacted.entry.count
The total number of compacted entries.
- Type: Counter
- Unit:
{entry}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.compaction.compacted.entry.size
The total size of the compacted entries.
- Type: Counter
- Unit:
By
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
pulsar.broker.topic.transaction.count
The number of transactions on this topic.
- Type: UpDownCounter
- Unit:
{transaction}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.pulsar.transaction.status
- The transaction status. Can be one of:active
committed
aborted
pulsar.broker.topic.transaction.buffer.client.operation.count
The number of operations on the transaction buffer client.
- Type: Counter
- Unit:
{operation}
- Attributes:
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.pulsar.transaction.status
- The status of the Pulsar transaction. Can be one of:aborted
committed
pulsar.transaction.buffer.client.operation.status
- The status of the Pulsar transaction buffer client operation. Can be one of:failure
success
pulsar.broker.topic.subscription.delayed.entry.count
The total number of message batches (entries) delayed for dispatching.
- Type: UpDownCounter
- Unit:
{entry}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.
Topic Lookup metrics
pulsar.broker.lookup.request.duration
The duration of topic lookup requests (either binary or HTTP)
- Type: Histogram
- Unit:
second
- Attributes:
pulsar.lookup.response
- The response type of the lookup requestfailure
broker
redirect
pulsar.broker.request.topic.lookup.concurrent.usage
The number of pending lookup operations in the broker. When it reaches threshold "maxConcurrentLookupRequest" defined in broker.conf, new requests are rejected.
- Type: UpDownCounter
- Unit:
{operation}
pulsar.broker.request.topic.lookup.concurrent.limit
The maximum number of pending lookup operations in the broker. Equal to "maxConcurrentLookupRequest" defined in broker.conf.
- Type: UpDownCounter
- Unit:
{operation}
pulsar.broker.topic.load.concurrent.usage
The number of pending topic load operations in the broker. When it reaches threshold "maxConcurrentTopicLoadRequest" defined in broker.conf, new requests are rejected.
- Type: UpDownCounter
- Unit:
{operation}
pulsar.broker.topic.load.concurrent.limit
The maximum number of pending topic load operations in the broker. Equal to "maxConcurrentTopicLoadRequest" defined in broker.conf.
- Type: UpDownCounter
- Unit:
{operation}
Metadata Store metrics
pulsar.broker.metadata.store.outgoing.size
The total amount of data written to the metadata store.
- Type: Counter
- Unit:
{By}
- Attributes:
pulsar.metadata.store.name
- The name of the metadata store.
pulsar.broker.metadata.store.executor.queue.size
The number of batch operations in the metadata store executor queue.
- Type: UpDownCounter
- Unit:
{operation}
- Attributes:
pulsar.metadata.store.name
- The name of the metadata store.
Consumer metrics
pulsar.broker.consumer.message.outgoing.count
The total number of messages dispatched to this consumer.
- Type: Counter
- Unit:
{message}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.subscription.name
- The topic subscription name.pulsar.subscription.type
- The subscription type.pulsar.consumer.name
- The name of the consumer.pulsar.consumer.id
- The ID of the consumer.
pulsar.broker.consumer.message.outgoing.size
The total number of messages bytes dispatched to this consumer.
- Type: Counter
- Unit:
By
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.subscription.name
- The topic subscription name.pulsar.subscription.type
- The subscription type.pulsar.consumer.name
- The name of the consumer.pulsar.consumer.id
- The ID of the consumer.
pulsar.broker.consumer.message.ack.count
The total number of message acknowledgments received from this consumer.
- Type: Counter
- Unit:
{ack}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.subscription.name
- The topic subscription name.pulsar.subscription.type
- The subscription type.pulsar.consumer.name
- The name of the consumer.pulsar.consumer.id
- The ID of the consumer.
pulsar.broker.consumer.message.redeliver.count
The total number of messages that have been redelivered to this consumer.
- Type: Counter
- Unit:
{message}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.subscription.name
- The topic subscription name.pulsar.subscription.type
- The subscription type.pulsar.consumer.name
- The name of the consumer.pulsar.consumer.id
- The ID of the consumer.
pulsar.broker.consumer.message.unack.count
The number of messages currently unacknowledged by this consumer.
- Type: UpDownCounter
- Unit:
{message}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.subscription.name
- The topic subscription name.pulsar.subscription.type
- The subscription type.pulsar.consumer.name
- The name of the consumer.pulsar.consumer.id
- The ID of the consumer.
pulsar.broker.consumer.permit.count
The number of permits currently available for this consumer.
- Type: UpDownCounter
- Unit:
{permit}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.subscription.name
- The topic subscription name.pulsar.subscription.type
- The subscription type.pulsar.consumer.name
- The name of the consumer.pulsar.consumer.id
- The ID of the consumer.
Managed Ledger Cursor metrics
pulsar.broker.managed_ledger.persist.operation.count
The number of acknowledgment operations on the ledger.
- Type: Counter
- Unit:
{operation}
- Attributes:
pulsar.namespace
- The topic namespace.pulsar.managed_ledger.name
- The name of the managed ledger.pulsar.managed_ledger.cursor.name
- The name of the managed cursor.pulsar.managed_ledger.cursor.operation.status
- The status of the managed cursor operation. Can be one of:success
failure
pulsar.broker.managed_ledger.persist.mds.operation.count
The number of acknowledgment operations in the metadata store.
- Type: Counter
- Unit:
{operation}
- Attributes:
pulsar.namespace
- The topic namespace.pulsar.managed_ledger.name
- The name of the managed ledger.pulsar.managed_ledger.cursor.name
- The name of the managed cursor.pulsar.managed_ledger.cursor.operation.status
- The status of the managed cursor operation. Can be one of:success
failure
pulsar.broker.managed_ledger.message_range.count
The number of non-contiguous deleted messages ranges.
- Type: UpDownCounter
- Unit:
{range}
- Attributes:
pulsar.namespace
- The topic namespace.pulsar.managed_ledger.name
- The name of the managed ledger.pulsar.managed_ledger.cursor.name
- The name of the managed cursor.
pulsar.broker.managed_ledger.cursor.outgoing.size
The total amount of data written to the ledger.
- Type: Counter
- Unit:
{By}
- Attributes:
pulsar.namespace
- The topic namespace.pulsar.managed_ledger.name
- The name of the managed ledger.pulsar.managed_ledger.cursor.name
- The name of the managed cursor.
pulsar.broker.managed_ledger.cursor.outgoing.logical.size
The total amount of data written to the ledger, not including replicas.
- Type: Counter
- Unit:
{By}
- Attributes:
pulsar.namespace
- The topic namespace.pulsar.managed_ledger.name
- The name of the managed ledger.pulsar.managed_ledger.cursor.name
- The name of the managed cursor.
pulsar.broker.managed_ledger.cursor.incoming.size
The total amount of data read from the ledger.
- Type: Counter
- Unit:
{By}
- Attributes:
pulsar.namespace
- The topic namespace.pulsar.managed_ledger.name
- The name of the managed ledger.pulsar.managed_ledger.cursor.name
- The name of the managed cursor.
Managed Ledger Cache metrics
pulsar.broker.managed_ledger.count
The total number of managed ledgers.
- Type: UpDownCounter
- Unit:
{managed_ledger}
pulsar.broker.managed_ledger.cache.eviction.count
The total number of cache eviction operations.
- Type: Counter
- Unit:
{eviction}
pulsar.broker.managed_ledger.cache.entry.count
The number of entries in the entry cache.
- Type: UpDownCounter
- Unit:
{entry}
- Attributes:
pulsar.managed_ledger.cache.entry.status
- The status of the cache entry. Can be one of:active
- Indicates the number of entries currently in the cache. Equal to theevicted - inserted
.inserted
- Indicates the total number of entries inserted into the cache.evicted
- Indicates the total number of entries evicted from the cache.
pulsar.broker.managed_ledger.cache.entry.size
The byte amount of entries stored in the entry cache.
- Type: UpDownCounter
- Unit:
{By}
pulsar.broker.managed_ledger.cache.operation.count
The number of cache operations.
- Type: Counter
- Unit:
{entry}
- Attributes:
pulsar.managed_ledger.cache.operation.status
- The cache operation result. Can be one of:hit
- Indicates a successful cache lookup operation.miss
- Indicates a failed cache lookup operation.
pulsar.broker.managed_ledger.cache.operation.size
The byte amount of data retrieved from cache operations.
- Type: Counter
- Unit:
{By}
- Attributes:
pulsar.managed_ledger.cache.operation.status
- The cache operation result. Can be one of:hit
- Indicates a successful cache lookup operation.miss
- Indicates a failed cache lookup operation.
pulsar.broker.managed_ledger.cache.pool.allocation.active.count
The number of currently active allocations in the direct arena.
- Type: UpDownCounter
- Unit:
{allocation}
- Attributes:
pulsar.managed_ledger.pool.arena.type
- The arena type. Can be one of:small
normal
huge
pulsar.broker.managed_ledger.cache.pool.allocation.size
The memory allocated in the direct arena.
- Type: UpDownCounter
- Unit:
{By}
- Attributes:
pulsar.managed_ledger.pool.chunk.allocation.type
- The chunk allocation type. Can be one of:allocated
used
Producer metrics
pulsar.broker.producer.message.incoming.count
The total number of messages received from this producer.
- Type: Counter
- Unit:
{message}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.producer.name
- The name of the producer.pulsar.producer.id
- The ID of the producer.pulsar.producer.access_mode
- The access mode of the producer. Can be one of:shared
exclusive
wait_for_exclusive
exclusive_with_fencing
pulsar.broker.producer.message.incoming.size
The total number of messages bytes received from this producer.
- Type: Counter
- Unit:
By
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.producer.name
- The name of the producer.pulsar.producer.id
- The ID of the producer.pulsar.producer.access_mode
- The access mode of the producer. Can be one of:shared
exclusive
wait_for_exclusive
exclusive_with_fencing
pulsar.broker.producer.message.drop.count
The total number of messages dropped from this producer.
- Type: Counter
- Unit:
{message}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.producer.name
- The name of the producer.pulsar.producer.id
- The ID of the producer.pulsar.producer.access_mode
- The access mode of the producer. Can be one of:shared
exclusive
wait_for_exclusive
exclusive_with_fencing
Managed Ledger metrics
pulsar.broker.managed_ledger.message.outgoing.count
The number of write operations to this ledger.
- Type: UpDownCounter
- Unit:
{operation}
- Attributes:
pulsar.namespace
- The managed ledger namespace.pulsar.managed_ledger.name
- The name of the managed ledger.pulsar.managed_ledger.operation.status
- The status of the managed ledger operation. Can be one of:success
failure
pulsar.broker.managed_ledger.message.outgoing.logical.size
The total number of messages bytes written to this ledger, excluding replicas.
- Type: Counter
- Unit:
By
- Attributes:
pulsar.namespace
- The managed ledger namespace.pulsar.managed_ledger.name
- The name of the managed ledger.
pulsar.broker.managed_ledger.message.outgoing.replicated.size
The total number of messages bytes written to this ledger, including replicas.
- Type: Counter
- Unit:
By
- Attributes:
pulsar.namespace
- The managed ledger namespace.pulsar.managed_ledger.name
- The name of the managed ledger.
pulsar.broker.managed_ledger.backlog.count
The number of messages in backlog for all consumers from this ledger.
- Type: UpDownCounter
- Unit:
{message}
- Attributes:
pulsar.namespace
- The managed ledger namespace.pulsar.managed_ledger.name
- The name of the managed ledger.
pulsar.broker.managed_ledger.message.incoming.count
The number of read operations from this ledger.
- Type: UpDownCounter
- Unit:
{operation}
- Attributes:
pulsar.namespace
- The managed ledger namespace.pulsar.managed_ledger.name
- The name of the managed ledger.pulsar.managed_ledger.operation.status
- The status of the managed ledger operation. Can be one of:success
failure
pulsar.broker.managed_ledger.message.incoming.size
The total number of messages bytes read from this ledger.
- Type: Counter
- Unit:
By
- Attributes:
pulsar.namespace
- The managed ledger namespace.pulsar.managed_ledger.name
- The name of the managed ledger.
pulsar.broker.managed_ledger.message.incoming.cache.miss.count
The number of cache misses during read operations from this ledger.
- Type: UpDownCounter
- Unit:
{operation}
- Attributes:
pulsar.namespace
- The managed ledger namespace.pulsar.managed_ledger.name
- The name of the managed ledger.
pulsar.broker.managed_ledger.mark_delete.count
The total number of mark delete operations for this ledger.
- Type: Counter
- Unit:
{operation}
- Attributes:
pulsar.namespace
- The managed ledger namespace.pulsar.managed_ledger.name
- The name of the managed ledger.
pulsar.broker.managed_ledger.inflight.read.limit
Maximum number of bytes that can be retained by managed ledger data read from storage or cache.
- Type: Counter
- Unit:
By
pulsar.broker.managed_ledger.inflight.read.usage
Estimated number of bytes retained by managed ledger data read from storage or cache.
- Type: Counter
- Unit:
By
- Attributes:
pulsar.managed_ledger.inflight.read.usage.state
- Indicates managed ledger memory limiter usage state. Can be one of:used
free
Web Executor Service metrics
pulsar.web.executor.thread.limit
The thread limits for the pulsar-web executor pool.
- Type: UpDownCounter
- Unit:
{thread}
- Attributes:
pulsar.web.executor.thread.limit.type
- The limit type for the thread pool.max
min
pulsar.web.executor.thread.usage
The current usage of threads in the pulsar-web executor pool.
- Type: UpDownCounter
- Unit:
{thread}
- Attributes:
pulsar.web.executor.thread.usage.type
- The usage type for the thread pool.active
- Indicates the number of threads actively serving requests.current
- Indicates the total number of threads currently associated with the pool.idle
- Indicates the number of threads available to serve requests.
Replicator metrics
pulsar.broker.replication.message.incoming.count
The total number of messages received from the remote cluster through this replicator.
- Type: Counter
- Unit:
{message}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.pulsar.replication.remote.cluster.name
- The name of the remote cluster.
pulsar.broker.replication.message.outgoing.count
The total number of messages sent to the remote cluster through this replicator.
- Type: Counter
- Unit:
{message}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.pulsar.replication.remote.cluster.name
- The name of the remote cluster.
pulsar.broker.replication.message.incoming.size
The total number of messages bytes received from the remote cluster through this replicator.
- Type: Counter
- Unit:
{By}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.pulsar.replication.remote.cluster.name
- The name of the remote cluster.
pulsar.broker.replication.message.outgoing.size
The total number of messages bytes sent to the remote cluster through this replicator.
- Type: Counter
- Unit:
{By}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.pulsar.replication.remote.cluster.name
- The name of the remote cluster.
pulsar.broker.replication.message.backlog.count
The total number of messages in the backlog for this replicator.
- Type: Counter
- Unit:
{message}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.pulsar.replication.remote.cluster.name
- The name of the remote cluster.
pulsar.broker.replication.message.backlog.age
The age of the oldest message in the replicator backlog.
- Type: Gauge
- Unit:
s
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.pulsar.replication.remote.cluster.name
- The name of the remote cluster.
pulsar.broker.replication.message.expired.count
The total number of messages that expired for this replicator.
- Type: Counter
- Unit:
{message}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.pulsar.replication.remote.cluster.name
- The name of the remote cluster.
pulsar.broker.replication.message.dropped.count
The total number of messages dropped by this replicator.
- Type: Counter
- Unit:
{message}
- Attributes:
pulsar.domain
- The domain of the topic. Can be one of:persistent
non-persistent
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.pulsar.replication.remote.cluster.name
- The name of the remote cluster.
Schema Registry Metrics
pulsar.broker.request.schema_registry.duration
The duration of Schema Registry requests
- Type: Histogram
- Unit:
s
- Attributes:
pulsar.namespace
- The namespace referred by the Schema Registry requestpulsar.schema_registry.request
- The Schema Registry request typeget
list
put
delete
pulsar.schema_registry.response
- The Schema Registry response typesuccess
failure
pulsar.broker.operation.schema_registry.compatibility_check.count
The number of Schema Registry compatibility check operations performed by the broker.
- Type: Counter
- Unit:
{operation}
- Attributes:
pulsar.namespace
- The namespace referred by the compatibility check operationpulsar.schema_registry.compatibility_check.response
- The compatibility check response typecompatible
incompatible
HTTP Request Filter Metrics
pulsar.web.filter.rate_limit.request.count
Counter of HTTP requests processed by the rate limiting filter.
- Type: Counter
- Unit:
{request}
- Attributes:
pulsar.web.filter.rate_limit.result
- The result of the rate limiting operation. Can be one of:accepted
rejected
Transaction Coordinator Metrics
pulsar.broker.transaction.coordinator.transaction.count
The number of transactions handled by the coordinator.
- Type: UpDownCounter
- Unit:
{transaction}
- Attributes:
pulsar.transaction.coordinator.id
- The ID of the Pulsar transaction coordinator.pulsar.transaction.status
- The status of the Pulsar transaction. Can be one of:aborted
active
created
committed
timeout
pulsar.broker.transaction.coordinator.append.log.count
The number of transaction metadata entries appended by the coordinator.
- Type: Counter
- Unit:
{entry}
- Attributes:
pulsar.transaction.coordinator.id
- The ID of the Pulsar transaction coordinator.pulsar.transaction.status
- The status of the Pulsar transaction. Can be one of:aborted
active
created
committed
timeout
Transaction Pending Acknowledgment Store Metrics
pulsar.broker.transaction.pending.ack.store.transaction.count
The number of transactions handled by the persistent ack store.
- Type: Counter
- Unit:
{transaction}
- Attributes:
pulsar.tenant
- The topic tenant.pulsar.namespace
- The topic namespace.pulsar.topic
- The topic name.pulsar.partition.index
- The partition index of the topic. Present only if the topic is partitioned.pulsar.subscription.name
- The name of the Pulsar subscription.pulsar.transaction.status
- The Pulsar transaction status. Can be one of:aborted
committed
pulsar.transaction.pending.ack.store.operation.status
- The status of the pending acknowledgment store operation. Can be one of:failure
success
Authentication Metrics
pulsar.authentication.operation.count
The number of authentication operations.
- Type: Counter
- Unit:
{operation}
- Attributes:
pulsar.authentication.provider
- The name of the authentication provider class.pulsar.authentication.method
- The name of the authentication method.pulsar.authentication.result
- The authentication result. Can be one of:success
failure
pulsar.authentication.error
- The authentication error, if the result isfailure
.
Token Metrics
pulsar.authentication.token.expired.count
The total number of expired tokens.
- Type: Counter
- Unit:
{token}
pulsar.authentication.token.expiry.duration
The remaining time of expiring token in seconds.
- Type: Histogram
- Unit:
s
Replication Subscription Metrics
pulsar.broker.replication.subscription.snapshot.operation.count
The number of snapshot operations attempted.
- Type: Counter
- Unit:
{operation}
pulsar.broker.replication.subscription.snapshot.operation.duration
Time taken to complete a consistent snapshot operation across clusters.
- Type: Histogram
- Unit:
s
- Attributes:
pulsar.replication.subscription.snapshot.operation.result
- The result of the snapshot operation. Can be one of:success
timeout