前天leader说,阿里的新版本canal支持 canal收集binlog直接发到kafka,你要不研究一下?

ok,没问题。

昨天周六,在家搭了套环境。解决centos7安装mysql各种小细节,按照阿里github上的步骤来做。终于,还是没有跑起来。。

但是根据现象:一旦往mysql表中插入数据,查看canal.log就会有日志滚动更新,只是不是我想要的内容。。。

日志如下:

2019-04-28 05:24:06.242 [kafka-producer-network-thread | producer-1] WARN  org.apache.kafka.clients.NetworkClient - [Producer clientId=producer-1] Connection to node -1 could not be established. Broker may not be available.

由此推测是canal到kafka的过程出了问题。

今天周天,因为五一假期,法定上班。早早来到办公室,再次细细看了阿里的github和自己的工程环境,怀疑是canal配置到kafka的端口有问题,配置文件canal.properties默认:canal.mq.servers = 127.0.0.1:6667,

心想没有端口是6667啊,应该是kafka的9092才对啊。

果然,搞定!

/////////////////////////然而下午并没有那么顺利/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

下午打开电脑,发现我的虚拟机的ip自己又变了。因为采用的是动态地址,心里想一定要改成静态地址,但。。。还是先解决当下问题重要。

我把canal和kafka中的相关配置文件ip都改了后,鉴于经常启用canal,zk,kafka,所以把启动和停止的命令都添加到xshell的快捷栏上

然后再次启动。。。呵呵呵。。。。

2019-04-28 05:24:06.242 [kafka-producer-network-thread | producer-1] WARN  org.apache.kafka.clients.NetworkClient - [Producer clientId=producer-1] Connection to node -1 could not be established. Broker may not be available.

又是不停的刷这个日志,我一开始是不怕的,毕竟我见过它。

我想,肯定是我在配置新的ip的时候,配置文件没有配置正确。

我一个一个的翻,终于,还是没找到原因。

还好,我足够机智,提前把上午canal,zk,kafka的那套正确运行的整个包都备份了一下。我删除下午修改配置文件所导致的狼狈不堪的环境,把上午的那套解压了出来。

嘿嘿,心想这下把之前的IP换成现在的IP,其他都不变,还有错的道理?

果然,还是上面那条看了就心乱如麻的日志在不停刷新。。。

有点慌了。。。。。

咦~别慌。。。怎么每次我点xshell中快速按钮来关闭kafka时,总会提示我“No kafka server to stop”呢???

然后我用xshell中快速按钮来启动kafka时,然后用ps -ef | grep -i kafka却看不到kafka呢???

是的,我知道错了。

问题恰恰出在xshell的快捷按钮上。

启动kafka时,指定server.properties文件,我是这么写的:

sh /usr/hadoop/kafka/kafka_2.12-2.1.0/bin/kafka-server-start.sh -daemon ../config/server.properties &

快速启动的时候,当前路径是不固定的,怎么可能正确识别“../config/server.properties”

所以,对不起,我错了,我以后改。

canal-随记001-吐血一个下午找bug的更多相关文章

  1. C#程序双击运行之后,界面不显示,但是在任务管理器有进程(一个winform找bug之旅)

    最近客户端又出了奇葩事情:http://q.cnblogs.com/q/43038/ 如这篇博问一样.我的一个客户的电脑上程序打开了,进程也有了,就是界面窗体出不来!!! 我是win7是开发机,三四台 ...

  2. 用一个下午从零开始搭建一个基础lbs查询服务

    背景 现在做一个sns如果没有附近的功能,那就是残缺的.网上也有很多现成的lbs服务,封装的很完整了. 我首先用了下百度lbs云,但是有点不适合自己的需要,因此考虑用mongodb建一个简单的lbs服 ...

  3. Vue折腾记 - (3)写一个不大靠谱的typeahead组件

    Vue折腾记 - (3)写一个不大靠谱的typeahead组件 2017年07月20日 15:17:05 阅读数:691 前言 typeahead在网站中的应用很多..今天跟着我来写一个不大靠谱的ty ...

  4. vs05字节对齐问题又一不小心就弄去了我一个下午的时间

    由于一字节的对齐问题,我调一个库调了我基本一个下午..... 犯错其实并不可怕, 可怕的是你一犯再犯...... 这也算得上是难能可贵... /Zp (Struct Member Alignment) ...

  5. Java Learning 001 新建一个Java工程 HelloWorld程序

    Java Learning 001 新建一个Java工程 HelloWorld程序 Step 1 . 在Eclipse 软件里,点击: File -> New -> Java Projec ...

  6. salesforce零基础学习(一百一十五)记一个有趣的bug

    本篇参考:https://help.salesforce.com/s/articleView?language=en_US&type=1&id=000319486 page layou ...

  7. 海王星给你好看!FineUI v4.0公测版发布暨《你找BUG我送书》活动开始(活动已结束!)

    <FineUI v4.0 你找BUG我送书>活动已结束,恭喜如下三位网友获得由 FineUI 作者亲自翻译的图书<jQuery实战 第二版>! 奋斗~ 吉吉﹑ purplebo ...

  8. SQL Server 字段类型 decimal(18,6)小数点前是几位?记一次数据库SP的BUG处理

    原文:SQL Server 字段类型 decimal(18,6)小数点前是几位?记一次数据库SP的BUG处理 SQL Server 字段类型 decimal(18,6)小数点前是几位? 不可否认,这是 ...

  9. 第二次作业:找Bug

    引子 我真的想了一个小时,上哪里去找bug.我昨天还留意到一个bug,今天就不见了.灵光不断,我想起来了.我就要找大公司的产品的bug... 第一部分 调研, 评测 体验. <腾讯桌球>是 ...

随机推荐

  1. 前端js日期时间格式转换

    前端前后端接口处理时经常会遇到需要转换不同时间格式的情况,比如时间戳格式转换成正常日期显示来进行前端展示. 下面是分享一些不同格式的日期转换函数方法. /** * 时间戳转时间 * @param {S ...

  2. java获取文件行数

    public long getLineNumber(File file) { if (file.exists()) { try { FileReader fileReader = new FileRe ...

  3. P4137 Rmq Problem / mex (莫队)

    题目 P4137 Rmq Problem / mex 解析 莫队算法维护mex, 往里添加数的时候,若添加的数等于\(mex\),\(mex\)就不能等于这个值了,就从这个数开始枚举找\(mex\): ...

  4. MySQL表与表之间的关系

    表与表之间的关系 表1 foreign key 表2 则表1的多条记录对应表2的一条记录,即多对一 利用foreign key的原理我们可以制作两张表的多对多,一对一关系 多对多: 表1的多条记录可以 ...

  5. 服务器配置 ssl 证书

    最近因为公司的 服务器 ssl证书即将到期(服务器 和 ssl证书管理都在 腾讯云上), 所以为了能顺利的 重新申请 ssl证书 ,我和小伙伴 在他的个人服务器上尝试了一波(我们居然都不会 ...) ...

  6. Vue 报错[Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders

    场景:父组件向子组件传递数据,子组件去试图改变父组件数据的时候. 解决:子组件通过事件向父组件传递信息,让父组件来完成数据的更改. 比如:我的父组件是普通页面,子组件是弹窗的登录界面,父组件传递的数据 ...

  7. 怎么添加在安装好的nvidia-docker上面根据Dockerfile构建自己所需要的运行环境

    在已经创建好nvidia-docker环境之后,对于新手小白来说,又有一个问题了,就是如何根据Dockerfile来构建试验所需要的docker环境 主要是以下几个步骤 首先创建一个mydocker文 ...

  8. Java基础学习--数组

    1.数组的定义: 数组(Array)是相同数据类型的数据的有序集合. 2.数组的3个特点: 2.1数组长度是确定.数组一旦申请完空间,长度不能发生变化,用length属性访问. 2.2数组的元素都是同 ...

  9. jvm 字节码执行 (二)动态类型支持与基于栈的字节码解释执行

    动态类型语言 动态类型语言的关键特征是它的类型检查的主体过程是在运行期而不是编译期. 举例子解释“类型检查”,例如代码: obj.println("hello world"); 假 ...

  10. 解决SkyP2M工程常见问题所参考的博客汇总

    工程是基于64位的 1 Error 26 error C2491: 'HUDManager::_viewport' : definition of dllimport static data memb ...