idea遠程調(diào)試spark的步驟講解
spark 遠端調(diào)試
本地調(diào)試遠端集群運行的spark項目,當spark項目在集群上報錯,但是本地又查不出問題時,最好的方式就是調(diào)試一步一步跟蹤代碼。但是在集群上的代碼又不能像本地一樣的調(diào)試。那么就試試這個調(diào)試方法吧。
遠程調(diào)試spark其實就四步:
- * 第一步j(luò)ar包拷貝到集群master節(jié)點。
- * 第二步在 idea 中配置遠程機器的IP 和調(diào)試端口號。
- * 第三步:啟動遠端的spark項目。
- * 第四步 啟動idea 進行調(diào)試。
首先
首先了解jvm一些參數(shù)屬性
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8888
這里對上面的幾個參數(shù)進行說明:
- -Xdebug 啟用調(diào)試特性
- -Xrunjdwp 啟用JDWP實現(xiàn),包含若干子選項:
- transport=dt_socket JPDA front-end和back-end之間的傳輸方法。dt_socket表示使用套接字傳輸。
- address=8888 JVM在8888端口上監(jiān)聽請求,這個設(shè)定為一個不沖突的端口即可。
- server=y y表示啟動的JVM是被調(diào)試者。如果為n,則表示啟動的JVM是調(diào)試器。
- suspend=y y表示啟動的JVM會暫停等待,直到調(diào)試器連接上才繼續(xù)執(zhí)行。suspend=n,則JVM不會暫停等待。
第一步 將jar包拷貝到集群
將spark 項目打jar包, 將jar包放到集群master節(jié)點上;
第二步 配置idea
編輯idea配置:
點擊小三角,選擇:edit Configurations
如圖
添加一個remote 配置
配置遠端地址和端口 (此處配置的是 遠端master 節(jié)點的地址)
第三步 遠端啟動spark項目
在集群啟動要調(diào)試的spark項目。命令如下:
/tmp/mySpark.jar 為你sprak 項目在集群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這個文件最后加入(不過沒有進行實際測試)
export SPARK_JAVA_OPTS+="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8888"
如圖進入監(jiān)聽:
第四步 啟動idea
啟動idea 的debug 模式就會進入斷點。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
相關(guān)文章
Java基于websocket協(xié)議與netty實時視頻彈幕交互實現(xiàn)
本文主要介紹了Java基于websocket協(xié)議與netty實時視頻彈幕交互實現(xiàn),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-09-09Spring Data JPA 設(shè)置字段默認值方式
這篇文章主要介紹了Spring Data JPA設(shè)置字段默認值方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-11-11SpringBoot應(yīng)用快速部署到K8S的詳細教程
這篇文章主要介紹了SpringBoot應(yīng)用快速部署到K8S的詳細教程,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12解析spring-boot-starter-parent簡介
本文通過代碼的形式給大家介紹了spring-boot-starter-parent的基礎(chǔ)知識,需要的朋友可以參考下2018-09-09java圖形化界面實現(xiàn)簡單混合運算計算器的示例代碼
這篇文章主要介紹了java圖形化界面實現(xiàn)簡單混合運算計算器的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11Spring Cloud OAuth2中/oauth/token的返回內(nèi)容格式
Spring Cloud OAuth2 生成access token的請求/oauth/token的返回內(nèi)容就需要自定義,本文就詳細介紹一下,感興趣的可以了解一下2021-07-07