前天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. 《AutoCAD Civil 3D .NET二次开发》勘误2

    4.6.3节中代码: 原代码: 06 pdo.Keywords.Add("Pi", "Pi", "派<Pi>"); 07 pdo ...

  2. 使用linux backtrace打印出错函数堆栈信息

    一般察看函数运行时堆栈的方法是使用GDB(bt命令)之类的外部调试器,但是,有些时候为了分析程序的BUG,(主要针对长时间运行程序的分析),在程序出错时打印出函数的调用堆栈是非常有用的. 在glibc ...

  3. 修改MAC地址的方法 破解MAC地址绑定(抄)

    修改MAC地址的方法 破解MAC地址绑定   网卡的MAC地址是固化在网上EPROM中的物理地址,是一块网卡的“身份证”,通常为48位.在平常的应用中,有很多方面与MAC地址相关,如有些软件是和MAC ...

  4. css控制table间距

    border-collapse: separate;border-spacing: 20px 30px; /* 水平间距 垂直间距 */

  5. H3C WAP712C 路由器设置

    0.做完任何设置之后都要执行保存操作,否则断电后设置会丢失! 1.默认登录参数:IP:192.168.0.50ID:adminPD:h3capadmin 2.修改默认IP地址:设备 --> 接口 ...

  6. DEV 控件使用之:TreeList

    使用DEV控件也有一段时间了,一直想写点东西.最近又使用到TreeList控件,这个控件对于刚使用的人来说确实不好掌握.我想把自己知道的写下来,让还不熟悉的慢慢学会使用,对于会使用的大家交流下.如果有 ...

  7. Java原子类中CAS的底层实现

    Java原子类中CAS的底层实现 从Java到c++到汇编, 深入讲解cas的底层原理. 介绍原理前, 先来一个Demo 以AtomicBoolean类为例.先来一个调用cas的demo. 主线程在f ...

  8. 平衡树Treap

    #include<iostream> #include<cstdio> #include<cstdlib> #include<algorithm> us ...

  9. 我的长大app开发教程第一弹:Fragment布局

    在接下来的一段时间里我会发布一个相对连续的Android教程,这个教程会讲述我是如何从零开始开发“我的长大”这个Android应用. 在开始之前,我先来介绍一下“我的长大”:这是一个校园社交app,准 ...

  10. [Deep Learning] 正则化

    在总结正则化(Regularization)之前,我们先谈一谈正则化是什么,为什么要正则化. 个人认为正则化这个字眼有点太过抽象和宽泛,其实正则化的本质很简单,就是对某一问题加以先验的限制或约束以达到 ...