다음을 통해 공유


제어 흐름 디버깅

적용 대상: SQL Server Azure Data Factory의 SSIS Integration Runtime

SSDT(SQL Server 데이터 도구) 및 Microsoft Integration Services에는 통합 서비스 패키지의 제어 흐름 문제를 해결하는 데 사용할 수 있는 기능 및 도구가 포함되어 있습니다.

  • Integration Services는 컨테이너 및 작업에 대한 중단점을 지원합니다.

  • SSIS 디자이너는 런타임 시 진행률 보고를 제공합니다.

  • SSDT(SQL Server Data Tools)는 디버그 창을 제공합니다.

중단점

SSIS 디자이너는 중단 조건을 설정하고 패키지 실행이 일시 중지되기 전에 중단점이 발생할 수 있는 횟수를 지정하여 중단점을 설정할 수 있는 중단점 설정 대화 상자를 제공합니다. 중단점은 패키지 수준이나 개별 구성 요소의 수준에서 설정될 수 있습니다. 작업 또는 컨테이너 수준에서 중단 조건을 사용하도록 설정하면 제어 흐름 탭의 디자인 화면에서 작업 또는 컨테이너 옆에 중단점 아이콘이 나타납니다. 패키지에서 중단 조건을 사용하도록 설정하면 제어 흐름 탭의 레이블에 중단점 아이콘이 나타납니다.

중단점이 적중되면 중단점 아이콘이 변경되어 중단점의 원본을 식별할 수 있습니다. 패키지가 실행 중일 때 중단점을 추가, 삭제 및 변경할 수 있습니다.

Integration Services는 모든 작업 및 컨테이너에서 사용하도록 설정할 수 있는 10가지 중단 조건을 제공합니다. 중단점 설정 대화 상자에서 다음 조건에 따라 중단점을 설정할 수 있습니다.

Break Condition 설명
태스크나 컨테이너가 OnPreExecute 이벤트를 받을 때 작업을 실행하려고 할 때 호출됩니다. 이 이벤트는 태스크 또는 컨테이너가 실행되기 직전에 발생합니다.
태스크나 컨테이너가 OnPostExecute 이벤트를 받을 때 태스크의 실행 논리가 완료된 직후에 호출됩니다. 이 이벤트는 실행 직후 태스크 또는 컨테이너에 의해 발생합니다.
태스크나 컨테이너가 OnError 이벤트를 받을 때 오류가 발생할 때 태스크 또는 컨테이너에서 호출됩니다.
태스크나 컨테이너가 OnWarning 이벤트를 받을 때 태스크가 오류를 정당화하지 않지만 경고를 보증하는 상태에 있을 때 호출됩니다.
태스크나 컨테이너가 OnInformation 이벤트를 받을 때 태스크가 정보를 제공해야 하는 경우에 호출됩니다.
태스크나 컨테이너가 OnTaskFailed 이벤트를 받을 때 태스크 호스트가 실패할 때 해당 태스크 호스트에 의해 호출됩니다.
태스크나 컨테이너가 OnProgress 이벤트를 받을 때 작업 실행에 대한 진행률을 업데이트하기 위해 호출됩니다.
태스크나 컨테이너가 OnQueryCancel 이벤트를 받을 때 태스크 처리 중 실행을 취소할 수 있는 모든 시점에 호출됩니다.
태스크나 컨테이너가 OnVariableValueChanged 이벤트를 받을 때 변수 값이 변경되면 Integration Services 런타임에서 호출됩니다. 이 이벤트를 발생하려면 변수의 RaiseChangeEvent를 true 로 설정해야 합니다.

** 경고 ** 이 중단점과 연결된 변수는 컨테이너 범위에서 정의되어야 합니다. 변수가 패키지 범주로 정의된 경우 중단점이 적중되지 않습니다.
태스크나 컨테이너가 OnCustomEvent 이벤트를 받을 때 태스크에서 호출하여 사용자 지정 작업 정의 이벤트를 발생시킵니다.

모든 태스크 및 컨테이너에 대해 사용할 수 있는 중단 조건 외에도 일부 태스크 및 컨테이너에는 중단점 설정을 위한 특수한 중단 조건이 포함됩니다. 예를 들어 For 루프 컨테이너에서 루프의 각 반복이 시작될 때 실행을 일시 중단하는 중단점을 설정하는 중단 조건을 사용하도록 설정할 수 있습니다.

중단점에 유연성과 기능을 추가하려면 다음 옵션을 지정하여 중단점의 동작을 수정할 수 있습니다.

  • 실행이 일시 중지되기 전에 중단 조건이 발생하는 최대 횟수 또는 적중 횟수

  • 적중 횟수 유형 또는 중단 조건이 중단점을 트리거하는 시기를 지정하는 규칙입니다.

Always 형식을 제외한 적중 횟수 형식은 적중 횟수에 따라 더 한정됩니다. 예를 들어 형식이 "적중 횟수 같음"이고 적중 횟수가 5이면 중단 조건의 여섯 번째 발생에 대해 실행이 일시 중단됩니다.

다음 표에서는 주요 적중 횟수 형식에 대해 설명합니다.

적중 횟수 형식 설명
Always 중단점에 도달하면 실행이 항상 일시 중지됩니다.
적중 횟수 같음 중단점이 발생한 횟수가 적중 횟수와 같으면 실행이 일시 중지됩니다.
다음보다 크거나 같은 적중 횟수 중단점이 발생한 횟수가 적중 횟수보다 크거나 같으면 실행이 일시 중지됩니다.
다음 배수의 적중 횟수 적중 횟수가 배수에 도달하면 실행이 중단됩니다. 예를 들어 이 옵션을 5로 설정하면 5회마다 실행이 일시 중단됩니다.

중단점 설정하기

진행률 보고

SSIS 디자이너에는 제어 흐름 탭의 디자인 화면상의 색 구분 기능과 진행률 탭에 표시되는 진행률 메시지의 두 가지 진행률 보고 유형이 있습니다.

패키지를 실행할 때 SSIS 디자이너는 실행 상태를 나타내는 색을 사용하여 각 태스크 또는 컨테이너를 표시하여 실행 진행률을 보여 줍니다. 요소가 실행 대기 중인지, 현재 실행 중인지, 성공적으로 완료되었는지 또는 실패로 끝났는지를 색으로 알 수 있습니다. 패키지 실행을 중지하면 색 코딩이 사라집니다.

다음 표에서는 실행 상태를 표시하는 데 사용되는 색에 대해 설명합니다.

Color 실행 상태
회색 실행 대기 중
노란색 실행 중
녹색 성공적으로 실행되었습니다
강조 표시됨 실행 후 오류가 발생했습니다

진행률 탭에는 작업과 컨테이너가 실행 순서대로 나열되며 시작 및 종료 시간, 경고 및 오류 메시지가 포함됩니다. 패키지 실행을 중지한 후에는 실행 결과 탭에서 진행률 정보를 계속 사용할 수 있습니다.

참고 항목

진행률 탭에 메시지를 표시할지 여부는 SSIS 메뉴의 디버그 진행률 보고 옵션을 선택 또는 선택 취소하여 설정합니다.

다음 다이어그램은 진행률 탭을 보여줍니다.

SSIS 디자이너의 진행률 탭

디버그 창

SQL Server Data Tools (SSDT)에는 중단점을 사용하고, 중단점이 포함된 패키지를 디버깅하는 데 사용할 수 있는 여러 창이 포함됩니다. 각 창에 대해 자세히 알아보려면 창을 연 다음 F1 키를 눌러 창에 대한 도움말을 표시합니다.

SQL Server Data Tools(SSDT)에서 이러한 창을 열려면 디버그 메뉴를 클릭하고 Windows를 가리킨 다음 중단점, 출력 또는 즉시를 클릭합니다.

다음 표에서는 각 창에 대해 설명합니다.

설명
중단점 패키지에 있는 중단점을 나열하고 중단점을 설정 및 해제할 수 있는 옵션을 제공합니다.
출력 SSDT(SQL Server Data Tools)의 기능에 대한 상태 메시지를 표시합니다.
Immediate 식을 디버그 및 평가하고 변수 값을 인쇄하는 데 사용됩니다.

작업 또는 컨테이너에서 중단점을 설정하여 패키지 디버그

이 절차에서는 패키지, 태스크, For 루프 컨테이너, Foreach 루프 컨테이너 또는 시퀀스 컨테이너에 중단점을 설정하는 방법을 설명합니다.

패키지, 작업 또는 컨테이너에서 중단점을 설정하려면

  1. SSDT(SQL Server Data Tools)에서 원하는 패키지가 들어 있는 Integration Services 프로젝트를 엽니다.

  2. 중단점을 설정하려는 패키지를 두 번 클릭합니다.

  3. SSIS 디자이너에서 다음을 수행합니다.

    • 패키지 개체에서 중단점을 설정하려면 제어 흐름 탭을 클릭하고 디자인 표면의 배경 아무 곳에나 커서를 놓고 마우스 오른쪽 단추를 클릭한 다음 중단점 편집을 클릭합니다.

    • 패키지 제어 흐름에 중단점을 설정하려면 제어 흐름 탭을 클릭하고 태스크, For 루프 컨테이너, Foreach 루프 컨테이너 또는 시퀀스 컨테이너를 마우스 오른쪽 단추로 클릭한 다음 중단점 편집을 클릭합니다.

    • 이벤트 처리기에 중단점을 설정하려면 이벤트 처리기 탭을 클릭하고 태스크, For 루프 컨테이너, Foreach 루프 컨테이너 또는 시퀀스 컨테이너를 마우스 오른쪽 단추로 클릭한 다음 중단점 편집을 클릭합니다.

  4. 중단점 설정 <컨테이너 이름> 대화 상자에서 사용하도록 설정할 중단점을 선택합니다.

  5. 필요에 따라 각 중단점에 대한 적중 횟수 유형 및 적중 횟수를 수정합니다.

  6. 패키지를 저장하려면 파일 메뉴에서 선택한 항목 저장 을 클릭합니다.

중단점 설정

중단점 설정 대화 상자를 사용하여 중단점을 사용하도록 설정하고 중단점의 동작을 제어할 이벤트를 지정합니다.

옵션

활성화
이벤트에 중단점을 설정하려면 선택합니다.

Break Condition
중단점을 설정할 사용 가능한 이벤트 목록을 봅니다.

적중 횟수 형식
중단점이 적용되는 시기를 지정합니다.

설명
Always 중단점에 도달하면 실행이 항상 일시 중지됩니다.
적중 횟수 같음 중단점이 발생한 횟수가 적중 횟수와 같으면 실행이 일시 중지됩니다.
적중 횟수 크거나 같음 중단점이 발생한 횟수가 적중 횟수보다 크거나 같으면 실행이 일시 중지됩니다.
적중 횟수의 배수 적중 횟수가 배수에 도달하면 실행이 중단됩니다. 예를 들어 이 옵션을 5로 설정하면 5회마다 실행이 일시 중단됩니다.

적중 횟수
중단을 트리거할 적중 횟수를 지정합니다. 중단점이 항상 적용되는 경우에는 이 옵션을 사용할 수 없습니다.

참고 항목

패키지 배포 문제 해결 도구.
스크립트 태스크 및 스크립트 구성 요소에서 중단점을 설정하여 스크립트 디버깅