我启用了kafka模式 canal.serverMode = kafka
这是我的instance.properties配置 canal.instance.filter.regex=user_center\..* canal.instance.filter.black.regex= canal.mq.topic=user_center canal.mq.dynamicTopic=user_center\..* canal.mq.partition=0
启动日志中打印的过滤表达式
WARN c.a.o.canal.parse.inbound.mysql.dbsync.LogEventConvert - --> init table filter : ^user_center..*$ WARN c.a.o.canal.parse.inbound.mysql.dbsync.LogEventConvert - --> init table black filter :
但是向kafka发送的都是下面这些消息,并不是user_center库的日志,kafka中也只生成了user_center这个topic,没有生成表对应的topic
DEBUG com.alibaba.otter.canal.kafka.CanalKafkaProducer - Send message to kafka topic: [user_center], packet: ProducerRecord(topic=user_center, partition=0, headers=RecordHeaders(headers = [], isReadOnly = true), key=null, value={"data":null,"database":"","es":1574427377000,"id":26,"isDdl":false,"mysqlType":null,"old":null,"pkNames":null,"sql":"UPDATE DTS_JOB_QRTZ_TRIGGERS SET TRIGGER_STATE = 'ACQUIRED' WHERE SCHED_NAME = 'quartzScheduler' AND TRIGGER_NAME = '201703171914390653' AND TRIGGER_GROUP = 'test' AND TRIGGER_STATE = 'WAITING'","sqlType":null,"table":"DTS_JOB_QRTZ_TRIGGERS","ts":1574668186110,"type":"QUERY"}, timestamp=null)
原提问者GitHub用户netrous
开启了binlog_rows_query_log_events事件,该事件不受白名单控制,所以会受到type为query的时间信息
数据库是否开启了binlog_rows_query_log_events?如果开启了的话那么该事件的消息就不会通过白名单过滤,目前我是通过改源码重新打包的
原回答者GitHub用户wyoldfour
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。