7.7. 监控 Debezium PostgreSQL 连接器性能


Debezium PostgreSQL 连接器除了对 Zookeeper、Kafka 和 Kafka Connect 提供的 JMX 指标的内置支持外,还提供两种类型的指标。

  • 快照指标 提供有关执行快照时连接器操作的信息。
  • 流指标 在连接器捕获更改时提供有关连接器操作的信息,并流传输更改事件记录。

Debezium 监控文档 提供了有关如何使用 JMX 公开这些指标的详细信息。

7.7.1. 在 PostgreSQL 数据库的快照期间监控 Debezium

MBeandebezium.postgres:type=connector-metrics,context=snapshot,server= <postgresql.server.name>

除非快照操作处于活跃状态,否则快照指标不会被公开,或者快照自上次连接器启动后发生。

下表列出了可用的 shapshot 指标。

属性类型描述

LastEvent

字符串

连接器读取的最后一个快照事件。

MilliSecondsSinceLastEvent

long

连接器读取和处理最新事件以来的毫秒数。

TotalNumberOfEventsSeen

long

此连接器从上次启动或重置后看到的事件总数。

NumberOfEventsFiltered

long

由连接器中配置的 include/exclude 列表过滤规则过滤的事件数。

CapturedTables

string[]

连接器捕获的表列表。

QueueTotalCapacity

int

用于在快照和主 Kafka Connect 循环之间传递事件的队列长度。

QueueRemainingCapacity

int

用于在快照和主 Kafka Connect 循环之间传递事件的队列的空闲容量。

TotalTableCount

int

包括在快照中的表的总数。

RemainingTableCount

int

快照要复制的表数。

SnapshotRunning

布尔值

快照是否启动。

SnapshotPaused

布尔值

快照是否暂停。

SnapshotAborted

布尔值

快照是否中止。

SnapshotCompleted

布尔值

快照是否完成。

SnapshotDurationInSeconds

long

快照目前花费的秒数,即使未完成也是如此。还包括快照暂停时的时间。

SnapshotPausedDurationInSeconds

long

快照暂停的秒数。如果快照暂停多次,则暂停的时间会增加。

RowsScanned

Map<String, Long>

包含快照中每个表扫描的行数的映射。表在处理期间逐步添加到映射中。更新每个 10,000 行扫描,并在完成表后更新。

MaxQueueSizeInBytes

long

队列的最大缓冲区(以字节为单位)。如果 max.queue.size.in.bytes 设置为正长值,则此指标可用。

CurrentQueueSizeInBytes

long

队列中记录的当前卷(以字节为单位)。

在执行增量快照时,连接器还提供以下额外快照指标:

属性类型描述

ChunkId

字符串

当前快照块的标识符。

ChunkFrom

字符串

定义当前块的主键集的下限。

ChunkTo

字符串

定义当前块的主密钥集的上限。

TableFrom

字符串

当前快照表的主键集的下限。

TableTo

字符串

当前快照表的主键集的上限。

7.7.2. 监控 Debezium PostgreSQL 连接器记录流

MBeandebezium.postgres:type=connector-metrics,context=streaming,server= <postgresql.server.name>

下表列出了可用的流指标。

属性类型描述

LastEvent

字符串

连接器读取的最后一个流事件。

MilliSecondsSinceLastEvent

long

连接器读取和处理最新事件以来的毫秒数。

TotalNumberOfEventsSeen

long

此连接器自上次开始或指标重置以来看到的事件总数。

TotalNumberOfCreateEventsSeen

long

此连接器自上次开始或指标重置以来看到的创建事件总数。

TotalNumberOfUpdateEventsSeen

long

此连接器自上次开始或指标重置以来看到的更新事件总数。

TotalNumberOfDeleteEventsSeen

long

此连接器自上次开始或指标重置以来看到的删除事件总数。

NumberOfEventsFiltered

long

由连接器中配置的 include/exclude 列表过滤规则过滤的事件数。

CapturedTables

string[]

连接器捕获的表列表。

QueueTotalCapacity

int

用于在流和主 Kafka Connect 循环之间传递事件的队列长度。

QueueRemainingCapacity

int

用于在流和主 Kafka Connect 循环之间传递事件的队列的空闲容量。

Connected

布尔值

表示连接器当前是否连接到数据库服务器的标记。

MilliSecondsBehindSource

long

最后一次更改事件时间戳和连接器处理之间毫秒的数量。该值将限制运行数据库服务器和连接器的机器上时钟之间的差别。

NumberOfCommittedTransactions

long

已提交的已处理的事务数量。

SourceEventPosition

Map<String, String>

最后一次接收的事件的协调。

LastTransactionId

字符串

最后一次处理的事务的事务标识符。

MaxQueueSizeInBytes

long

队列的最大缓冲区(以字节为单位)。如果 max.queue.size.in.bytes 设置为正长值,则此指标可用。

CurrentQueueSizeInBytes

long

队列中记录的当前卷(以字节为单位)。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.