Debezium 连接器可以配置为输出 cloud events 而不是默认的 Struct 对象。但是,当使用带有嵌入式 Debezium 引擎的 Apache Camel PostgreSQL Debezium 组件时,我无法成功配置云事件导出。我尝试将 internalValueConverter 组件属性设置为 io.debezium.converters.CloudEventsConverter,并尝试使用 additionalProperties 映射直接设置必要的 Debezium 属性,但我仍然得到 Struct 对象而不是云事件。有谁知道配置 Camel Debezium 组件以输出云事件的正确方法?谢谢!
显然,我误读了组件文档。 Camel Debezium 组件可以返回结构或映射。来自组件文档:
默认情况下,组件会在 body 中发出事件并 CamelDebeziumBefore header 作为 Struct 数据类型,其背后的原因是 感知模式信息以备不时之需。然而,该组件也 包含一个类型转换器,可将 Struct 的默认输出类型转换为 Map 为了利用 Camel 丰富的数据格式类型,其中许多类型都可以解决 具有地图数据类型的框。