Pulsar Metrics

Pulsar 以 Prometheus 的格式暴露如下度量值。 你可以用这些度量值监视你的集群。

可以使用下列类型的度量值:

  • Counter: 累计度量,代表一个单调递增的计数器。 值默认会增加。 你可以将值重置为零或重新启动你的集群。
  • Gauge: 本指标代表一个可以随意增加或减少的数值。
  • Histogram: 直方图样本观测 (通常是请求持续时间和响应大小) ,并将它们计入可配置的 bucket 中。
  • Summary: 与直方图类似的总结样本观察 (通常是请求持续时间和响应大小)。 但它同时也提供了总观测次数以及所有观测值的总和,它会在滑动的时间窗口上计算可配置的分位数。

ZooKeeper

ZooKeeper 度量值会暴露在端口 8000 的 “/metrics”下。 You can use a different port by configuring the metricsProvider.httpPort in conf/zookeeper.conf.

服务器度量值

配置项类型说明
zookeeper_server_znode_count计量表存储的 z-nodes 数量。
zookeeper_server_data_size_bytes计量表储存的所有 z-nodes 的总大小。
zookeeper_server_connections计量表当前打开的连接数量。
zookeeper_server_watches_count计量表注册的观察者数量。
zookeeper_server_ephemerals_count计量表临时 z-nodes 的数量。

请求度量值

配置项类型说明
zookeeper_server_requests计数器特定服务器收到请求的总数。
zookeeper_server_requests_latency_ms总结按毫秒计算的请求延迟。
Available labels: type (write, read).
  • write: 将数据写入 ZooKeeper 的请求。
  • read: 从 ZooKeeper 读数据的请求。

BookKeeper

BookKeeper 度量值会暴露在端口 8000 的”/metrics”下。 你可以通过更新 bookkeeper.conf 配置文件中的 prometheusStatsHttpPort 来更改端口。

服务器度量值

配置项类型说明
bookie_SERVER_STATUS计量表bookie 服务器的服务状态。
  • 1: bookie 正运行于可写入模式。
  • 0: bookie 正运行于只读模式。
bookkeeper_server_ADD_ENTRY_count计数器The total number of ADD_ENTRY requests received at the bookie. success 标签会被用于区分成功与失败。
bookkeeper_server_READ_ENTRY_count计数器The total number of READ_ENTRY requests received at the bookie. success 标签会被用于区分成功与失败。
bookie_WRITE_BYTES计数器The total number of bytes written to the bookie.
bookie_READ_BYTES计数器The total number of bytes read from the bookie.
bookkeeper_server_ADD_ENTRY_REQUEST总结The summary of request latency of ADD_ENTRY requests at the bookie. success 标签会被用于区分成功与失败。
bookkeeper_server_READ_ENTRY_REQUEST总结The summary of request latency of READ_ENTRY requests at the bookie. success 标签会被用于区分成功与失败。

日志度量值

配置项类型说明
bookie_journal_JOURNAL_SYNC_count计数器bookie 中日志 fsync 操作的总次数。 success 标签会被用于区分成功与失败。
bookie_journal_JOURNAL_QUEUE_SIZE计量表日志队列中待处理的请求总数。
bookie_journal_JOURNAL_FORCE_WRITE_QUEUE_SIZE计量表在强制写入队列中等待的强制写入 (fsync) 请求总数。
bookie_journal_JOURNAL_CB_QUEUE_SIZE计量表回调队列中待处理的回调总数。
bookie_journal_JOURNAL_ADD_ENTRY总结The summary of request latency of adding entries to the journal.
bookie_journal_JOURNAL_SYNC总结The summary of fsync latency of syncing data to the journal disk.

存储度量值

配置项类型说明
bookie_ledgers_count计量表bookie 中存储的 ledger 总数。
bookie_entries_count计量表bookie 中存储的条目总数。
bookie_write_cache_size计量表bookie 的写缓存大小(以字节为单位)。
bookie_read_cache_size计量表bookie 的读缓存大小(以字节为单位)。
bookie_DELETED_LEDGER_COUNT计数器bookie 被启动以来被删除的 ledger 总数。
bookie_ledger_writable_dirs计量表bookie 中可写入目录的数量。

Broker

broker 度量值会暴露在端口 8080 的”/metrics”下。 你可以通过更新 broker.conf 配置文件中的 webServicePort 来更改端口。

broker 暴露的所有度量值会带有 cluster=${pulsar_cluster} 标签。 Pulsar 集群的名称是 ${pulsar_cluster} 的值,也就是你在 broker.conf 文件中所设置的。

如下的度量值对 broker 可用:

命名空间度量值

命名空间度量值只有在 exposeTopicLevelMetricsInPrometheus 被设为 false 时才暴露。

所有命名空间度量值都带有以下标签:

  • cluster: cluster=${pulsar_cluster}. ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
  • namespace: namespace=${pulsar_namespace}. ${pulsar_namespace} 是命名空间名称。
配置项类型说明
pulsartopics_count计量表命名空间下由此 broker 拥有的 Pulsar 主题数。
pulsar_subscriptions_count计量表命名空间下由此 broker 服务的 Pulsar 订阅数。
pulsar_producers_count计量表命名空间下连接到此 broker 的活动生产者数。
pulsar_consumers_count计量表命名空间下连接到此 broker 的活动消费者数。
pulsar_rate_in计量表命名空间下的所有消息进入此 broker 的频率(消息/秒)。
pulsar_rate_out计量表命名空间下的所有消息从此 broker 发出的频率(消息/秒)。
pulsar_throughput_in计量表命名空间下数据进入此 broker 的总吞吐量(字节/秒)。
pulsar_throughput_out计量表命名空间下数据由此 broker 发出的总吞吐量(字节/秒)。
pulsar_storage_size计量表命名空间下由此 broker 拥有的主题的总存储大小 (字节)。
pulsar_storage_backlog_size计量表命名空间下由此 broker 拥有的总积压大小 (消息)。
pulsar_storage_offloaded_size计量表此命名空间中已卸载到层级存储的数据总量(字节)。
pulsar_storage_write_rate计量表此命名空间写入到存储的总消息批处理(条目)数 (消息批处理/秒)。
pulsar_storage_read_rate计量表此命名空间从存储中读取的总消息批处理(条目)数 (消息批处理/秒)。
pulsar_subscription_delayed计量表被延迟派发的总消息批处理(条目)数。
pulsar_storage_write_latency_le直方图The entry rate of a namespace that the storage write latency is smaller with a given threshold.
可用的阈值:
  • pulsarstorage_write_latency_le_0_5: <= 0.5ms
  • pulsar_storage_write_latency_le_1: <= 1ms
  • pulsar_storage_write_latency_le_5: <= 5ms
  • pulsar_storage_write_latency_le_10: <= 10ms
  • pulsar_storage_write_latency_le_20: <= 20ms
  • pulsar_storage_write_latency_le_50: <= 50ms
  • pulsar_storage_write_latency_le_100: <= 100ms
  • pulsar_storage_write_latency_le_200: <= 200ms
  • pulsar_storage_write_latency_le_1000: <= 1s
  • pulsar_storage_write_latency_le_overflow: > 1s
pulsar_entry_size_le直方图The entry rate of a namespace that the entry size is smaller with a given threshold.
Available thresholds:
  • pulsar_entry_size_le_128: <= 128 bytes
  • pulsar_entry_size_le_512: <= 512 bytes
  • pulsar_entry_size_le_1_kb: <= 1 KB
  • pulsar_entry_size_le_2_kb: <= 2 KB
  • pulsar_entry_size_le_4_kb: <= 4 KB
  • pulsar_entry_size_le_16_kb: <= 16 KB
  • pulsar_entry_size_le_100_kb: <= 100 KB
  • pulsar_entry_size_le_1_mb: <= 1 MB
  • pulsar_entry_size_le_overflow: > 1 MB

复制度量值

如果一个命名空间被配置为在多个Pulsar集群中复制,当replicationMetricsEnabled 启用时,相应的复制度量值也会暴露出来。

所有的复制度量值也带有 remoteCluster=${pulsar_remote_cluster} 标签。

配置项类型说明
pulsar_replication_rate_in计量表命名空间从远程集群进行复制的总消息频率(消息/秒)。
pulsar_replication_rate_out计量表命名空间复制到远程集群的总消息频率(消息/秒)。
pulsar_replication_throughput_in计量表命名空间从远程集群进行复制的总吞吐量(字节/秒)。
pulsar_replication_throughput_out计量表命名空间复制到远程集群的总吞吐量(字节/秒)。
pulsar_replication_backlog计量表命名空间复制到远程集群的总积压量(消息)。

主题度量值

主题度量值只有在 exposeTopicLevelMetricsInPrometheus 被设为 true 时才暴露。

所有主题度量值都带有以下标签:

  • cluster: cluster=${pulsar_cluster}. ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
  • namespace: namespace=${pulsar_namespace}. ${pulsar_namespace} 是命名空间名称。
  • topic: topic=${pulsar_topic}. ${pulsar_topic} 是主题名。
配置项类型说明
pulsarsubscriptions_count计量表主题下由此 broker 服务的 Pulsar 订阅数。
pulsar_producers_count计量表主题下连接到此 broker 的活动生产者数。
pulsar_consumers_count计量表主题下连接到此 broker 的活动消费者数。
pulsar_rate_in计量表主题下的所有消息进入此 broker 的频率(消息/秒)。
pulsar_rate_out计量表主题下的所有消息从此 broker 发出的频率(消息/秒)。
pulsar_throughput_in计量表主题下数据进入此 broker 的总吞吐量(字节/秒)。
pulsar_throughput_out计量表主题下数据由此 broker 发出的总吞吐量(字节/秒)。
pulsar_storage_size计量表主题下由此 broker 拥有的主题的总存储大小 (字节)。
pulsar_storage_backlog_size计量表主题下由此 broker 拥有的总积压大小 (消息)。
pulsar_storage_offloaded_size计量表此主题中已卸载到层级存储的数据总量(字节)。
pulsar_storage_backlog_quota_limit计量表此主题中限制积压定额的数据总量(字节)。
pulsar_storage_write_rate计量表此主题写入到存储的总消息批处理(条目)数 (消息批处理/秒)。
pulsar_storage_read_rate计量表此主题从存储中读取的总消息批处理(条目)数 (消息批处理/秒)。
pulsar_subscription_delayed计量表被延迟派发的总消息批处理(条目)数。
pulsar_storage_write_latency_le直方图The entry rate of a topic that the storage write latency is smaller with a given threshold.
可用的阈值:
  • pulsarstorage_write_latency_le_0_5: <= 0.5ms
  • pulsar_storage_write_latency_le_1: <= 1ms
  • pulsar_storage_write_latency_le_5: <= 5ms
  • pulsar_storage_write_latency_le_10: <= 10ms
  • pulsar_storage_write_latency_le_20: <= 20ms
  • pulsar_storage_write_latency_le_50: <= 50ms
  • pulsar_storage_write_latency_le_100: <= 100ms
  • pulsar_storage_write_latency_le_200: <= 200ms
  • pulsar_storage_write_latency_le_1000: <= 1s
  • pulsar_storage_write_latency_le_overflow: > 1s
pulsar_entry_size_le直方图The entry rate of a topic that the entry size is smaller with a given threshold.
Available thresholds:
  • pulsar_entry_size_le_128: <= 128 bytes
  • pulsar_entry_size_le_512: <= 512 bytes
  • pulsar_entry_size_le_1_kb: <= 1 KB
  • pulsar_entry_size_le_2_kb: <= 2 KB
  • pulsar_entry_size_le_4_kb: <= 4 KB
  • pulsar_entry_size_le_16_kb: <= 16 KB
  • pulsar_entry_size_le_100_kb: <= 100 KB
  • pulsar_entry_size_le_1_mb: <= 1 MB
  • pulsar_entry_size_le_overflow: > 1 MB
pulsar_in_bytes_total计数器The total number of bytes received for this topic
pulsar_in_messages_total计数器The total number of messages received for this topic
pulsar_out_bytes_total计数器The total number of bytes read from this topic
pulsar_out_messages_total计数器The total number of messages read from this topic

复制度量值

如果主题所属的命名空间被配置为在多个Pulsar集群中复制,当replicationMetricsEnabled 启用时,相应的复制度量值也会暴露出来。

所有的复制度量值带有 remoteCluster=${pulsar_remote_cluster} 标签。

配置项类型说明
pulsar_replication_rate_in计量表主题从远程集群进行复制的总消息频率(消息/秒)。
pulsar_replication_rate_out计量表主题复制到远程集群的总消息频率(消息/秒)。
pulsar_replication_throughput_in计量表主题从远程集群进行复制的总吞吐量(字节/秒)。
pulsar_replication_throughput_out计量表主题复制到远程集群的总吞吐量(字节/秒)。
pulsar_replication_backlog计量表主题复制到远程集群的总积压量(消息)。

ManagedLedgerCache 度量值

所有 ManagedLedgerCache 度量值都带有以下标签:

  • 集群: cluster=${pulsar_cluster}。 ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
配置项类型说明
pulsar_ml_cache_evictions计量表在过去 1 分钟内的缓存驱逐数。
pulsar_ml_cache_hits_rate计量表每秒缓存命中数。
pulsar_ml_cache_hits_throughput计量表从缓存中取出的数据量,以字节/秒为单位
pulsar_ml_cache_misses_rate计量表每秒缓存失效数
pulsar_ml_cache_misses_throughput计量表从缓存中取出的数据量,以字节/秒为单位
pulsar_ml_cache_pool_active_allocations计量表直接场地(direct arena)中当前活动的分配数
pulsar_ml_cache_pool_active_allocations_huge计量表直接场地(direct arena)中当前活动的大型(huge)分配数
pulsar_ml_cache_pool_active_allocations_normal计量表直接场地(direct arena)中当前活动的正常(normal)分配数
pulsar_ml_cache_pool_active_allocations_small计量表直接场地(direct arena)中当前活动的小型(small)分配数
pulsar_ml_cache_pool_active_allocations_tiny计量表直接场地(direct arena)中当前活动的超小型(tiny)分配数
pulsar_ml_cache_pool_allocated计量表直接场地(direct arena)中为 chunk 列表分配的总内存
pulsar_ml_cache_pool_used计量表直接场地(direct arena)中 chunk 列表使用的总内存
pulsar_ml_cache_used_size计量表用于存储条目负载的字节大小
pulsar_ml_count计量表当前打开的托管 ledger 数量。

ManagedLedger 度量值

所有 managedLedger 度量值都带有以下标签:

  • 集群: cluster=${pulsar_cluster}。 ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
  • 命名空间: namespace=${pulsar_namespace}。 ${pulsar_namespace} 是命名空间名称。
  • 分位数: quantile=${quantile}. 分位数是只提供给 直方图 的类型度量值,代表了给定 Bucket 的阈值。
配置项类型说明
pulsar_ml_AddEntryBytesRate计量表添加消息的字节/秒频率
pulsar_ml_AddEntryErrors计量表失败的 addEntry 请求数
pulsar_ml_AddEntryLatencyBuckets直方图给定分位数(阈值)的 ledger 添加条目延迟 。
可用的分位数:
  • quantile=”0.0_0.5” 是 AddEntryLatency 介于 (0.0ms, 0.5ms]
  • quantile=”0.5_1.0” 是 AddEntryLatency 介于 (0.5ms, 1.0ms]
  • quantile=”1.0_5.0” 是 AddEntryLatency 介于 (1ms, 5ms]
  • quantile=”5.0_10.0” 是 AddEntryLatency 介于 (5ms, 10ms]
  • quantile=”10.0_20.0” 是 AddEntryLatency 介于 (10ms, 20ms]
  • quantile=”20.0_50.0” 是 AddEntryLatency 介于 (20ms, 50ms]
  • quantile=”50.0_100.0” 是 AddEntryLatency 介于 (50ms, 100ms]
  • quantile=”100.0_200.0” 是 AddEntryLatency 介于 (100ms, 200ms]
  • quantile=”200.0_1000.0” 是 AddEntryLatency 介于 (200ms, 1s]
pulsar_ml_AddEntryLatencyBuckets_OVERFLOW计量表The add entry latency > 1s
pulsar_ml_AddEntryMessagesRate计量表The msg/s rate of messages added
pulsar_ml_AddEntrySucceed计量表The number of addEntry requests that succeeded
pulsar_ml_EntrySizeBuckets直方图The add entry size of a ledger with given quantile.
Available quantile:
  • quantile=”0.0_128.0” 是 EntrySize 介于 (0byte, 128byte]
  • quantile=”128.0_512.0” 是 EntrySize 介于 (128byte, 512byte]
  • quantile=”512.0_1024.0” 是 EntrySize 介于 (512byte, 1KB]
  • quantile=”1024.0_2048.0” 是 EntrySize 介于 (1KB, 2KB]
  • quantile=”2048.0_4096.0” 是 EntrySize 介于 (2KB, 4KB]
  • quantile=”4096.0_16384.0” 是 EntrySize 介于 (4KB, 16KB]
  • quantile=”16384.0_102400.0” 是 EntrySize 介于 (16KB, 100KB]
  • quantile=”102400.0_1232896.0” 是 EntrySize 介于 (100KB, 1MB]
pulsar_ml_EntrySizeBuckets_OVERFLOW计量表The add entry size > 1MB
pulsar_ml_LedgerSwitchLatencyBuckets直方图The ledger switch latency with given quantile.
可用的分位数:
  • quantile=”0.0_0.5” 是 EntrySize 介于 (0ms, 0.5ms]
  • quantile=”0.5_1.0” 是 EntrySize 介于 (0.5ms, 1ms]
  • quantile=”1.0_5.0” 是 EntrySize 介于 (1ms, 5ms]
  • quantile=”5.0_10.0” 是 EntrySize 介于 (5ms, 10ms]
  • quantile=”10.0_20.0” 是 EntrySize 介于 (10ms, 20ms]
  • quantile=”20.0_50.0” 是 EntrySize 介于 (20ms, 50ms]
  • quantile=”50.0_100.0” 是 EntrySize 介于 (50ms, 100ms]
  • quantile=”100.0_200.0” 是 EntrySize 介于 (100ms, 200ms]
  • quantile=”200.0_1000.0” 是 EntrySize 介于 (200ms, 1000ms]
pulsar_ml_LedgerSwitchLatencyBuckets_OVERFLOW计量表The ledger switch latency > 1s
pulsar_ml_MarkDeleteRate计量表The rate of mark-delete ops/s
pulsar_ml_NumberOfMessagesInBacklog计量表The number of backlog messages for all the consumers
pulsar_ml_ReadEntriesBytesRate计量表The bytes/s rate of messages read
pulsar_ml_ReadEntriesErrors计量表The number of readEntries requests that failed
pulsar_ml_ReadEntriesRate计量表The msg/s rate of messages read
pulsar_ml_ReadEntriesSucceeded计量表The number of readEntries requests that succeeded
pulsar_ml_StoredMessagesSize计量表The total size of the messages in active ledgers (accounting for the multiple copies stored)

Managed cursor acknowledgment state

The acknowledgment state is persistent to the ledger first. When the acknowledgment state fails to be persistent to the ledger, they are persistent to ZooKeeper. To track the stats of acknowledgment, you can configure the metrics for the managed cursor.

All the cursor acknowledgment state metrics are labelled with the following labels:

  • namespace: namespace=${pulsar_namespace}. ${pulsar_namespace} 是命名空间名称。

  • ledger_name: ledger_name=${pulsar_ledger_name}. ${pulsar_ledger_name} is the ledger name.

  • cursor_name: ledger_name=${pulsar_cursor_name}. ${pulsar_cursor_name} is the cursor name.

Name |Type |Description |—-|—-|—- brk_ml_cursor_persistLedgerSucceed(namespace=””, ledger_name=””, cursor_name:””)|Gauge|The number of acknowledgment states that is persistent to a ledger.| brk_ml_cursor_persistLedgerErrors(namespace=””, ledger_name=””, cursor_name:””)|Gauge|The number of ledger errors occurred when acknowledgment states fail to be persistent to the ledger.| brk_ml_cursor_persistZookeeperSucceed(namespace=””, ledger_name=””, cursor_name:””)|Gauge|The number of acknowledgment states that is persistent to ZooKeeper. brk_ml_cursor_persistZookeeperErrors(namespace=””, ledger_name=””, cursor_name:””)|Gauge|The number of ledger errors occurred when acknowledgment states fail to be persistent to ZooKeeper. brk_ml_cursor_nonContiguousDeletedMessagesRange(namespace=””, ledger_name=””, cursor_name:””)|Gauge|The number of non-contiguous deleted messages ranges.

LoadBalancing 度量值

所有负载均衡度量值都带有以下标签:

  • 集群: cluster=${pulsar_cluster}。 ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
  • broker: broker=${broker}. ${broker} 是 broker 的 IP 地址
  • 度量值: metric=”loadBalancing”。
配置项类型说明
pulsar_lb_bandwidth_in_usage计量表正在使用的 broker 带宽
pulsar_lb_bandwidth_out_usage计量表不在使用的 broker 带宽
pulsar_lb_cpu_usage计量表broker 的 cpu 使用量
pulsar_lb_directMemory_usage计量表broker 进程的直接内存使用量
pulsar_lb_memory_usage计量表broker 进程的内存使用量

BundleUnloading 度量值

所有 bundleUnloading 度量值都带有以下标签:

  • 集群: cluster=${pulsar_cluster}。 ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
  • 度量值: metric=”bundleUnloading”。
配置项类型说明
pulsar_lb_unload_broker_count计数器在本次 bundle 卸载中卸载的 broker 计数
pulsar_lb_unload_bundle_count计数器在本次 bundle 卸载中卸载的 bundle 计数

BundleSplit 度量值

所有 bundleUnloading 度量值都带有以下标签:

  • 集群: cluster=${pulsar_cluster}。 ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
  • 度量值: metric=”bundlesSplit”。
配置项类型说明
pulsar_lb_bundles_split_count计数器在本次 bundle 切分检查中切分的 bundle 计数

Subscription metrics

订阅度量值只有在 exposeTopicLevelMetricsInPrometheus 被设为 true 时才暴露。

All the subscription metrics are labelled with the following labels:

  • cluster: cluster=${pulsar_cluster}. ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
  • namespace: namespace=${pulsar_namespace}. ${pulsar_namespace} 是命名空间名称。
  • topic: topic=${pulsar_topic}. ${pulsar_topic} 是主题名。
  • subscription: subscription=${subscription}. ${subscription} is the topic subscription name.
配置项类型说明
pulsar_subscription_back_log计量表The total backlog of a subscription (messages).
pulsar_subscription_delayed计量表The total number of messages are delayed to be dispatched for a subscription (messages).
pulsar_subscription_msg_rate_redeliver计量表The total message rate for message being redelivered (messages/second).
pulsar_subscription_unacked_messages计量表The total number of unacknowledged messages of a subscription (messages).
pulsar_subscription_blocked_on_unacked_messages计量表Indicate whether a subscription is blocked on unacknowledged messages or not.
  • 1 means the subscription is blocked on waiting unacknowledged messages to be acked.
  • 0 means the subscription is not blocked on waiting unacknowledged messages to be acked.
pulsar_subscription_msg_rate_out计量表The total message dispatch rate for a subscription (messages/second).
pulsar_subscription_msg_throughput_out计量表The total message dispatch throughput for a subscription (bytes/second).

Consumer metrics

消费者度量值只有当 exposeTopicLevelMetricsInPrometheusexposeConsumerLevelMetricsInPrometheus 都设为 true 时才暴露。

All the consumer metrics are labelled with the following labels:

  • cluster: cluster=${pulsar_cluster}. ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
  • namespace: namespace=${pulsar_namespace}. ${pulsar_namespace} 是命名空间名称。
  • topic: topic=${pulsar_topic}. ${pulsar_topic} 是主题名。
  • subscription: subscription=${subscription}. ${subscription} is the topic subscription name.
  • consumer_name: consumer_name=${consumer_name}. ${consumer_name} is the topic consumer name.
  • consumer_id: consumer_id=${consumer_id}. ${consumer_id} is the topic consumer id.
配置项类型说明
pulsar_consumer_msg_rate_redeliver计量表The total message rate for message being redelivered (messages/second).
pulsar_consumer_unacked_messages计量表The total number of unacknowledged messages of a consumer (messages).
pulsar_consumer_blocked_on_unacked_messages计量表Indicate whether a consumer is blocked on unacknowledged messages or not.
  • 1 means the consumer is blocked on waiting unacknowledged messages to be acked.
  • 0 means the consumer is not blocked on waiting unacknowledged messages to be acked.
pulsar_consumer_msg_rate_out计量表The total message dispatch rate for a consumer (messages/second).
pulsar_consumer_msg_throughput_out计量表The total message dispatch throughput for a consumer (bytes/second).
pulsar_consumer_available_permits计量表The available permits for for a consumer.

托管的 ledger bookie 客户端度量值

所有的托管 ledger bookie 客户端度量值都带有以下标签:

  • cluster: cluster=${pulsar_cluster}. ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
配置项类型说明
pulsarmanagedLedger_client_bookkeeper_ml_scheduler_completed_tasks计量表调度程序执行器已执行完成的任务数。
broker.confmanagedLedgerNumerThrad 配置的调度器线程数所决定的度量值数。
pulsarmanagedLedger_client_bookkeeper_ml_scheduler_queue计量表在调度器执行者队列中排队的任务数量。
broker.confmanagedLedgerNumerThrad 配置的调度器线程数所决定的度量值数。
pulsarmanagedLedger_client_bookkeeper_ml_scheduler_total_tasks计量表调度程序执行器接收的任务数。
broker.confmanagedLedgerNumerThrad 配置的调度器线程数所决定的度量值数。
pulsarmanagedLedger_client_bookkeeper_ml_workers_completed_tasks计量表worker 执行器已执行完成的任务数。
broker.confmanagedLedgerNumWorkerThreads 配置的 worker 任务线程数所决定的度量值数。
pulsarmanagedLedger_client_bookkeeper_ml_workers_queue计量表在 worker 执行者队列中排队的任务数量。
broker.confmanagedLedgerNumWorkerThreads 配置的调度器线程数所决定的度量值数。
pulsarmanagedLedger_client_bookkeeper_ml_workers_total_tasks计量表worker 执行器接收的任务数。
broker.confmanagedLedgerNumWorkerThreads 配置的 worker 线程数所决定的度量值数。
pulsar_managedLedger_client_bookkeeper_ml_scheduler_task_execution总结按毫秒计算的调度器任务执行延迟。
pulsar_managedLedger_client_bookkeeper_ml_scheduler_task_queued总结按毫秒计算的调度器任务排队延迟。
pulsar_managedLedger_client_bookkeeper_ml_workers_task_execution总结按毫秒计算的 worker 任务执行延迟。
pulsar_managedLedger_client_bookkeeper_ml_workers_task_queued总结按毫秒计算的 worker 任务排队延迟。

Token metrics

All the token metrics are labelled with the following labels:

  • cluster: cluster=${pulsar_cluster}. ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
配置项类型说明
pulsar_expired_token_count计数器The number of expired tokens in Pulsar.
pulsar_expiring_token_minutes直方图The remaining time of expiring tokens in minutes.

Authentication metrics

All the authentication metrics are labelled with the following labels:

  • cluster: cluster=${pulsar_cluster}. ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
  • provider_name: provider_name=${provider_name}. ${provider_name} is the class name of the authentication provider.
  • auth_method: auth_method=${auth_method}. ${auth_method} is the authentication method of the authentication provider.
  • reason: reason=${reason}. ${reason} is the reason for failing authentication operation. (This label is only for pulsar_authentication_failures_count.)
配置项类型说明
pulsar_authentication_success_count计数器The number of successful authentication operations.
pulsar_authentication_failures_count计数器The number of failing authentication operations.

Connection metrics

All the connection metrics are labelled with the following labels:

  • cluster: cluster=${pulsar_cluster}. ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
  • broker: broker=${advertised_address}. ${advertised_address} is the advertised address of the broker.
  • metric: metric=${metric}. ${metric} is the connection metric collective name.
配置项类型说明
pulsar_active_connections计量表The number of active connections.
pulsar_connection_created_total_count计量表The total number of connections.
pulsar_connection_create_success_count计量表The number of successfully created connections.
pulsar_connection_create_fail_count计量表The number of failed connections.
pulsar_connection_closed_total_count计量表The total number of closed connections.
pulsar_broker_throttled_connections计量表The number of throttled connections.
pulsar_broker_throttled_connections_global_limit计量表The number of throttled connections because of per-connection limit.

Pulsar Functions

所有 Pulsar Functions 度量值都带有以下标签:

  • cluster: cluster=${pulsar_cluster}. ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
  • namespace: namespace=${pulsar_namespace}. ${pulsar_namespace} 是命名空间名称。
配置项类型说明
pulsarfunction_processed_successfully_total计数器The total number of messages processed successfully.
pulsar_function_processed_successfully_total_1min计数器The total number of messages processed successfully in the last 1 minute.
pulsar_function_system_exceptions_total计数器The total number of system exceptions.
pulsar_function_system_exceptions_total_1min计数器The total number of system exceptions in the last 1 minute.
pulsar_function_user_exceptions_total计数器The total number of user exceptions.
pulsar_function_user_exceptions_total_1min计数器The total number of user exceptions in the last 1 minute.
pulsar_function_process_latency_ms总结The process latency in milliseconds.
pulsar_function_process_latency_ms_1min总结The process latency in milliseconds in the last 1 minute.
pulsar_function_last_invocation计量表该函数最后一次调用的时间戳。
pulsar_function_received_total计数器The total number of messages received from source.
pulsar_function_received_total_1min计数器The total number of messages received from source in the last 1 minute.
pulsar_function_user_metricSummaryThe user-defined metrics.

Connectors

All the Pulsar connector metrics are labelled with the following labels:

  • cluster: cluster=${pulsar_cluster}. ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
  • namespace: namespace=${pulsar_namespace}. ${pulsar_namespace} 是命名空间名称。

Connector metrics contain source metrics and sink metrics.

  • Source metrics

    配置项类型说明

pulsar_source_written_total|Counter|The total number of records written to a Pulsar topic. pulsar_source_written_total_1min|Counter|The total number of records written to a Pulsar topic in the last 1 minute. pulsar_source_received_total|Counter|The total number of records received from source. pulsar_source_received_total_1min|Counter|The total number of records received from source in the last 1 minute. pulsar_source_last_invocation|Gauge|The timestamp of the last invocation of the source. pulsar_source_source_exception|Gauge|The exception from a source. pulsar_source_source_exceptions_total|Counter|The total number of source exceptions. pulsar_source_source_exceptions_total_1min |Counter|The total number of source exceptions in the last 1 minute. pulsar_source_system_exception|Gauge|The exception from system code. pulsar_source_system_exceptions_total|Counter|The total number of system exceptions. pulsar_source_system_exceptions_total_1min|Counter|The total number of system exceptions in the last 1 minute. pulsar_source_user_metric_ | Summary|The user-defined metrics.

  • Sink metrics

    配置项类型说明

pulsar_sink_written_total|Counter| The total number of records processed by a sink. pulsar_sink_written_total_1min|Counter| The total number of records processed by a sink in the last 1 minute. pulsar_sink_received_total_1min|Counter| The total number of messages that a sink has received from Pulsar topics in the last 1 minute. pulsar_sink_received_total|Counter| The total number of records that a sink has received from Pulsar topics. pulsar_sink_last_invocation|Gauge|The timestamp of the last invocation of the sink. pulsar_sink_sink_exception|Gauge|The exception from a sink. pulsar_sink_sink_exceptions_total|Counter|The total number of sink exceptions. pulsar_sink_sink_exceptions_total_1min |Counter|The total number of sink exceptions in the last 1 minute. pulsar_sink_system_exception|Gauge|The exception from system code. pulsar_sink_system_exceptions_total|Counter|The total number of system exceptions. pulsar_sink_system_exceptions_total_1min|Counter|The total number of system exceptions in the last 1 minute. pulsar_sink_user_metric_ | Summary|The user-defined metrics.

代理

所有代理度量值都带有以下标签:

  • cluster: cluster=${pulsar_cluster}. ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
  • kubernetes_pod_name: kubernetes_pod_name=${kubernetes_pod_name}. ${kubernetes_pod_name} 是 kubernetes pod 名称。
配置项类型说明
pulsar_proxy_active_connections计量表代理中当前活动的连接数量。
pulsar_proxy_new_connections计数器代理中正在打开的连接的计数器。
pulsar_proxy_rejected_connections计数器由于阈值而拒绝的连接计数器。
pulsar_proxy_binary_ops计数器代理操作计数器。
pulsar_proxy_binary_bytes计数器代理字节计数器。

Pulsar SQL Worker

配置项类型说明
split_bytes_read计数器从 BookKeeper 读取的字节数。
split_num_messages_deserialized计数器反序列化的消息数量。
split_num_record_deserialized计数器反序列化的记录数量。
split_bytes_read_per_query总结每个查询中读取的字节总数.
split_entry_deserialize_time总结用于对条目进行反序列化的时间。
split_entry_deserialize_time_per_query总结用于对每个查询中的条目进行反序列化的时间。
split_entry_queue_dequeue_wait_time总结由于队列为空而等待从条目队列获取条目花费的时间。
split_entry_queue_dequeue_wait_time_per_query总结从每个查询的条目队列中等待获取条目的总时间。
split_message_queue_dequeue_wait_time_per_query总结每个查询中由于队列为空而等待从消息队列中移除所花的时间。
split_message_queue_enqueue_wait_time总结由于消息队列已满,等待进入消息队列的时间。
split_message_queue_enqueue_wait_time_per_query总结每个查询中由于消息队列已满,等待进入消息队列的时间。
split_num_entries_per_batch总结每个批处理的条目数。
split_num_entries_per_query总结每个查询的条目数。
split_num_messages_deserialized_per_entry总结每个条目反序列化的消息数量。
split_num_messages_deserialized_per_query总结每个查询反序列化的消息数量。
split_read_attempts总结读取尝试次数(如果队列已满会失败)。
split_read_attempts_per_query总结每个查询的读取尝试次数。
split_read_latency_per_batch总结每个批处理的读取延迟。
split_read_latency_per_query总结每个查询的总读取延迟。
split_record_deserialize_time总结将消息反序列化到记录花费的时间。 例如,Avro、JSON 等等。
split_record_deserialize_time_per_query总结每个查询将消息反序列化到记录花费的时间。
split_total_execution_time总结The total execution time.

Pulsar transaction

All the transaction metrics are labelled with the following labels:

  • cluster: cluster=${pulsar_cluster}. ${pulsar_cluster} 就是你在 broker.conf 中配置的集群名称。
  • coordinator_id: coordinator_id=${coordinator_id}. ${coordinator_id} is the coordinator id.
配置项类型说明
pulsartxn_active_count计量表Number of active transactions.
pulsar_txn_created_count计数器Number of created transactions.
pulsar_txn_committed_count计数器Number of committed transactions.
pulsar_txn_aborted_count计数器Number of aborted transactions of this coordinator.
pulsar_txn_timeout_count计数器Number of timeout transactions.
pulsar_txn_append_log_count计数器Number of append transaction logs.
pulsar_txn_execution_latency_le*直方图Transaction execution latency.
Available latencies are as below:
  • latency=”10” is TransactionExecutionLatency between (0ms, 10ms]
  • latency=”20” is TransactionExecutionLatency between (10ms, 20ms]
  • latency=”50” is TransactionExecutionLatency between (20ms, 50ms]
  • latency=”100” is TransactionExecutionLatency between (50ms, 100ms]
  • latency=”500” is TransactionExecutionLatency between (100ms, 500ms]
  • latency=”1000” is TransactionExecutionLatency between (500ms, 1000ms]
  • latency=”5000” is TransactionExecutionLatency between (1s, 5s]
  • latency=”15000” is TransactionExecutionLatency between (5s, 15s]
  • latency=”30000” is TransactionExecutionLatency between (15s, 30s]
  • latency=”60000” is TransactionExecutionLatency between (30s, 60s]
  • latency=”300000” is TransactionExecutionLatency between (1m,5m]
  • latency=”1500000” is TransactionExecutionLatency between (5m,15m]
  • latency=”3000000” is TransactionExecutionLatency between (15m,30m]
  • latency=”overflow” is TransactionExecutionLatency between (30m,∞]