Hive 远程Debug

hive的远程debug可以说是相当的简单,方便。但是如果你的工作环境有网络上的限制,可能就需要变通一下。

一.Attach 模式(适用与本地能够通远程服务器)

1.配置idea

Hive 远程Debug

如图:host:为hive启动服务ip, port:hive默认是8000,可以启动hive的时候进行设置。

2.启动hive

直接执行命令:hive --debug (当然有些参数是直接可以设置的,比如设置端口 hive --debug[:port=5005])

3.启动idea remote。 之后就可以愉快的debug了。


二、Listen模式 (如果本地不通线上服务器,但是线上通本地,这种方式有效,如果两边都不通,再见!)

1.同样先配置idea

Hive 远程Debug

如图,端口可以自己配置。

2.修改debug.sh(找到bin/hive路径,debug.sh在hive同路径下的ext文件夹内)

 搜索:HIVE_MAIN_CLIENT_DEBUG_OPTS

然后注释这行以及下一行。

然后进行修改:

export HIVE_MAIN_CLIENT_DEBUG_OPTS=" -XX:+UseParallelGC -agentlib:jdwp=transport=dt_socket,server=n,address=本地IP:5005,suspend=y"
export HIVE_CHILD_CLIENT_DEBUG_OPTS="-XX:+UseParallelGC -agentlib:jdwp=transport=dt_socket,server=n,address=本地IP:5005,suspend=y” 

3.先启动idea的remote,再执行hive --debug命令。