本文主要是介绍Debezium日常分享系列之:Debezium2.5稳定版本之Monitoring,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Debezium日常分享系列之:Debezium2.5稳定版本之Monitoring
- 一、Snapshot metrics
- 二、Streaming metrics
- 三、Schema history metrics
Debezium系列之:安装jmx导出器监控debezium指标
除了 Zookeeper、Kafka 和 Kafka Connect 提供的对 JMX 指标的内置支持之外,Debezium MySQL 连接器还提供三种类型的指标。
- 快照指标提供有关执行快照时连接器操作的信息。
- 当连接器读取二进制日志时,流指标提供有关连接器操作的信息。
- 架构历史记录指标提供有关连接器架构历史记录状态的信息。
一、Snapshot metrics
MBean 为 debezium.mysql:type=connector-metrics,context=snapshot,server=<topic.prefix>。
除非快照操作处于活动状态,或者自上次连接器启动以来已发生快照,否则不会公开快照指标。
下表列出了可用的快照指标。
属性 | 类型 | 描述 |
---|---|---|
LastEvent | string | 连接器读取的最后一个快照事件。 |
MilliSecondsSinceLastEvent | long | 自连接器读取并处理最近事件以来的毫秒数。 |
TotalNumberOfEventsSeen | long | 自上次启动或重置以来此连接器发生的事件总数。 |
NumberOfEventsFiltered | long | 已按连接器上配置的包含/排除列表过滤规则过滤的事件数。 |
CapturedTables | string[] | 连接器捕获的表的列表。 |
QueueTotalCapacity | int | 用于在快照器和主 Kafka Connect 循环之间传递事件的队列长度。 |
QueueRemainingCapacity | int | 用于在快照器和主 Kafka Connect 循环之间传递事件的队列的可用容量。 |
TotalTableCount | int | 快照中包含的表总数。 |
RemainingTableCount | int | 快照尚未复制的表的数量。 |
SnapshotRunning | boolean | 快照是否已启动。 |
SnapshotPaused | boolean | 快照是否暂停。 |
SnapshotAborted | boolean | 快照是否被中止。 |
SnapshotCompleted | boolean | 快照是否完成。 |
SnapshotDurationInSeconds | long | 到目前为止快照所用的总秒数(即使尚未完成)。还包括快照暂停的时间。 |
SnapshotPausedDurationInSeconds | long | 快照暂停的总秒数。如果快照暂停多次,则暂停时间会累加。 |
RowsScanned | Map<String, Long> | 包含快照中每个表扫描的行数的映射。表在处理过程中逐渐添加到映射中。每扫描 10,000 行并完成表格后更新一次。 |
MaxQueueSizeInBytes | long | 队列的最大缓冲区(以字节为单位)。如果 max.queue.size.in.bytes 设置为正 long 值,则此指标可用。 |
CurrentQueueSizeInBytes | long | 队列中的当前记录量(以字节为单位)。 |
执行增量快照时,连接器还提供以下附加快照指标:
属性 | 类型 | 描述 |
---|---|---|
ChunkId | string | 当前快照块的标识符。 |
ChunkFrom | string | 定义当前块的主键集的下界。 |
ChunkTo | string | 定义当前块的主键集的上限。 |
TableFrom | string | 当前快照表的主键集的下界。 |
TableTo | string | 当前快照表的主键集的上限。 |
Debezium MySQL 连接器还提供 HoldingGlobalLock 自定义快照指标。该指标设置为一个布尔值,指示连接器当前是否持有全局或表写入锁定。
二、Streaming metrics
仅当启用 binlog 事件缓冲时,事务相关属性才可用。有关更多详细信息,请参阅高级连接器配置属性中的 binlog.buffer.size。 :水平偏移:+1
MBean 为 debezium.mysql:type=connector-metrics,context=streaming,server=<topic.prefix>。
下表列出了可用的流指标。
属性 | 类型 | 描述 |
---|---|---|
LastEvent | string | 连接器读取的最后一个流事件。 |
MilliSecondsSinceLastEvent | long | 自连接器读取并处理最近事件以来的毫秒数。 |
TotalNumberOfEventsSeen | long | 自上次启动或指标重置以来,该连接器已经看到的事件总数。 |
TotalNumberOfCreateEventsSeen | long | 自上次启动或指标重置以来此连接器已看到的创建事件总数。 |
TotalNumberOfUpdateEventsSeen | long | 自上次启动或指标重置以来此连接器看到的更新事件总数。 |
TotalNumberOfDeleteEventsSeen | long | 自上次启动或指标重置以来此连接器看到的删除事件总数。 |
NumberOfEventsFiltered | long | 已按连接器上配置的包含/排除列表过滤规则过滤的事件数。 |
CapturedTables | string[] | 连接器捕获的表的列表。 |
QueueTotalCapacity | int | 用于在流送器和主 Kafka Connect 循环之间传递事件的队列长度。 |
QueueRemainingCapacity | int | 用于在流处理器和主 Kafka Connect 循环之间传递事件的队列的可用容量。 |
Connected | boolean | 指示连接器当前是否连接到数据库服务器的标志。 |
MilliSecondsBehindSource | long | 最后更改事件的时间戳与连接器处理该事件之间的毫秒数。这些值将包含运行数据库服务器和连接器的计算机上时钟之间的任何差异。 |
NumberOfCommittedTransactions | long | 已提交的已处理事务数。 |
SourceEventPosition | Map<String, String> | 最后接收到的事件的坐标。 |
LastTransactionId | string | 最后处理交易的交易标识符。 |
MaxQueueSizeInBytes | long | 队列的最大缓冲区(以字节为单位)。如果 max.queue.size.in.bytes 设置为正 long 值,则此指标可用。 |
CurrentQueueSizeInBytes | long | 队列中的当前记录量(以字节为单位)。 |
Debezium MySQL 连接器还提供以下附加流指标:
表 28. 其他流媒体指标的描述
属性 | 类型 | 描述 |
---|---|---|
BinlogFilename | string | 连接器最近读取的二进制日志文件的名称。 |
BinlogPosition | long | 连接器读取的二进制日志中的最新位置(以字节为单位)。 |
IsGtidModeEnabled | boolean | 指示连接器当前是否正在跟踪来自 MySQL 服务器的 GTID 的标志。 |
GtidSet | string | 连接器在读取 binlog 时处理的最新 GTID 集的字符串表示形式。 |
NumberOfSkippedEvents | long | MySQL 连接器已跳过的事件数。通常,由于 MySQL binlog 中的事件格式错误或无法解析,事件会被跳过。 |
NumberOfDisconnects | long | MySQL 连接器断开连接的次数。 |
NumberOfRolledBackTransactions | long | 已回滚且未流式传输的已处理事务的数量。 |
NumberOfNotWellFormedTransactions | long | 不符合 BEGIN + COMMIT/ROLLBACK 预期协议的事务数量。正常情况下该值应为 0。 |
NumberOfLargeTransactions | long | 未装入前瞻缓冲区的事务数。为了获得最佳性能,该值应明显小于 NumberOfCommitedTransactions 和 NumberOfRolledBackTransactions。 |
三、Schema history metrics
MBean 为 debezium.mysql:type=connector-metrics,context=schema-history,server=<topic.prefix>。
下表列出了可用的架构历史记录指标。
属性 | 类型 | 描述 |
---|---|---|
Status | string | STOPPED、RECOVERING(从存储中恢复历史记录)、RUNNING 之一描述数据库模式历史记录的状态。 |
RecoveryStartTime | long | 恢复开始的时间(以纪元秒为单位)。 |
ChangesRecovered | long | 在恢复阶段读取的更改数。 |
ChangesApplied | long | 恢复和运行时应用的架构更改总数。 |
MilliSecondsSinceLastRecoveredChange | long | 从历史存储中恢复上次更改以来经过的毫秒数。 |
MilliSecondsSinceLastAppliedChange | long | 自上次应用更改以来经过的毫秒数。 |
LastRecoveredChange | string | 从历史存储中恢复的最后更改的字符串表示形式。 |
LastAppliedChange | string | 最后应用的更改的字符串表示形式。 |
这篇关于Debezium日常分享系列之:Debezium2.5稳定版本之Monitoring的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!