2019-01-15 14:44:32.137 ERROR 7036 --- [pool-4-thread-1] c.a.o.c.a.l.loader.CanalAdapterWorker : Outer adapter write failed 2019-01-15 14:44:32.138 ERROR 7036 --- [pool-4-thread-1] c.a.o.c.a.l.loader.CanalAdapterWorker : Outer adapter write failed 2019-01-15 14:45:16.690 ERROR 7036 --- [pool-4-thread-1] c.a.o.c.a.l.loader.CanalAdapterWorker : Outer adapter write failed
es adapter 配置完成后,ETL和增量同步功能都没问题,但是日志里面会一直打印error,请问这是什么原因呢?
conf 如下:
dataSourceKey: defaultDS destination: dev esMapping: _index: device_info _type: _doc _id: _id
sql: "select a.id as _id,a.id as deviceId,a.create_at as createAt,a.device_name as deviceName,a.product_id as productId,a.sn as sn ,a.device_type as deviceType from device_info a"
etlCondition: "" commitBatch: 3000
application.yml 如下:
server: port: 8081 logging: level: org.springframework: TRACE com.alibaba.otter.canal.client.adapter.hbase: DEBUG com.alibaba.otter.canal.client.adapter.es: DEBUG com.alibaba.otter.canal.client.adapter.rdb: DEBUG spring: jackson: date-format: yyyy-MM-dd HH:mm:ss time-zone: GMT+8 default-property-inclusion: non_null
canal.conf:
zookeeperHosts: 172.16.20.62:32609
batchSize: 500 syncBatchSize: 1000 retries: 0 timeout: accessKey: secretKey: mode: tcp # kafka rocketMQ srcDataSources: defaultDS: url: jdbc:mysql://172.16.20.63:3306/ioternet?useUnicode=true username: root password: root canalAdapters: - instance: dev groups: - groupId: g1 outerAdapters: - name: es hosts: 172.16.20.64:39300 properties: cluster.name: elasticsearch
原提问者GitHub用户JunRzz
根据您提供的信息,您使用的是 Canal 1.1.2 版本和 ES Adapter,配置中包含了 dataSourceKey、destination 和 esMapping。而在 ES Adapter 启动后,存在一个线程一直在报错,但是功能正常。
首先,请注意查看具体的错误信息,判断是哪一个步骤出现异常。通过报错信息可以发现,错误信息中包含了 "Outer adapter write failed",说明是在写入外部适配器时所出现的问题。这种情况可能是由于外部适配器返回的操作结果与 Canal 不匹配导致的,具体原因还需进一步排查。
建议您参考以下步骤进行排查:
检查 ES 集群的运行状态,确保集群正常运行。可以使用 Elasticsearch Head 等工具来查询 ES 集群状态。
检查 Canal 日志,查看是否有其他错误信息或警告信息。如果有其他的错误信息或警告信息,需要先排除这些问题。
检查外部适配器的配置文件,确保配置文件中的参数正确配置,并遵循外部适配器的规范。
检查数据同步的情况,确保数据同步正常。可以尝试手动执行数据同步操作,查看同步是否出现异常。
如果仍无法解决问题,可以在 Canal 官方论坛或 GitHub 仓库中提出 issue,向开发者和其他用户寻求帮助。
另外,从您提供的信息来看,您在配置文件中设置了 dataSourceKey、destination 和 esMapping 等参数。建议您仔细阅读 Canal 和 ES Adapter 的官方文档,确保配置参数正确,并按照相关的规范进行配置。如果存在一些特殊的情况需要配置,可以通过参考文档或向社区寻求帮助解决问题。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。