Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Python 변환의 중단점 디버깅

Code Repositories의 디버거는 Python 변환만 지원합니다. 실행을 중단점에서 멈추고 변수, DataFrame과 함수 호출 상태를 확인할 수 있습니다.

중단점과 실행

코드 줄 왼쪽 여백의 빨간 점을 선택하여 중단점을 만듭니다. 해당 줄을 실행하기 전에 멈추며 여러 파일에 중단점을 둘 수 있습니다.

내부 라이브러리의 일부 중단점은 콘솔 기능이 제한되어 회색으로 표시됩니다. 이 경우 중단점을 무시하거나 제한된 콘솔로 진행하는 선택지가 나타납니다.

Preview and debug를 선택하면 디버거 패널이 열리고 처음 만난 중단점에서 멈춥니다. 왼쪽 도구로 진행, 중단점 제거와 세션 종료를 조정합니다.

내부 라이브러리로 들어가려면 Internal libraries debugging is disabled의 Enable internal libraries debugging을 선택합니다.

진행 도구

편집기는 다음에 실행할 줄을 강조합니다.

제어동작
Resume execution다음 중단점 또는 실행 완료까지 계속합니다.
Step over현재 줄을 실행하되 내부 함수 안으로 들어가지 않습니다.
Step into현재 줄에 호출한 내부 함수가 있으면 그 안으로 들어갑니다.
Step out현재 내부 함수에서 나와 실행을 진행합니다.
Stop execution디버깅 실행을 종료합니다.
Remove breakpoints저장소의 모든 중단점을 지우고 멈추지 않고 Preview를 실행합니다.
Settings중단점을 지우지 않고 디버거를 켜거나 끕니다.
Documentation관련 도움말을 엽니다.

중간 DataFrame

변수 목록의 DataFrame에서 Preview를 선택하면 중간 결과를 볼 수 있습니다.

Back to debugger로 돌아갑니다.

표시한 값은 Preview의 입력 샘플에서 계산한 결과입니다. 전체 데이터셋의 출력값이나 전체 행 분포로 해석하지 않습니다.

Frame, 변수와 콘솔

Frame은 실행 중인 함수 또는 중단점이 있는 함수의 호출 문맥입니다. 함수 이름, 파일과 줄 번호가 표시됩니다. Frame을 선택하면 그 문맥의 변수를 확인하고 콘솔 명령을 실행할 수 있습니다.

Variables에는 로컬 및 전역 변수가 표시됩니다.

Console 아래 명령줄에서 PySpark 명령을 입력하고 Enter 또는 Return으로 실행할 수 있습니다. 변환 코드의 print로 디버깅 콘솔에 정보를 보낼 수도 있습니다. 운영 Spark 빌드의 로그를 남기는 방식과 디버거 콘솔은 구분해야 합니다.

콘솔은 현재 선택한 frame에서 실행합니다. 다른 함수 frame의 로컬 변수를 이름만으로 읽으면 NameError가 발생합니다. 원하는 변수가 속한 frame을 먼저 선택해야 합니다.

디버거 설정

Debugger 패널의 톱니바퀴에서 기능을 끄면 중단점을 보존하면서 멈추지 않는 Preview를 실행할 수 있습니다.

Settings > Preferences > Debugger에서도 같은 설정을 바꿀 수 있습니다.

설정은 저장소 전체에 적용되지만 지원하지 않는 언어의 Preview는 디버거 설정과 관계없이 평소처럼 동작합니다.