eclipse 远程Debug Hbase

我们学习任何一项技术,要想深入研究,都需要对源码进行debug,在学习HBase的过程更是避免不了debug,下面说明怎么样配置才能让eclipse远程调试Hbase。

进入hbase 的bin目录下,用vi编辑hbase文件。hbase的shell脚本。也是hbase启动的核心脚本。找到下面这一部分。在结尾部分。
unset IFS

# figure out which class to run
if [ "$COMMAND" = "shell" ] ; then
CLASS="org.jruby.Main ${HBASE_HOME}/bin/hirb.rb"
elif [ "$COMMAND" = "master" ] ; then
CLASS='org.apache.hadoop.hbase.master.HMaster'
if [ "$1" != "stop" ] ; then
HBASE_OPTS="$HBASE_OPTS $HBASE_MASTER_OPTS
fi
elif [ "$COMMAND" = "regionserver" ] ; then
CLASS='org.apache.hadoop.hbase.regionserver.HRegionServer'
if [ "$1" != "stop" ] ; then
HBASE_OPTS="$HBASE_OPTS $HBASE_REGIONSERVER_OPTS"
fi
elif [ "$COMMAND" = "thrift" ] ; then
CLASS='org.apache.hadoop.hbase.thrift.ThriftServer'
if [ "$1" != "stop" ] ; then
HBASE_OPTS="$HBASE_OPTS $HBASE_THRIFT_OPTS"
fi
elif [ "$COMMAND" = "rest" ] ; then(后没还有,这里只截了一部分)

在COMMAND" = "master"的模块中给HBASE_OPTS 加 上" -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=10444" 这个JPDA参数。
加完后是这样的:
elif [ "$COMMAND" = "master" ] ; then
CLASS='org.apache.hadoop.hbase.master.HMaster'
if [ "$1" != "stop" ] ; then
HBASE_OPTS="$HBASE_OPTS $HBASE_MASTER_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=10444"
fi
保存 hbase文件,重新启动hbase,有朋友可能会问,怎么起动这个debug生效。还是和原来一样启动,

命令为:./bin/start-hbase.sh 启动成功后,hbase会打印日志,告诉你debug的端口为10444,说明debug配置成功。

原文地址:http://ronxin999.blog.163.com/blog/static/422179202012510858349/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值