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
Debezium日常分享系列之:Debezium2.5稳定版本之Monitoring 一、Snapshot metrics二、Streaming metrics三、Schema history metrics Debezium系列之:安装jmx导出器监控debezium指标 除了 Zookeeper、Kafka 和 Kafka Connect 提供的对 JMX 指标的内置支持…...
GuLi商城-商品服务-API-三级分类-网关统一配置跨域
参考文档: https://tangzhi.blog.csdn.net/article/details/126754515 https://github.com/OYCodeSite/gulimall-learning/blob/master/docs/%E8%B0%B7%E7%B2%92%E5%95%86%E5%9F%8E%E2%80%94%E5%88%86%E5%B8%83%E5%BC%8F%E5%9F%BA%E7%A1%80.md 谷粒商城-day04-完…...
【ai技术】(4):在树莓派上,使用qwen0.5b大模型+chatgptweb,搭建本地大模型聊天环境,速度飞快,非常不错!
1,视频地址 https://www.bilibili.com/video/BV1VK421i7CZ/ 【ai技术】(4):在树莓派4上,使用ollama部署qwen0.5b大模型chatgptweb前端界面,搭建本地大模型聊天工具,速度飞快 2,下载…...
深入理解PHP+Redis实现分布式锁的相关问题
概念 PHP使用分布式锁,受语言本身的限制,有一些局限性。 通俗理解单机锁问题:自家的锁锁自家的门,只能保证自家的事,管不了别人家不锁门引发的问题,于是有了分布式锁。分布式锁概念:是针对多个…...
perl:获取同花顺数据--业绩预告
perldoc LWP::UserAgent 如果没有安装,则安装模块,运行 cpanm LWP::UserAgent 。 编写 get_yjyg_10jqka.pl 如下 #!/usr/bin/perl # perl 获取同花顺数据--业绩预告 use LWP::UserAgent; use Encode qw(decode encode); use POSIX; use Data::Dump…...
如何对比引用传参和值传参两者的效率
以值作为参数或者返回值类型,在传参和返回期间,函数不会直接传递实参或者将变量本身直接返回,而是传递实参或者返回变量的一份临时的拷贝,因此用值作为参数或者返回值类型,效率是非常低下的,尤其是当参数或…...
探索软件工程:构建可靠、高效的数字世界
软件工程是一门涵盖了设计、开发、测试、维护和管理软件的学科,它在如今数字化时代的发展中扮演着至关重要的角色。随着科技的不断进步和社会的不断变迁,软件工程的意义也愈发凸显。本文将探索软件工程的重要性、原则和实践,以及其对当今社会…...
超越肉眼:深入计算机视觉的奇妙之旅
揭秘计算机视觉的奥秘:从基础到前沿的探索之旅 引言:一、计算机视觉的基础1. 图像处理基础2. 特征提取与描述3. 基本模式识别 二、机器学习在计算机视觉中的应用1. 深度学习革命2. 迁移学习与多任务学习3. 强化学习与主动学习4. 无监督学习和自监督学习 …...
mac 安装 nvm 【真解决问题】
前提 没有node环境已有git 下载 我用的gitee极速下载 git clone https://gitee.com/mirrors/nvm.git ~/.nvm && cd ~/.nvm && git checkout git describe --abbrev0 --tags配置 1. 配置变量 在用户的目录下新增文件 .zshrc export NVM_DIR"$HOME/…...
【Godot 3.5控件】用TextureProgress制作血条
说明 本文写自2022年11月13日-14日,内容基于Godot3.5。后续可能会进行向4.2版本的转化。 概述 之前基于ProgressBar创建过血条组件。它主要是基于修改StyleBoxFlat,好处是它几乎可以算是矢量的,体积小,所有东西都是样式信息&am…...
第十届蓝桥杯大赛个人赛省赛(软件类)真题- CC++ 研究生组
第十届蓝桥杯大赛个人赛省赛(软件类)真题- C&C 研究生组-立方和 第十届蓝桥杯大赛个人赛省赛(软件类)真题- C&C 研究生组-字串数字 第十届蓝桥杯大赛个人赛省赛(软件类)真题- C&C 研究生组-质数…...
Linux:Gitlab:16.9.2 创建用户及项目仓库基础操作(2)
我在上一章介绍了基本的搭建以及邮箱配置 Linux:Gitlab:16.9.2 (rpm包) 部署及基础操作(1)-CSDN博客https://blog.csdn.net/w14768855/article/details/136821311?spm1001.2014.3001.5501 本章介绍一下用户的创建,组内设置用户&…...
【数据挖掘】实验5:数据预处理(1)
实验5:数据预处理(1) 一:实验目的与要求 1:熟悉和掌握数据预处理,学习数据清洗、数据集成、数据变换、数据规约、R语言中主要数据预处理函数。 二:实验内容 【缺失值分析】 第一步࿱…...
383.赎金信
给你两个字符串:ransomNote 和 magazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。 如果可以,返回 true ;否则返回 false 。 magazine 中的每个字符只能在 ransomNote 中使用一次。 思路:将magazine 中字…...
Python 3 教程(8)
heisenbug601 601***902@qq.com 参考地址 311 tuple和list非常类似,但是tuple一旦初始化就不能修改,比如同样是列出同学的名字: 代码如下: >>> classmates = (Michael, Bob, Tracy) 现在,classmates这个tuple不能变了,它也没有append(),insert()这样的方法…...
Mysql数据库深入理解
目录 一、什么是数据库 二、Mysql基本架构图 1.Mysql客户端/服务器架构 2.客户端与服务器的连接过程 3.服务器处理客户端请求 4.一条查询SQL执行顺序 4.1连接器 4.2查询缓存 4.3解析器 4.4执行器 4.4.1预处理阶段 4.4.2优化阶段 4.4.3执行阶段 5.一条记录如何存…...
android 音频焦点,音频策略梳理
音频焦点和音频策略两个不同的概念,容易搞混 先来看下音频焦点和音频策略直接的区别和联系 音频策略的主要功能是为该音频找到合适的硬件设备播放 1 音频策略流程: (从usage->device) attributesBuilder.setUsage--->audioservice.mCarAudioCont…...
go语言-基础元素与结构的使用
go基础元素与结构的使用,快速上手 编译go文件 编译为可执行文件 go build 文件名.go运行文件 ./文件名输入/输出 引用fmt库(关于输入输出的库) 输入 scanf按照给定的格式依次读取数据(包括非法数据),不…...
【leetcode热题】 二叉树的右视图
给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 示例 1: 输入: [1,2,3,null,5,null,4] 输出: [1,3,4]示例 2: 输入: [1,null,3] 输出: [1,3]示例 3: 输入: [] 输出: []解法一 题…...
康奋威科技邀您到场参观2024长三角快递物流展
参展企业介绍 杭州康奋威科技股份有限公司创立于2005年,由国家“万人计划”专家任天挺先生创立并担任法人,是一家专业从事智能装备研发与制造的国家级高新技术企业。专注于自动化控制、机械设计、信息化方面的技术研究,主要为太阳能光伏、智…...
Linux简单的操作
ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...
【Java学习笔记】BigInteger 和 BigDecimal 类
BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点:传参类型必须是类对象 一、BigInteger 1. 作用:适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...
Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战
说明:这是一个机器学习实战项目(附带数据代码文档),如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下,风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...
Vue 模板语句的数据来源
🧩 Vue 模板语句的数据来源:全方位解析 Vue 模板(<template> 部分)中的表达式、指令绑定(如 v-bind, v-on)和插值({{ }})都在一个特定的作用域内求值。这个作用域由当前 组件…...
微服务通信安全:深入解析mTLS的原理与实践
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、引言:微服务时代的通信安全挑战 随着云原生和微服务架构的普及,服务间的通信安全成为系统设计的核心议题。传统的单体架构中&…...
GraphRAG优化新思路-开源的ROGRAG框架
目前的如微软开源的GraphRAG的工作流程都较为复杂,难以孤立地评估各个组件的贡献,传统的检索方法在处理复杂推理任务时可能不够有效,特别是在需要理解实体间关系或多跳知识的情况下。先说结论,看完后感觉这个框架性能上不会比Grap…...
【java】【服务器】线程上下文丢失 是指什么
目录 ■前言 ■正文开始 线程上下文的核心组成部分 为什么会出现上下文丢失? 直观示例说明 为什么上下文如此重要? 解决上下文丢失的关键 总结 ■如果我想在servlet中使用线程,代码应该如何实现 推荐方案:使用 ManagedE…...
react更新页面数据,操作页面,双向数据绑定
// 路由不是组件的直接跳转use client,useEffect,useRouter,需3个结合, use client表示客户端 use client; import { Button,Card, Space,Tag,Table,message,Input } from antd; import { useEffect,useState } from react; impor…...
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术点解析
Java求职者面试指南:Spring、Spring Boot、Spring MVC与MyBatis技术点解析 第一轮:基础概念问题 请解释Spring框架的核心容器是什么?它的作用是什么? 程序员JY回答:Spring框架的核心容器是IoC容器(控制反转…...
