1. 程式人生 > >本機idea遠端除錯flume

本機idea遠端除錯flume

最近又要自定義開發flume source 外掛,每次外掛打包後執行,不能再編譯器裡debug 感覺好苦惱。於是今天就看了一下flume 的遠端除錯。一看感覺挺簡單的。所以就分享一下。

遠端除錯flume其實就四步,第一步開啟flume的遠端除錯,第二步拉取flume 原始碼匯入到idea中。第三步在 idea 中配置遠端機器的IP 和除錯埠號。第四步:將自定義開發外掛原始碼貼上到原始碼中,啟動flume 進行除錯。

廢話不多說粘配置了:

開啟flume遠端除錯

修改flume的啟動指令碼flume-ng ,找到這段程式碼

# set default params
FLUME_CLASSPATH=""
FLUME_JAVA_LIBRARY_PATH="" JAVA_OPTS="-Xmx20m" LD_LIBRARY_PATH=""

修改 JAVA_OPTS 為

JAVA_OPTS="-Xmx20m -Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=y"

此時已經打開了flume的遠端除錯,遠端除錯埠為 8000

從Git 中拉取flume原始碼

新增idea Debug 配置

新增配置:

這裡寫圖片描述

新增一個remote 配置

這裡寫圖片描述

配置執行flume 遠端主機的ip 和除錯埠號:

這裡寫圖片描述

新增自定義原始碼

這個時候就可以把自己寫的flume外掛的程式碼貼上到flume中(隨便位置打上斷點 )然後啟動flume 進行除錯。

這裡寫圖片描述

當然 開發的flume外掛的jar包應該在遠端執行flume的機器上,實際執行的flume配置也是遠端flume的配置。

啟動flume :

這裡寫圖片描述

此時啟動idea 的debug 模式就會進入斷點。

這裡寫圖片描述