我目前有一個(gè)使用很多的 go 應(yīng)用程序fmt.printf。每當(dāng)該應(yīng)用程序在 pod 中運(yùn)行時(shí),我都可以通過以下方式取回日志kubectl logs podname但是我還需要集成遠(yuǎn)程調(diào)試。我需要使用dlv允許我的 ide(GoLand) 遠(yuǎn)程連接到 pod。它在端口 40000 連接到 Pod。此外,當(dāng) Pods 映像運(yùn)行時(shí),它會(huì)暴露端口 40000,即 docker 文件中有這個(gè) 40000我的 minikube 中也有類似這樣的服務(wù)apiVersion: v1kind: Servicemetadata: name: mydebugspec: type: ClusterIP selector: app: fooapp ports: - protocol: TCP port: 40000 targetPort: 40000 name: delve現(xiàn)在,當(dāng)我這樣做時(shí),kubectl logs podname我只會(huì)得到這個(gè)API server listening at: [::]:400002022-10-30T21:18:57Z warning layer=rpc Listening for remote connections (connections are not authenticated nor encrypted)有沒有辦法取回我的日志?何
1 回答

BIG陽
TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊
您可以使用--continueexec 標(biāo)志,在啟動(dòng)時(shí)繼續(xù)調(diào)試過程,這將導(dǎo)致繼續(xù)記錄。
所以開始研究例如:
dlv --listen=:2345 --headless exec your/app --continue
如果沒有該--continue標(biāo)志,delve 將等待遠(yuǎn)程連接并停止您的應(yīng)用程序。使用--continue標(biāo)志,應(yīng)用程序?qū)⒁呀?jīng)啟動(dòng)。
來自dlv help exec:
...
Usage:
dlv exec <path/to/binary> [flags]
Flags:
--continue Continue the debugged process on start.
...
- 1 回答
- 0 關(guān)注
- 269 瀏覽
添加回答
舉報(bào)
0/150
提交
取消