디버깅 정보를 수집하도록 IntelliTrace 구성

IntelliTrace 수집 설정을 변경할 때 Visual Studio Ultimate에서 IntelliTrace를 사용하여 디버깅하는 동안 표시할 정보의 양을 제어할 수 있습니다. 이런 설정은 모든 프로젝트와 솔루션에 적용되고 디버깅 세션과 Visual Studio 세션 간에 유지됩니다.

  • 이벤트 수집 구성

  • 함수 호출 수집 구성

  • 모듈 수집 구성

이벤트 수집 구성

IntelliTrace가 항상 수집하는 디버거 이벤트 및 예외를 제외하고 특정 IntelliTrace 이벤트에 대한 수집을 켜거나 끌 수 있습니다. IntelliTrace 이벤트에는 디버거 이벤트, 예외, .NET Framework 이벤트 및 디버깅에 유용한 기타 시스템 이벤트가 있습니다. IntelliTrace로 코드 실행을 기록하여 응용 프로그램 디버깅를 참조하십시오.

  1. Visual Studio Ultimate에서 IntelliTrace가 켜져 있는지 확인합니다.

    Visual Studio에서 IntelliTrace 사용 또는 사용 안 함

    참고

    IntelliTrace 사용을 선택 취소하면 모든 사용자 지정 설정이 해제됩니다.

  2. 수집할 이벤트와 이벤트 범주를 선택합니다.

    IntelliTrace 이벤트 컬렉션 구성

  3. 필요한 경우 디버깅 세션을 다시 시작합니다. IntelliTrace를 사용하여 디버깅을 시작하려면 디버깅 중 IntelliTrace를 사용하여 코드 실행 기록를 참조하십시오.

IntelliTrace는 IntelliTrace 이벤트에 대해 어떤 데이터를 수집합니까?

  • 디버거 이벤트

    성능을 위해 IntelliTrace는 디버거 이벤트에 대한 가능한 모든 값을 전부 기록하지 않습니다. 대신, 다음 값을 기록합니다.

    • 지역 창의 값. 이러한 값을 보려면 지역 창을 열어 둡니다.

    • 자동 창이 열려 있는 경우에 한해 자동 창의 값

    • 해당 값을 보기 위해 소스 창에 있는 변수 위로 마우스 포인터를 이동하면 나타나는 DataTips의 값입니다. IntelliTrace는 고정된 DataTips에서는 값을 수집하지 않습니다.

  • 예외

    IntelliTrace에서는 이러한 종류의 예외에 대한 예외 형식과 메시지를 기록합니다.

    • 예외가 throw되고 catch된 경우의 처리된 예외

    • 처리되지 않은 예외

  • .NET Framework 이벤트

    기본적으로 IntelliTrace는 가장 일반적인 .NET Framework 이벤트를 기록합니다. 예를 들면 다음과 같습니다.

    • 파일 액세스 이벤트의 경우 IntelliTrace가 파일 이름을 수집합니다.

    • 확인란 선택 이벤트의 경우 IntelliTrace는 확인란 상태와 텍스트를 수집합니다.

함수 호출 수집 구성

호출 수집을 켜면 기존 디버깅을 IntelliTrace 디버깅으로 전환하여 단계별로 코드를 실행하고 호출 스택 이력을 볼 수 있습니다. 이 기능을 사용하려면 디버깅 세션을 시작하기 전에 호출 수집을 켭니다. IntelliTrace로 코드 실행을 기록하여 응용 프로그램 디버깅를 참조하십시오.

  1. Visual Studio Ultimate에서 IntelliTrace 이벤트 및 호출 정보를 켜거나 끕니다.

    IntelliTrace에 대한 호출 컬렉션 구성

  2. 필요한 경우 디버깅 세션을 다시 시작합니다. IntelliTrace를 사용하여 디버깅을 시작하려면 디버깅 중 IntelliTrace를 사용하여 코드 실행 기록를 참조하십시오.

참고

호출 수집 기능을 켜면 응용 프로그램 속도가 급격히 느려질 수 있습니다.또한 IntelliTrace 로그 파일(.iTrace 파일)을 디스크에 저장하는 경우 로그 파일의 크기도 커질 수 있습니다.이러한 영향을 최소화하려면 관심 있는 모듈에 대한 호출 정보만 수집하도록 합니다..iTrace 파일의 최대 크기를 변경하려면 도구, 옵션, IntelliTrace, 고급으로 이동합니다.

IntelliTrace는 함수 호출에 대해 어떤 데이터를 수집합니까?

각 함수 호출에 대해 IntelliTrace는 다음 데이터를 기록합니다.

  • 함수 이름

  • 함수 시작 지점에서 매개 변수로 전달하고 함수 종료 지점에서 반환되는 기본 데이터 형식의 값

  • 읽히거나 변경될 때의 자동 속성 값

  • 첫 번째 수준 자식 개체에 대한 포인터, null인지 여부만을 나타내며 해당 값에 대한 포인터는 아님

참고

IntelliTrace는 배열에서 처음 256개의 개체와 문자열의 경우 처음 256자만 수집합니다.

모듈 수집 구성

IntelliTrace가 호출 정보를 어느 정도 수집할지 제어하려면 관심 있는 모듈만 지정합니다. 이와 같이 하면 수집하는 동안의 응용 프로그램 성능을 향상시킬 수 있습니다. IntelliTrace가 호출 정보를 수집하고 있는지 확인하려면 도구, 옵션, IntelliTrace, 일반으로 이동합니다.

모듈을 제외시킬 수도 있지만, 그럴 경우 타사 또는 오픈 소스 모듈 같이 사용자가 관심이 없을 수 있는 모듈에서 데이터가 계속 수집될 수 있습니다.

  1. Visual Studio Ultimate에서 수집을 위해 포함하거나 제외할 모듈을 지정합니다.

    여러 모듈을 추가하려면 문자열의 시작이나 끝 부분에 와일드카드 문자 *를 사용합니다. 모듈 이름에는 어셈블리 이름이 아닌 파일 이름을 사용합니다. 파일 경로는 사용할 수 없습니다.

    IntelliTrace에 대한 모듈 컬렉션 구성

  2. IntelliTrace를 사용하여 디버깅을 시작하려면 디버깅 중 IntelliTrace를 사용하여 코드 실행 기록를 참조하십시오.

자세한 정보는 어디서 얻을 수 있습니까?

IntelliTrace로 코드 실행을 기록하여 응용 프로그램 디버깅

디버깅 중 IntelliTrace를 사용하여 코드 실행 기록

IntelliTrace 독립 실행형 수집기를 사용하여 프로덕션에서 진단 데이터 수집

블로그

Visual Studio ALM + Team Foundation Server

포럼

Visual Studio 디버거

지침

Visual Studio 2012를 사용한 연속 배달 테스트 – 6장: 테스트 도구 상자

비디오

Channel 9: IntelliTrace 데이터 수집 및 분석