页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。
评论: 增加 - plugins - ClassNotFound

...

目录

...

Plugins(插件)

...

Flume 自定义 plugin(插件),报错 ClassNotFound

贡献者 @QQ 99749106(虚无人生

日志系统新版本上线,发现flume自定义Interceptor报ClassNotFound。

排查过程

测试环境反复测试都是OK ,生产环境反复测试都不OK

1.怀疑开发环境、测试环境、生产环境JDK版本不一致

开发环境是JDK1.8111,测试环境&生产环境都是JDK1.8121,开发环境重装JDK,问题依然存在。

2.怀疑开发环境编译器

compiler level是1.6,历史版本都没有问题,改为1.8,重新编译,问题依然存在。

3.怀疑flume没有加载

设置FLUME_CLASSPATH,问题依然存在

4.拉去历史版本,重新编译对比,问题依然存在

5.无计可施,重写拦截器,重新编译,问题依然存在

6.无计可施,清理所有垃圾代码,逐行排查代码,重新编译,问题依然存在

7.偶尔不经意发现生产环境的jar和测试环境的jar字节数不一样,生产jar是通过ftpget命令下载。

反复get多次,都是发现jar字节数丢失。

8.换主机,换账号测试ftp,没有问题,百思不得其解,突然灵光一闪,get编码有问题,改编码,问题解决

至此,该问题折腾了一天