Elasticsearch 源码 debug;可能是最简单的方式了

阅读更多

如果只是想简单的看看运行逻辑,跟踪一下源码,此方法可以。如果想自己改改源代码什么的,此方法可能不行;那就看这篇帖子;最开始我为了debug源码,看到也是它,不过为了搞这个环境,累的不轻,还要看运气,也可能是能力不行,x-pack总是不行。于是就想走走弯路,哈哈哈!!!

  1. 下载Elasticsearch 安装包,我用的是windows,就下载的zip
  2. 解压后,找到/bin/elasticsearch.bat;打开找到下面的内容;如图 应该是倒数的3-4行;然后在图中第二行,%ES_JAVA_OPTS%后面添加如下代码:
    -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005这个5005就是监听的端口;
    运行可以看到在监听5005端口
  3. 然后在测试项目中引入Elasticsearch的jar; 我是直接引入Java High Level REST Client,需要的Elasticsearch 的jar基本都有了,把jar的source引入,因为用的idea和maven在下载源码很方便;然后配置断点。我用的是ideaElasticsearch 源码 debug;可能是最简单的方式了_第1张图片
  4. 定位到RestHealthAction类;如图 Elasticsearch 源码 debug;可能是最简单的方式了_第2张图片
  5. Elasticsearch各个功能的接口可能不好找,那就故意把参数设置错,根据错误信息就好找了。

转载于:https://my.oschina.net/5icode/blog/2958899

你可能感兴趣的:(Elasticsearch 源码 debug;可能是最简单的方式了)