-
Notifications
You must be signed in to change notification settings - Fork 1
Description
I am not having success using GoDebug to remote debug Apache Traffic Control ("Traffic Ops" component). When I press F5 and Enter to debug, I get this exception and stack trace:
Worker not started, put requests to the queue
Traceback (most recent call last):
File "/home/zrhoffman/.config/sublime-text-3/Packages/GoDebug/sdworker.py", line 94, in _do_method
response = connect.RPCServer.CreateBreakpoint(parms)
File "/home/zrhoffman/.config/sublime-text-3/Packages/GoDebug/jsonrpctcp_client.py", line 328, in __call__
return self._call_server(params)
File "/home/zrhoffman/.config/sublime-text-3/Packages/GoDebug/jsonrpctcp_client.py", line 337, in _call_server
return self.__client()
File "/home/zrhoffman/.config/sublime-text-3/Packages/GoDebug/jsonrpctcp_client.py", line 133, in __call__
result = self._call_single(requests[0])
File "/home/zrhoffman/.config/sublime-text-3/Packages/GoDebug/jsonrpctcp_client.py", line 154, in _call_single
response = self._receive2(notify)
File "/home/zrhoffman/.config/sublime-text-3/Packages/GoDebug/jsonrpctcp_client.py", line 259, in _receive2
raise JsonRpcTcpProtocolError(-32701, json_obj.get('error'))
GoDebug.jsonrpctcp_client.JsonRpcTcpProtocolError: <ProtocolError> code:-32701, message:could not find file /home/zrhoffman/go/src/github.com/apache/trafficcontrol/traffic_ops/traffic_ops_golang/ping/ping.go, data:None
Exception thrown, details in file: stdout
reloading settings Packages/User/GoDebug.breakpoint-settings
reloading settings Packages/User/GoDebug.watch-settings
Steps to reproduce:
-
Clone zrhoffman/trafficcontrol@debug_cdn-in-a-box in your GOPATH and navigate to
infrastructure/cdn-in-a-boxwithin the repo -
Run
make debug(requires Docker and Docker Compose) -
Start the Docker environment with
docker-compose down -v && docker-compose -f docker-compose.yml -f docker-compose.expose-ports.yml -f optional/docker-compose.debugging.yml up --force-recreate;
-
In Sublime (using 3.3211, dev build) with GoDebug 0.3.9 on Arch Linux 5.4.18, set a breakpoint at traffic_ops/traffic_ops_golang/ping/ping.go:30
-
Press F5, select the debug executable, and press Enter to start debugging.
After step 5 (but not before), the error and stack trace pasted above appears in the Sublime console.
-
Make this HTTPS request, which should hit the breakpoint:
curl -k https://localhost/api/2.0/ping
-
Notice execution does not stop at the breakpoint.
Other information:
- Goland successfully hits the breakpoint following steps 1-6 above.
- In case it is useful info, this is my sublime-project file:
{ "folders": [ { "path": "." } ], "settings": { "delve_enable": true, "godebug_executables": { "CiaB": { "port": 2345, "mode": "remote" } }, "godebug_log": true } }