Visual Studio Code .NET Remote Debug Configurator

다운로드

개요

Visual Studio Code는 기본적으로 원격 장치에 응용 프로그램을 배포하고 실행한 뒤 디버깅할 수 있는 기능을 제공합니다. 하지만 이를 사용하려면 .vscode/tasks.json.vscode/launch.json 파일을 직접 수정해야 하므로 설정 과정이 다소 번거롭습니다.

.NET Remote Debug Configurator는 이러한 과정을 간소화하기 위해 제작된 Visual Studio Code 확장 프로그램입니다. 복잡한 JSON 설정 파일을 직접 편집하는 대신, 간단한 설정 화면에 필요한 정보만 입력하면 원격 디버깅 환경을 자동으로 구성할 수 있습니다.

Visual Studio Code에는 원격 장치에서 직접 개발하고 디버깅하는 기능도 제공되지만, 저사양 장치에서는 성능이 느려질 수 있으며 원격 장치의 자원을 과도하게 사용하여 응용 프로그램의 정상적인 동작에 영향을 줄 수 있습니다.

개발은 성능이 충분한 개발 PC에서 수행하는 것이 바람직합니다. 개발 PC에서 응용 프로그램을 빌드한 후 원격 장치로 자동 배포하고 실행하며 디버거를 연결하는 것이 훨씬 효율적입니다.

.NET Remote Debug Configurator를 사용하면 이러한 환경을 몇 가지 설정값만 입력하여 간편하게 구성할 수 있습니다.

사전 준비

비밀번호 없는 SSH 로그인 설정

이 확장 프로그램은 비밀번호를 설정 파일에 저장할 필요가 없도록 공개키 기반 SSH 인증을 사용합니다.

  1. 개발 PC에서 SSH 키를 생성합니다.
    ssh-keygen -t rsa
  2. 생성된 공개키를 원격 장치로 복사합니다. 마지막 콜론(:)을 반드시 포함해야 합니다.
    scp $HOME/.ssh/id_rsa.pub admin@{remote_target_ip_address}:
  3. 원격 장치에서 공개키를 등록합니다.
    mkdir .ssh && cat id_rsa.pub >> .ssh/authorized_keys
  4. 이후 SSH 접속 시 비밀번호를 입력하지 않고 로그인되어야 합니다.

원격 장치에 vsdbg 설치

이 확장 프로그램은 Microsoft의 .NET 디버거인 vsdbg가 원격 장치에 설치되어 있어야 합니다.

COMFILE Technology 제품에는 일반적으로 기본 설치되어 있지만, 설치되어 있지 않은 경우 원격 장치에서 다음 명령을 실행하십시오.

curl -sSL https://aka.ms/getvsdbgsh | sudo bash /dev/stdin -v latest -l /opt/Microsoft/vsdbg/

다른 위치에 설치하려면 -l 옵션의 경로를 변경하면 됩니다. 설치 위치를 변경한 경우에는 이후 원격 디버그 설정 시 해당 경로를 정확히 입력해야 합니다.

사용 방법

확장 프로그램 설치

확장 프로그램 다운로드

확장 프로그램 설치

  1. Visual Studio Code의 확장(Extensions) 창을 엽니다.
  2. 메뉴에서 Install from VSIX 를 선택합니다.
  3. 다운로드한 .vsix 파일을 선택한 후 설치합니다.

원격 디버그 대상 생성

  1. Visual Studio Code에서 .NET 프로젝트를 엽니다.
  2. Ctrl+Shift+P를 눌러 명령 팔레트를 엽니다.
  3. .NET Remote Debug Configurator를 입력하거나 목록에서 선택합니다.
  4. 표시되는 설정 화면에 원격 디버깅 정보를 입력합니다.

기존 설정 관리

이미 생성된 원격 디버그 설정이 있는 경우 다음 작업을 수행할 수 있습니다.

  • Remote Target 목록에서 편집할 대상을 선택
  • 설정값 수정 후 Save Configuration 또는 Enter 키로 저장
  • Delete 버튼을 눌러 설정 삭제

설정을 삭제하면 관련된 작업(Task)도 함께 제거됩니다.

원격 디버깅 시작

  1. Run and Debug 창을 엽니다. (Ctrl+Shift+D)
  2. 상단 목록에서 생성한 원격 디버그 프로필을 선택합니다.
  3. F5 키를 누르거나 녹색 시작 버튼을 클릭합니다.

확장 프로그램은 자동으로 다음 작업을 수행합니다.

  • SSH를 이용하여 응용 프로그램 배포
  • 원격 장치에서 응용 프로그램 실행
  • SSH 터널을 통해 디버거 연결
  • 원격 디버깅 세션 시작

설정 관리 방식

이 확장 프로그램은 다음과 같은 특별한 주석을 사용하여 자신이 생성한 설정을 식별합니다.

// Managed by dotnet-remote-debug-config

이를 통해 다음 기능을 제공합니다.

  • 사용자가 만든 설정과 확장 프로그램이 만든 설정 구분
  • 확장 프로그램이 생성한 설정만 안전하게 수정 또는 삭제
  • 디버그 프로필 삭제 시 관련 작업(Task) 자동 정리

확장 프로그램으로 계속 관리할 계획이라면 .json 파일에서 해당 주석을 삭제하지 않는 것을 권장합니다.

Visual Studio Code와 .NET을 이용한 jPC 소프트웨어 개발