通過idea遠程調試


集群:centos7 + HA集群

開發環境:win7 IDEA

問題:在win7上開發,任務在hadoop集群上運行,當遠程程序執行出錯,需要排錯,總結主要有兩種方式:

      1、查看日志

        可通過webui查看各節點日志

        自己寫一個工具庫,通過nc把日志發送同一個終端查看

      2、設置java的運行方式,通過idea進行遠程調試

 

過程

1、生成mr作業jar包,導出並傳到集群,如家目錄

  這些包是內置的,不需要導出到jar文件中

  查看生成的jar包位置

  通過winscp將該jinjie.jar文件,拖到s101家目錄

2、將測試文件,上傳到hdfs

hdfs dfs -put ttt.dat /

3、修改/soft/hadoop/bin/hadoop腳本

  在首行添加

export HADOOP_CLIENT_OPTS="$HADOOP_CLIENT_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8888"

  注意:1、使用雙引號

        2、調試完畢,必須刪除或注釋掉,否則以后涉及job任務都會阻塞,啟動hive時也會阻塞

4、啟動mr作業

  找到入口類

jar -tf jinjie.jar  //列出該jar包中的所有類的全路徑名

  啟動

hadoop jar jinjie.jar k_hadoop.mydebug.App /ttt.dat /out

5、在idea中配置

  進入編輯配置

  選擇遠程

  命名、改主機名、端口

6、開始調試

  臨時目錄 /tmp/hadoop-yarn/staging/centos/.staging/job_1537875597065_0001 中文件:

    job.jar

    job.split

    job.splitmetainfo

    job.xml

7、刪除hadoop腳本中的調試設置

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM