https://www.jianshu.com/p/fcb6eb0a86d6

[RMI TCP Connection(10.0.20.175:2181)] DEBUG org.apache.zookeeper.ClientCnxn - Got ping response for sessionid: 0x15aeeb4d0c80bdb after 1ms

 

一日,工程一直再报 [RMI TCP Connection(10.0.20.175:2181)] DEBUG org.apache.zookeeper.ClientCnxn - Got ping response for sessionid: 0x15aeeb4d0c80bdb after 1ms。

(1)细看log4j.properties文件,日志是INFO级别,很奇怪,加上log4j.logger.org.apache.zookeeper=INFO, 不起效果

(2) 懵逼,然后就对比其他没打印日志的工程,发现log4j.properties配置一样。继续懵逼

(3) 网上检索org.apache.zookeeper.ClientCnxn - Got ping response for sessionid相关信息,大多一言半语,大部分没营养。发现是zookeeper的心跳机制日志。

(4) 然后去检索怎么关闭zookeeper的心跳机制日志,又在一堆没营养的博客中找到了一位大神写的分析,是log4j和logback都加上后,日志选择了logback,去除logback依赖即可。

(5) 工程去除logback依赖,发现没问题,问题解决。

以上为解决问题的步骤,看起来简单确迂回颇多。感慨下思路的重要性,顺便整理下解决问题的思路

(1) 问题的表象是什么,涉及到哪些方面。

(2) 检索问题表象的原因,是那个对象引起的,什么逻辑造成的,怎么解决。别人怎么分析解决的(思路)

(3) 测试和验证解决的思路,看是否解决问题,对其他方面有无影响。

 

同时,需要反思了下以前解决问题(办事)的问题

(1)没有按部就班,左边挖个坑右边挖个坑,到最后都没找到问题的源头,应该是顺着问题,从表象,缘由,解决一条线去深思挖掘。

(2)程序的世界出错肯定有错误信息,光检索错误信息解决方式不思考原理,不追查源码如何成长!



 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐