요즘 code editor를 vscode로 변경하면서 debug환경에 대한 설정을 진행하였습니다. 이 글의 목적은 간단하게 go언어 디버깅 환경을 구축하며, vscode의 debug 단축키 및 사용법에 대한 내용을 정리하였습니다.

Extension 설치

환경 구성은 매우 간단합니다. vscode extension에서 "go"라고 검색하여 해당 extension을 설치합니다.

launch.json 구성

vscode에서 디버깅 환경을 구성하기 위해 launch.json 파일을 생성해야 됩니다. "ctrl + shift + d" 단축키를 통해 "Run and debug" 창을 띄울 수 있습니다. 해당 창에서 "create a launch.json file"을 클릭하여 launch.json 파일을 생성합니다. 파일을 생성하면 해당 경로에 "./.vscode/launch.json" 파일이 생성되며 저는 다음과 같이 내용을 구성했습니다.

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "my project",
            "type": "go",
            "request": "launch",
            "mode": "auto",
            "program": "${fileDirname}"
        }
    ]
}

디버깅 하기

내가 원하는 라인에 "F9"를 통해 브레이크 포인트를 지정하여 디버깅을 진행할 수 있습니다.

위 이미지를 보면 좌측에는 변수의 값을 확인할 수 있으며, 하단에는 콘솔로 출력되는 데이터를 확인할 수 있습니다. 이상 vscode에서 go언어 디버깅환경 만드는 과정에 대해 알아봤습니다.

브레이크 포인트에 expression 부여하기

브레이크 포인트에 특정 조건일 경우에만 디버깅을 하고 싶을 경우 해당 브레이크 포인트 우클릭에 "Edit breakpoint"를 클릭하여 다음과 같이 조건을 넣을 수 있습니다.

저는 i가 5일 경우에만 브레이크 포인트에 멈추도록 설정을 하여 많은 데이터를 분석할 때 유용하게 사용할 수 있습니다.

마지막으로

마지막으로 vscode의 디버깅 관련 단축키에 대해 알아보고 마치겠습니다.

  • F5 : 디버그 진행 / 디버그 중지
  • F10 : 다음 라인 실행
  • F11 : 메서드 내부로 진입
  • Shift + F11 : 메서드 빠져나오기
  • Ctrl + Shift + F5 : 재시작
  • Shift + F5 : 디버그 종료

더 자세한 내용은 다음 링크에서 확인하세요

https://github.com/golang/vscode-go/blob/master/docs/debugging.md

 

GitHub - golang/vscode-go: Go extension for Visual Studio Code

Go extension for Visual Studio Code. Contribute to golang/vscode-go development by creating an account on GitHub.

github.com

 

+ Recent posts