使用 delve 調(diào)試 golang 程序

安裝 delve

官方的文檔已經(jīng)很全了秧骑,參考這里(github)安裝。Mac OSX 比較麻煩,需要搞定證書挺据。

斷點(diǎn)和變量打印

delve 裝好之后就可以直接在命令行使用 dlv 命令了。
查看可用的命令
dlv -h

看幫助信息可知:支持用 dlv attach 的方式調(diào)試正在運(yùn)行的進(jìn)程脖隶,支持 dlv connect 鏈接到網(wǎng)絡(luò)端口調(diào)試扁耐。這里先用最簡單的 dlv debug 調(diào)試。
dlv debug main.go

然后會進(jìn)入調(diào)試模式产阱,此時 help 可以看到支持的命令婉称。
(dlv) b main.go:16 #在 main.go 的第 16 行設(shè)置斷點(diǎn)。
(dlv) bp #查看當(dāng)前所有斷點(diǎn)(dlv) c #運(yùn)行到下一個斷點(diǎn)或者程序結(jié)尾
(dlv) p a #打印變量 a 的值(dlv) n #單步執(zhí)行代碼(dlv) set a=1 #設(shè)置變量a 的值

你也可以在函數(shù)上設(shè)置斷點(diǎn):
(dlv) b main.main

同時你也可以輸出一個表達(dá)式:

true ```

我們使用 continue 到我們設(shè)置斷點(diǎn)的地方构蹬,然后 next
```(dlv) next ```

清除所有斷點(diǎn):
```(dlv) clearall```

###進(jìn)階調(diào)試
其實(shí)很多時候王暗,我們調(diào)試的代碼可能是 daemon
 程序或者需要實(shí)現(xiàn)編譯好在不同機(jī)器運(yùn)行的程序。這就需要我們 attach
 到一個已經(jīng)在運(yùn)行中的程序上庄敛,下面我們就使用上面的代碼來演示一下如何 attach
 到一個程序上進(jìn)行調(diào)試俗壹。首先將剛才的程序運(yùn)行起來,我這里直接使用了
```go build test-debug.go./test-debug```

然后使用ps查看正在運(yùn)行的程序pid
```501 40994 549 0 12:08AM ttys003 0:00.00 ./test-debug```

然后我們 attach上去
```(dlv) attach 40994```

可以看到,熟悉的 debug seesion又回來了藻烤。下面我們可以繼續(xù)使用上面的命令去設(shè)置斷點(diǎn)了
```(dlv) break dostuff```
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末绷雏,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子怖亭,更是在濱河造成了極大的恐慌之众,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件依许,死亡現(xiàn)場離奇詭異棺禾,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)峭跳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進(jìn)店門膘婶,熙熙樓的掌柜王于貴愁眉苦臉地迎上來缺前,“玉大人,你說我怎么就攤上這事悬襟⌒坡耄” “怎么了?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵脊岳,是天一觀的道長逝段。 經(jīng)常有香客問我,道長割捅,這世上最難降的妖魔是什么奶躯? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮亿驾,結(jié)果婚禮上嘹黔,老公的妹妹穿的比我還像新娘。我一直安慰自己莫瞬,他們只是感情好儡蔓,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著疼邀,像睡著了一般喂江。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天,我揣著相機(jī)與錄音序臂,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛卵惦,可吹牛的內(nèi)容都是我干的阻肿。 我是一名探鬼主播,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼沮尿,長吁一口氣:“原來是場噩夢啊……” “哼丛塌!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起畜疾,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤赴邻,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后啡捶,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體姥敛,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年瞎暑,在試婚紗的時候發(fā)現(xiàn)自己被綠了彤敛。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片与帆。...
    茶點(diǎn)故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖墨榄,靈堂內(nèi)的尸體忽然破棺而出玄糟,到底是詐尸還是另有隱情,我是刑警寧澤袄秩,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布阵翎,位于F島的核電站,受9級特大地震影響之剧,放射性物質(zhì)發(fā)生泄漏郭卫。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一猪狈、第九天 我趴在偏房一處隱蔽的房頂上張望箱沦。 院中可真熱鬧,春花似錦雇庙、人聲如沸谓形。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽寒跳。三九已至,卻和暖如春竹椒,著一層夾襖步出監(jiān)牢的瞬間童太,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工胸完, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留书释,地道東北人。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓赊窥,卻偏偏與公主長得像爆惧,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子锨能,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,802評論 2 345

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理扯再,服務(wù)發(fā)現(xiàn),斷路器址遇,智...
    卡卡羅2017閱讀 134,599評論 18 139
  • 程序調(diào)試的基本思想是“分析現(xiàn)象->假設(shè)錯誤原因->產(chǎn)生新的現(xiàn)象去驗(yàn)證假設(shè)”這樣一個循環(huán)過程熄阻,根據(jù)現(xiàn)象如何假設(shè)錯誤原...
    Manfred_Zone閱讀 16,500評論 0 26
  • [轉(zhuǎn)]淺談LLDB調(diào)試器文章來源于:http://www.cocoachina.com/ios/20150126/...
    loveobjc閱讀 2,484評論 2 6
  • 未成良人先婦人,君可悔意倔约?愿良人不負(fù)秃殉。著紅妝纓八臺閣,并未妄度空合璧 一把丹心變傷心,杯酒能消复濒?思一介書生脖卖。家困櫥...
    Longczx閱讀 146評論 0 2
  • 2017年11月5日畦木,在深圳大劇院地鐵站,有一對穿著光鮮砸泛,打扮還算亮麗的男女(女主站著裝委屈十籍,男則尋找像我...
    畫鳴閱讀 346評論 0 1