다음을 통해 공유


확장 오류 정보 이해

확장된 오류 정보는 각각 시스템 또는 애플리케이션의 특정 계층을 통해 오류 코드를 전달하는 것을 나타내는 레코드 배열입니다. 컴퓨터 C에서 오류가 발생하면 머신 A에서 호출되는 컴퓨터 B에서 호출되므로 컴퓨터 C의 RPC 런타임은 오류를 설명하는 하나 이상의 레코드를 생성하고 컴퓨터 B에 전달합니다. 컴퓨터 B는 기존 체인의 헤드에 하나 이상의 레코드를 추가할 수 있습니다. 전체 체인을 A에 전달합니다. 은 하나 이상의 레코드를 추가하고 정보를 표시하거나 기록할 수 있습니다. 기본적으로 확장된 오류 체인은 오류의 기록을 나타냅니다.

확장된 오류 정보는 오류 코드(RPC_S_* 상태 코드)를 대체하지 않습니다. 확장 오류 정보가 생성되는 양이나 여부에 관계없이 오류 코드는 변경되지 않은 상태로 유지됩니다.

확장된 각 오류 정보 레코드에는 다음이 포함됩니다. 자세한 내용은 RPC_EXTENDED_ERROR_INFO 참조하세요.

  • ComputerName - 오류가 발생한 컴퓨터의 정규화되지 않은 DNS 이름입니다. 컴퓨터 경계의 레코드에만 이 정보가 있습니다. 예를 들어 앞에서 컴퓨터 A, B 및 C와 함께 설명한 시나리오에서 ComputerName은 다음 필드에 대해 정의됩니다.

    레코드 ComputerName 필드
    컴퓨터 C에서 생성된 레코드 #1 -
    컴퓨터 C에서 생성된 레코드 #2 -
    컴퓨터 C에서 생성된 레코드 #3 C
    컴퓨터 B에서 생성된 레코드 #1 -
    컴퓨터 B에서 생성된 레코드 #2 -
    컴퓨터 B에서 생성된 레코드 #3 b
    컴퓨터 A에서 생성된 레코드 #1 -
    컴퓨터 A에서 생성된 레코드 #2 -
    컴퓨터 A에서 생성된 레코드 #3 -
    체인의 머리  

     

  • ProcessID - 오류를 생성한 프로세스의 프로세스 식별자입니다.

  • TimeStamp - 오류가 발생한 시간이며 UTC 형식으로 표현됩니다.

  • 구성 요소 생성 - 오류를 생성한 논리 구성 요소의 정수 코드 정의입니다. 현재 정의된 구성 요소는 다음과 같습니다.

    코드 속성 설명
    1 애플리케이션 특정 RPC 호출에 대한 관리자 루틴을 소유하는 구성 요소
    2 런타임 RPC 런타임
    3 보안 공급자 이 호출에 대한 보안 공급자입니다.
    4 NPFS NPFS 파일 시스템
    5 Rdr 리렉터
    6 Nmp 명명된 파이프 시스템입니다. NPFS 또는 RDR일 수 있지만 대부분의 경우 RPC 런타임은 요청된 작업을 수행한 사용자를 알지 못하며 이러한 경우 NMP가 반환됩니다.
    7 IO IO 시스템 또는 IO 시스템에서 사용하는 드라이버입니다. NPFS, RDR 또는 Winsock 공급자일 수 있습니다.
    8 Winsock Winsock 공급자
    9 Authz 코드 권한 부여 API입니다.
    10 Lpc 로컬 프로시저 호출 기능입니다.

     

  • 상태 - 계층에서 생성되거나 반환되는 오류 코드
  • DetectionLocation - 오류가 검색된 코드의 위치를 식별하는 고유 번호입니다. 이 필드는 코드에 연결되며 버전에서 버전으로 변경됩니다. 가장 일반적으로 발생하는 검색 위치의 별도 목록이 게시됩니다.
  • 플래그 - 레코드에 대한 정보를 지정하는 플래그입니다. 현재 정의된 플래그는 각각 숫자 값 1과 2에 해당하는 EEInfoPreviousRecordsMissing 및 EEInfoNextRecordsMissing입니다. EEInfoPreviousRecordsMissing이 설정되면 해당 레코드가 누락되기 전에 하나 이상의 레코드가 누락됩니다. EEInfoNextRecordsMissing이 설정된 경우 해당 레코드 이후 하나 이상의 레코드가 누락됩니다. 레코드가 누락된 이유에 대한 설명은 확장 오류 정보의 안정성을 참조하세요.
  • 최대 4개의 오류 매개 변수. 오류 매개 변수는 오류에 대한 추가 정보를 제공하는 간단한 변형 구조체입니다. 추가 정보는 오류 및 검색 위치에 따라 달라집니다. 매개 변수는 ANSI 문자열(LPSTR), 유니코드 문자열(LPWSTR), long 값(long), short 값(short), 포인터(int64) 또는 none 형식일 수 있습니다.