spark 遠(yuǎn)端調(diào)試
本地調(diào)試遠(yuǎn)端集群運(yùn)行的spark項(xiàng)目,當(dāng)spark項(xiàng)目在集群上報(bào)錯(cuò),但是本地又查不出問(wèn)題時(shí),最好的方式就是調(diào)試一步一步跟蹤代碼。但是在集群上的代碼又不能像本地一樣的調(diào)試。那么就試試這個(gè)調(diào)試方法吧。
遠(yuǎn)程調(diào)試spark其實(shí)就四步:
首先
首先了解jvm一些參數(shù)屬性
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8888
這里對(duì)上面的幾個(gè)參數(shù)進(jìn)行說(shuō)明:
第一步 將jar包拷貝到集群
將spark 項(xiàng)目打jar包, 將jar包放到集群master節(jié)點(diǎn)上;
第二步 配置idea
編輯idea配置:
點(diǎn)擊小三角,選擇:edit Configurations
如圖
添加一個(gè)remote 配置
配置遠(yuǎn)端地址和端口 (此處配置的是 遠(yuǎn)端master 節(jié)點(diǎn)的地址)
第三步 遠(yuǎn)端啟動(dòng)spark項(xiàng)目
在集群?jiǎn)?dòng)要調(diào)試的spark項(xiàng)目。命令如下:
/tmp/mySpark.jar 為你sprak 項(xiàng)目在集群master上的位置
spark-submit --class WordCount --master spark://192.168.100.xx:7077 --driver-java-options "-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8888" /tmp/mySpark.jar
也可在conf/spark-env.sh這個(gè)文件最后加入(不過(guò)沒(méi)有進(jìn)行實(shí)際測(cè)試)
export SPARK_JAVA_OPTS+="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8888"
如圖進(jìn)入監(jiān)聽(tīng):
第四步 啟動(dòng)idea
啟動(dòng)idea 的debug 模式就會(huì)進(jìn)入斷點(diǎn)。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)VeVb武林網(wǎng)的支持。
新聞熱點(diǎn)
疑難解答
圖片精選