您的位置:首页 > 运维架构

hadoop 调试

2015-09-19 18:38 387 查看

一直想用eclipse调试hadoop,可是网上的资料都是大部分都是说如何用eclipse开发hadoop的。其实那只是一个hadoop客户端的调试功能。要想真正的调试hadoop,就需要利用java的远程调试功能。具体方法如下:

1 在hdfs文件中调试如下的java虚拟机的运行参数:

HADOOP_OPTS=”-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=y $HADOOP_OPTS”

或者 -agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=y

这个参数可是让我一路好找,本来想在hadoop-env.sh中添加的,毕竟这是hadoop官方文档中提到的添加环境变量的地方。但是,在添加了之后,出现了jdwp库被加载了两次的错误。(其实是HADOOP_NAMENODE_OPT中复制了两次。)最终放弃了。重新查找环境变量修改的地方。

利用grep命令查找有关HADOOP_OPT有关的文件。最后定位到了HDFS文件。

2 利用eclipse,run->Debug configuration->remote java application, 配置好地址和IP。 在source选项卡中,添加hadoop的源代码包,就可以单步调试hadoop的了。

Done

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hadoop