SqlTrackingService 클래스

정의

경고

이 API는 현재 사용되지 않습니다.

SQL 데이터베이스를 사용하여 추적 정보를 저장하는 추적 서비스를 나타냅니다.Represents a tracking service that uses a SQL database to store tracking information.

public ref class SqlTrackingService sealed : System::Workflow::Runtime::Tracking::TrackingService, System::Workflow::Runtime::Tracking::IProfileNotification
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public sealed class SqlTrackingService : System.Workflow.Runtime.Tracking.TrackingService, System.Workflow.Runtime.Tracking.IProfileNotification
type SqlTrackingService = class
    inherit TrackingService
    interface IProfileNotification
Public NotInheritable Class SqlTrackingService
Inherits TrackingService
Implements IProfileNotification
상속
특성
구현

설명

참고

이 자료에서는 더 이상 사용되지 않는 형식과 네임스페이스에 대해 설명합니다.This material discusses types and namespaces that are obsolete. 자세한 내용은 Deprecated Types in Windows Workflow Foundation 4.5(Windows Workflow Foundation 4.5에서 사용되지 않는 형식)를 참조하세요.For more information, see Deprecated Types in Windows Workflow Foundation 4.5.

SqlTrackingService 클래스는 제대로 작동하는 추적 서비스를 나타냅니다.The SqlTrackingService class represents a fully functional tracking service. 이 서비스를 있는 그대로 사용하여 추적 정보를 수집 및 저장하고 추적 프로필을 저장하여 워크플로 런타임 엔진이 요청할 때 제공할 수 있습니다.You can use this service out-of-box to collect and store tracking information, and to store tracking profiles and provide them when requested by the workflow runtime engine. SQL 추적 서비스는 런타임 추적 인프라가 보낸 추적 데이터를 SQL 데이터베이스에 씁니다.The SQL tracking service writes tracking data sent to it by the runtime tracking infrastructure to a SQL database.

많은 시나리오에서 SqlTrackingService가 데이터베이스와 워크플로 런타임 엔진의 상태 간에 일관성을 유지 관리하는 것이 중요합니다.In many scenarios it is important for the SqlTrackingService to maintain consistency between its database and the state of the workflow runtime engine. 따라서 SqlTrackingChannel 클래스는 IPendingWork가 제공하는 워크플로 트랜잭션 일괄 처리 기능에 참여하기 위해 WorkflowCommitWorkBatchService 인터페이스를 사용합니다.Therefore, the SqlTrackingChannel class makes use of the IPendingWork interface to participate in the workflow transaction batching functionality provided by the WorkflowCommitWorkBatchService. IsTransactional을 설정하거나 해당 매개 변수를 생성자로 전달하여 SqlTrackingService가 일괄 처리에 참여하도록 구성하고 SQL 데이터베이스에 대해 보류 중인 변경 내용을 나타내는 개체를 WorkBatch에 추가할 수 있습니다.You can set IsTransactional or pass the appropriate parameters to the constructor to configure the SqlTrackingService to participate in batching and add objects that represent pending changes to the SQL database to the WorkBatch.

또한 SqlTrackingService는 추적 프로필을 데이터베이스에 유지 관리합니다.The SqlTrackingService also maintains tracking profiles in its database. 워크플로 런타임 엔진은 사용 중인 추적 프로필의 변경 내용에 대한 알림을 받아야 합니다.The workflow runtime engine must be kept apprised of changes to any of the tracking profiles that it is using. SqlTrackingService는 데이터베이스에 저장된 IProfileNotification의 변경 내용을 워크플로 런타임 엔진에 알리기 위해 TrackingProfile 인터페이스를 구현하고 데이터베이스의 추적 프로필을 정기적으로 검사합니다.The SqlTrackingService implements the IProfileNotification interface and periodically examines the tracking profiles in its database in order to notify the workflow runtime engine of changes to a TrackingProfile stored in its database. ProfileChangeCheckInterval가 추적 런타임에 프로필 변경 내용을 알리기 위해 추적 프로필을 검사하는 간격을 설정하려면 SqlTrackingService을 설정하거나 해당 매개 변수를 생성자로 전달할 수 있습니다.You can set ProfileChangeCheckInterval or pass the appropriate parameter to the constructor in order to set the interval at which the SqlTrackingService examines its tracking profiles to notify the tracking runtime of any profile changes.

참고

워크플로 애플리케이션에 SqlTrackingServiceSqlWorkflowPersistenceService를 모두 사용하는 경우 단일 데이터베이스를 유지와 추적에 모두 사용하는 것이 좋습니다.When using both the SqlTrackingService and the SqlWorkflowPersistenceService in a workflow application, it is recommended that you use a single database for both persistence and tracking.

생성자

SqlTrackingService(NameValueCollection)

지정된 SqlTrackingService을 사용하여 NameValueCollection 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the SqlTrackingService class by using the specified NameValueCollection.

SqlTrackingService(String)

지정된 데이터베이스 연결 문자열을 사용하여 SqlTrackingService 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the SqlTrackingService class by using the specified database connection string.

속성

ConnectionString

추적 데이터베이스에 대한 연결 문자열을 가져옵니다.Gets the connection string for the tracking database.

EnableRetries

SqlTrackingService가 데이터베이스 작업을 수행할 때 다시 시도할지 여부를 지정하는 값을 가져오거나 설정합니다.Gets or sets a value specifying whether the SqlTrackingService will retry when performing a database operation.

IsTransactional

SqlTrackingService가 워크플로 트랜잭션에 참여할지 여부를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates whether SqlTrackingService participates in workflow transactions.

PartitionOnCompletion

워크플로 인스턴스에 대한 추적 데이터를 워크플로 인스턴스가 완료될 때 데이터베이스의 현재 활성 파티션으로 이동할지 여부를 지정하는 값을 가져오거나 설정합니다.Gets or sets a value that specifies whether tracking data for a workflow instance should be moved to the currently active partition in the database when the workflow instance is completed.

ProfileChangeCheckInterval

데이터베이스에서 하나 이상의 추적 프로필에 대한 변경 내용을 확인하는 간격을 지정하는 값을 가져오거나 설정합니다.Gets or sets a value that specifies the interval at which the database should be checked for changes to one or more of its tracking profiles.

Runtime

이 서비스에 대한 WorkflowRuntime을 가져옵니다.Gets the WorkflowRuntime for this service.

(다음에서 상속됨 WorkflowRuntimeService)
State

WorkflowRuntimeService의 상태를 가져옵니다.Gets the state of the WorkflowRuntimeService.

(다음에서 상속됨 WorkflowRuntimeService)
UseDefaultProfile

추적 프로필이 없는 워크플로 유형에 기본 TrackingProfile을 사용할지 여부를 지정하는 값을 가져오거나 설정합니다.Gets or sets a value specifying whether a default TrackingProfile should be used for workflow types that do not have a tracking profile.

메서드

Equals(Object)

지정한 개체가 현재 개체와 같은지를 확인합니다.Determines whether the specified object is equal to the current object.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(다음에서 상속됨 Object)
GetProfile(Guid)

파생 클래스에서 재정의되어야 하며, 구현되는 경우 지정된 워크플로 인스턴스에 대한 추적 프로필을 반환합니다.Must be overridden in the derived class, and when implemented, returns the tracking profile for the specified workflow instance.

(다음에서 상속됨 TrackingService)
GetProfile(Type, Version)

파생 클래스에서 재정의되어야 하며, 구현되는 경우 지정된 워크플로 Type에 대한 버전으로 정규화된 추적 프로필을 반환합니다.Must be overridden in the derived class, and when implemented, returns the tracking profile, qualified by version, for the specified workflow Type.

(다음에서 상속됨 TrackingService)
GetTrackingChannel(TrackingParameters)

파생 클래스에서 재정의되어야 하며, 구현되는 경우 런타임 추적 인프라가 추적 레코드를 추적 서비스로 보내는 데 사용하는 채널을 반환합니다.Must be overridden in the derived class, and when implemented, returns the channel that the run-time tracking infrastructure uses to send tracking records to the tracking service.

(다음에서 상속됨 TrackingService)
GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(다음에서 상속됨 Object)
OnStarted()

파생 클래스에서 재정의되는 경우 워크플로 런타임 엔진이 Started 이벤트를 발생시킬 때 호출되는 메서드를 나타냅니다.When overridden in a derived class, represents the method that will be called when the workflow runtime engine raises the Started event.

(다음에서 상속됨 WorkflowRuntimeService)
OnStopped()

파생 클래스에서 재정의되는 경우 워크플로 런타임 엔진이 Stopped 이벤트를 발생시킬 때 호출되는 메서드를 나타냅니다.When overridden in a derived class, represents the method that will be called when the workflow runtime engine raises the Stopped event.

(다음에서 상속됨 WorkflowRuntimeService)
RaiseServicesExceptionNotHandledEvent(Exception, Guid)

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

(다음에서 상속됨 WorkflowRuntimeService)
Start()

파생 클래스에서 재정의되는 경우 서비스를 시작하고 StateStarting으로 변경합니다.When overridden in a derived class, starts the service and changes the State to Starting.

(다음에서 상속됨 WorkflowRuntimeService)
Stop()

파생 클래스에서 재정의되는 경우 서비스를 중지하고 StateStopping으로 변경합니다.When overridden in a derived class, stops the service and changes the State to Stopping.

(다음에서 상속됨 WorkflowRuntimeService)
ToString()

현재 개체를 나타내는 string을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)
TryGetProfile(Type, TrackingProfile)

파생 클래스에서 재정의되어야 하며, 구현되는 경우 지정된 워크플로 유형에 대한 추적 프로필(사용 가능한 경우)을 검색합니다.Must be overridden in the derived class, and when implemented, retrieves the tracking profile for the specified workflow type if one is available.

(다음에서 상속됨 TrackingService)
TryReloadProfile(Type, Guid, TrackingProfile)

파생 클래스에서 재정의되어야 하며, 구현되는 경우 추적 프로필이 마지막으로 로드된 이후 변경되었으면 지정된 워크플로 인스턴스에 대한 새 추적 프로필을 검색합니다.Must be overridden in the derived class, and when implemented, retrieves a new tracking profile for the specified workflow instance if the tracking profile has changed since it was last loaded.

(다음에서 상속됨 TrackingService)

이벤트

ProfileRemoved

SqlTrackingService에서 TrackingProfile이 삭제된 것을 확인할 때 발생합니다.Occurs when the SqlTrackingService detects that a TrackingProfile has been deleted.

ProfileUpdated

SqlTrackingService에서 TrackingProfile이 변경된 것을 확인할 때 발생합니다.Occurs when the SqlTrackingService detects that a TrackingProfile has been changed.

적용 대상

추가 정보