TrackingService 클래스

정의

주의

The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*

추적 서비스와 런타임 추적 인프라 간의 기본 인터페이스를 제공합니다.

public ref class TrackingService abstract : System::Workflow::Runtime::Hosting::WorkflowRuntimeService
public abstract class TrackingService : System.Workflow.Runtime.Hosting.WorkflowRuntimeService
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public abstract class TrackingService : System.Workflow.Runtime.Hosting.WorkflowRuntimeService
type TrackingService = class
    inherit WorkflowRuntimeService
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type TrackingService = class
    inherit WorkflowRuntimeService
Public MustInherit Class TrackingService
Inherits WorkflowRuntimeService
상속
TrackingService
파생
특성

설명

메모

이 재질에서는 사용되지 않는 형식 및 네임스페이스에 대해 설명합니다. 자세한 내용은 Windows Workflow Foundation 4.5 참조하세요.

추적 서비스는 추적 채널 및 추적 프로필을 워크플로 런타임 엔진에 제공하는 역할을 담당합니다. 워크플로 런타임 엔진은 해당 엔진이 있는 각 워크플로 인스턴스TrackingChannel에 대해 추적 서비스에서 하나를 TrackingProfile 요청합니다. 워크플로 런타임 엔진은 이를 TrackingChannel 사용하여 해당 워크플로 인스턴스와 연결된 추적 레코드를 보냅니다. 런 TrackingProfile 타임 추적 인프라가 추적 레코드를 보내야 하는 추적 이벤트 집합을 지정하는 추적 지점이 포함되어 있습니다. 또한 A는 TrackingProfile 이러한 추적 이벤트 중 하나가 발생할 때 워크플로 인스턴스에서 추출할 데이터를 지정할 수도 있습니다.

런타임 추적 인프라는 워크플로 인스턴스에서 TrackingProfile 내보낸 추적 이벤트를 필터링하는 데 사용합니다. 추적 이벤트의 추적 지점 TrackingProfile과 일치하는 추적 이벤트를 내보낸 경우 런타임 추적 인프라는 워크플로 인스턴스에서 지정된 TrackingProfile 모든 데이터를 추출하고 추적 레코드의 추적 이벤트에 대한 정보와 이 데이터를 캡슐화합니다. 그런 다음, 이 추적 레코드는 워크플로 인스턴스와 연결된 레코드 TrackingChannel 를 통해 전송됩니다. 추적 레코드는 다음 종류 중 하나일 수 있습니다.

ActivityTrackingRecord

UserTrackingRecord

WorkflowTrackingRecord

호스트 애플리케이션은 선택한 방식으로 추적 레코드를 사용할 수 있습니다. 예를 들어 호스트 애플리케이션은 추적 정보를 데이터베이스에 저장하고 이를 사용하여 정교한 사용자 인터페이스를 구현하거나 정보를 사용하여 관리자에게 몇 가지 작업이 필요한 조건을 알릴 수 있습니다. 호출 WorkflowRuntime.AddService 하거나 애플리케이션 구성 파일에 적절한 항목을 포함하여 워크플로 런타임 엔진에 추적 서비스를 등록할 수 있습니다.

모든 추적 서비스는 추상 클래스에서 TrackingService 상속되어야 합니다. 이 클래스는 추적 서비스와 런타임 추적 인프라 간의 기본 인터페이스를 정의합니다. 워크플로 런타임 엔진은 오버로드된 TrackingProfile 메서드 또는 메서드 중 하나를 호출하여 특정 워크플로 인스턴스 또는 워크플로 TypeGetProfile 대해 요청 TryGetProfile 합니다. 워크플로 런타임 엔진은 .를 요청하기 위해 호출 GetTrackingChannel 합니다 TrackingChannel.

워크플로 추적 런타임은 지속성 저장소에서 워크플로 인스턴스를 만들거나 로드할 때마다 및 메서드를 호출 GetProfileTryGetProfile 합니다. 이러한 호출과 관련된 오버헤드는 추적 서비스(예: 많은 데이터베이스 호출)에 비용이 많이 들 수 있습니다. 추적 서비스에서 인터페이스를 IProfileNotification 구현하여 이 호출 기반 메커니즘을 우회하고 이벤트를 사용하여 워크플로 런타임 엔진에 변경 내용을 TrackingProfile알릴 수 있습니다. 인터페이스를 구현 IProfileNotification 하는 추적 서비스의 경우 워크플로 런타임 엔진은 해당 및 ProfileUpdated 이벤트를 구독합니다ProfileRemoved. 추적 서비스는 추적 프로필 중 하나에 대한 변경이 발생할 때 적절한 이벤트를 발생할 수 있습니다. 클래스는 SqlTrackingService 이 인터페이스를 구현합니다.

워크플로 런타임 엔진은 호스트 또는 서비스에서 워크플로 인스턴스에 대한 명시적 호출의 결과로 업데이트 또는 제거되었는지 여부를 TryReloadProfile 테스트하기 위해 메서드를 TrackingProfile 호출 ReloadTrackingProfiles 합니다. 이 프로세스를 통해 호스트 또는 서비스는 특정 워크플로 인스턴스에 사용되는 추적 프로필을 동적으로 변경할 수 있습니다.

구현자 참고

생성자

Name Description
TrackingService()
사용되지 않음.

파생 클래스에서 구현되는 경우 클래스의 새 인스턴스를 TrackingService 초기화합니다.

속성

Name Description
Runtime
사용되지 않음.

WorkflowRuntime 이 서비스에 대한 값을 가져옵니다.

(다음에서 상속됨 WorkflowRuntimeService)
State
사용되지 않음.

의 상태를 WorkflowRuntimeService가져옵니다.

(다음에서 상속됨 WorkflowRuntimeService)

메서드

Name Description
Equals(Object)
사용되지 않음.

지정된 개체가 현재 개체와 같은지 여부를 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()
사용되지 않음.

기본 해시 함수로 사용됩니다.

(다음에서 상속됨 Object)
GetProfile(Guid)
사용되지 않음.

파생 클래스에서 재정의되어야 하며 구현될 때 지정된 워크플로 인스턴스에 대한 추적 프로필을 반환합니다.

GetProfile(Type, Version)
사용되지 않음.

파생 클래스에서 재정의되어야 하며 구현될 때 지정된 워크플로 Type에 대해 버전별로 한정된 추적 프로필을 반환합니다.

GetTrackingChannel(TrackingParameters)
사용되지 않음.

파생 클래스에서 재정의되어야 하며, 구현될 때 런타임 추적 인프라가 추적 레코드를 추적 서비스에 보내는 데 사용하는 채널을 반환합니다.

GetType()
사용되지 않음.

현재 인스턴스의 Type 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()
사용되지 않음.

현재 Object단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
OnStarted()
사용되지 않음.

파생 클래스에서 재정의되는 경우 워크플로 런타임 엔진이 이벤트를 발생시킬 때 호출되는 메서드를 Started 나타냅니다.

(다음에서 상속됨 WorkflowRuntimeService)
OnStopped()
사용되지 않음.

파생 클래스에서 재정의되는 경우 워크플로 런타임 엔진이 이벤트를 발생시킬 때 호출되는 메서드를 Stopped 나타냅니다.

(다음에서 상속됨 WorkflowRuntimeService)
RaiseServicesExceptionNotHandledEvent(Exception, Guid)
사용되지 않음.

ServicesExceptionNotHandled 이벤트를 발생시킵니다.

(다음에서 상속됨 WorkflowRuntimeService)
Start()
사용되지 않음.

파생 클래스에서 재정의된 경우 서비스를 시작하고 다음으로 State변경 Starting 합니다.

(다음에서 상속됨 WorkflowRuntimeService)
Stop()
사용되지 않음.

파생 클래스에서 재정의된 경우 서비스를 중지하고 다음으로 State변경 Stopping 합니다.

(다음에서 상속됨 WorkflowRuntimeService)
ToString()
사용되지 않음.

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)
TryGetProfile(Type, TrackingProfile)
사용되지 않음.

파생 클래스에서 재정의되어야 하며 구현될 때 지정된 워크플로 유형에 대한 추적 프로필을 검색합니다(사용 가능한 경우).

TryReloadProfile(Type, Guid, TrackingProfile)
사용되지 않음.

파생 클래스에서 재정의되어야 하며, 구현될 때 추적 프로필이 마지막으로 로드된 이후 변경된 경우 지정된 워크플로 인스턴스에 대한 새 추적 프로필을 검색합니다.

적용 대상

추가 정보