다음을 통해 공유


레코드 추적

워크플로 런타임은 워크플로 인스턴스의 실행을 따르기 위해 추적 레코드를 내보내도록 계측됩니다.

레코드 추적

다음 표에서는 워크플로 런타임에서 내보내는 추적 레코드에 대해 자세히 설명합니다.

추적 기록 설명
워크플로 수명 주기 레코드 워크플로 인스턴스의 수명 주기의 다양한 단계에서 내보냅니다. 예를 들어 워크플로가 시작되거나 완료되면 레코드가 내보내집니다.
활동 생명주기 기록 활동 실행 세부 사항. 이러한 레코드는 활동이 예약된 시간, 활동이 완료된 경우 또는 오류가 발생한 경우와 같은 워크플로 작업의 상태를 나타냅니다.
책갈피 재개 기록 워크플로 인스턴스 내의 책갈피가 다시 시작될 때마다 내보내집니다.
사용자 지정 추적 레코드 워크플로 작성자가 사용자 지정 추적 레코드를 만들고 사용자 지정 작업 내에서 내보낼 수 있습니다.

WF 런타임에서 내보낸 모든 추적 관련 레코드는 공통 데이터 집합을 포함하는 기본 클래스 TrackingRecord에서 파생됩니다. 추적 레코드는 간단한 워크플로의 수명 주기를 보여 줍니다. 각 추적 레코드에는 연결된 추적 이벤트에 대한 세부 정보(예: InstanceIdRecordNumber추적 레코드) 및 추적 레코드 유형과 관련된 추가 정보가 포함됩니다.

워크플로 런타임에서 내보내는 개체 유형 TrackingRecord 은 다음과 같습니다.

  • WorkflowInstanceRecord - 워크플로 TrackingRecord 인스턴스의 수명 주기를 설명합니다. 예를 들어 워크플로가 시작되거나 완료되면 레코드가 내보내지고 워크플로 인스턴스의 상태가 포함됩니다. 이 레코드의 세부 정보는 .에서 WorkflowInstanceRecord찾을 수 있습니다.

  • WorkflowInstanceAbortedRecord - TrackingRecord 워크플로 인스턴스가 중단될 때 내보내집니다. 레코드에는 워크플로 인스턴스가 중단되는 이유가 포함됩니다. 이 레코드의 세부 정보는 .에서 WorkflowInstanceAbortedRecord찾을 수 있습니다.

  • WorkflowInstanceUnhandledExceptionRecord - TrackingRecord 워크플로 인스턴스에서 예외가 발생하고 작업에서 처리되지 않는 경우 내보내집니다. 레코드에는 예외 세부 정보가 포함됩니다. 이 레코드의 세부 정보는 .에서 WorkflowInstanceUnhandledExceptionRecord찾을 수 있습니다.

  • WorkflowInstanceSuspendedRecord - TrackingRecord 워크플로 인스턴스가 일시 중단될 때마다 내보내집니다. 레코드에는 워크플로 인스턴스가 일시 중단되는 이유가 포함됩니다. 이 레코드의 세부 정보는 .에서 WorkflowInstanceSuspendedRecord찾을 수 있습니다.

  • WorkflowInstanceTerminatedRecord - TrackingRecord 워크플로 인스턴스가 종료될 때마다 내보내집니다. 레코드에는 워크플로 인스턴스가 종료되는 이유가 포함됩니다. 이 레코드의 세부 정보는 .에서 WorkflowInstanceTerminatedRecord찾을 수 있습니다.

  • ActivityStateRecord - 워크플로 TrackingRecord 내의 활동이 실행될 때 내보내집니다. 이러한 레코드는 워크플로 인스턴스 내의 활동 상태를 나타냅니다. 이 레코드의 세부 정보는 .에서 ActivityStateRecord찾을 수 있습니다.

  • ActivityScheduledRecord - TrackingRecord 활동이 자식 활동을 예약할 때 내보내집니다. 이 레코드에는 부모 활동(예약 활동) 및 예약된 자식 활동에 대한 세부 정보가 모두 포함됩니다. 이 레코드의 세부 정보는 .에서 ActivityScheduledRecord찾을 수 있습니다.

  • FaultPropagationRecord - TrackingRecord 이 레코드는 처리될 때까지 각 처리기가 이를 확인할 때마다 내보내집니다. 워크플로 인스턴스 내에서 오류가 발생한 경로를 나타내는 데 사용됩니다. 이 레코드의 세부 정보는 .에서 FaultPropagationRecord찾을 수 있습니다.

  • CancelRequestedRecord - TrackingRecord 활동이 자식 활동을 취소하려고 할 때마다 내보내집니다. 이 레코드에는 취소되는 부모 활동과 자식 활동 모두에 대한 세부 정보가 포함됩니다. 이 레코드의 세부 정보는 .에서 CancelRequestedRecord찾을 수 있습니다.

  • BookmarkResumptionRecord - TrackingRecord 성공적으로 다시 시작된 모든 책갈피를 추적합니다. 이 레코드의 세부 정보는 .에서 BookmarkResumptionRecord찾을 수 있습니다.

  • CustomTrackingRecord - 이 TrackingRecord은 워크플로 작성자가 사용자 지정 워크플로 활동 내에서 생성하고 전파합니다. 사용자 지정 추적 레코드는 레코드와 함께 내보낼 데이터로 채울 수 있습니다. 이 레코드의 세부 정보는 .에서 CustomTrackingRecord찾을 수 있습니다.

예를 들어, 다음 순서대로 추적 레코드가 내보내지는 Sequence 운영을 포함하는 간단한 WriteLine 활동이 있을 수 있습니다.

  1. WorkflowInstanceRecord 는 워크플로가 시작 중임을 나타냅니다.

  2. ActivityScheduledRecord 는 활동이 예약되었음을 나타냅니다. 이 경우 활동입니다 Sequence .

  3. ActivityScheduledRecordWriteLine 활동을 나타냅니다.

  4. 완료된 두 활동을 나타내는 두 개의 ActivityStateRecord 레코드가 있습니다.

  5. WorkflowInstanceRecord 는 워크플로가 완료되고 있음을 나타냅니다.

참고하십시오