다음을 통해 공유


PublisherMonitor.EnumSubscriptions 메서드

정의

모니터링되는 게시자에서 게시에 속하는 구독에 대한 정보를 반환합니다.

public:
 System::Data::DataSet ^ EnumSubscriptions(Microsoft::SqlServer::Replication::PublicationType publicationType, Microsoft::SqlServer::Replication::SubscriptionResultOption resultOption);
public System.Data.DataSet EnumSubscriptions (Microsoft.SqlServer.Replication.PublicationType publicationType, Microsoft.SqlServer.Replication.SubscriptionResultOption resultOption);
member this.EnumSubscriptions : Microsoft.SqlServer.Replication.PublicationType * Microsoft.SqlServer.Replication.SubscriptionResultOption -> System.Data.DataSet
Public Function EnumSubscriptions (publicationType As PublicationType, resultOption As SubscriptionResultOption) As DataSet

매개 변수

publicationType
PublicationType

구독이 구독하는 게시의 유형을 지정하는 PublicationType 값입니다.

resultOption
SubscriptionResultOption

결과 옵션을 지정하는 SubscriptionResultOption 값입니다.

반환

다음과 같은 열이 포함된 DataSet 개체입니다.

데이터 형식 Description
상태Int32 게시와 연관된 모든 복제 에이전트의 최대 상태로 다음 값 중 하나일 수 있습니다.

1 = 시작됨

2 = 성공

3 = 진행 중

4 = 유휴 상태

5 = 다시 시도 중

6 = 실패

warningInt32 게시에 속한 구독에서 생성한 최대 임계값 경고로 다음 값 중 하나 이상의 논리 OR 결과일 수 있습니다.

1 = Expiration. 트랜잭션 게시에 대한 구독이 허용된 임계값(보존 기간에 대한 비율) 이상 보존 기간을 초과했습니다.

2 = Latency. 트랜잭션 게시자에서 구독자로 데이터를 복제하는 데 소요된 시간이 임계값(초)을 초과합니다.

4 = Mergeexpiration. 병합 게시에 대한 구독이 허용된 임계값(보존 기간에 대한 비율) 이상 보존 기간을 초과했습니다.

8 = Mergefastrunduration. 고속 네트워크 연결을 통해 병합 구독을 완전 동기화하는 데 소요된 시간이 임계값(초)을 초과합니다.

16 = Mergeslowrunduration. 저속 또는 전화 접속 네트워크 연결을 통해 병합 구독을 완전 동기화하는 데 소요된 시간이 임계값(초)을 초과합니다.

32 = Mergefastrunspeed. 고속 네트워크 연결을 통해 병합 구독을 동기화하는 동안 행의 배달 속도가 임계 속도(초당 행 수)를 유지하지 못했습니다.

64 = Mergeslowrunspeed. 저속 또는 전화 접속 네트워크 연결을 통해 병합 구독을 동기화하는 동안 행의 배달 속도가 임계 속도(초당 행 수)를 유지하지 못했습니다.

subscriberString 구독자의 이름입니다.
subscriber_dbString 구독에 사용되는 데이터베이스의 이름입니다.
publisher_dbString 게시자의 이름입니다.
publicationString 게시의 이름입니다.
publication_typeInt32 다음 값 중 하나일 수 있는 게시 유형입니다.

0 = 트랜잭션 게시

1 = 스냅숏 게시

2 = 병합 게시

subtypeInt32 구독 유형이며 다음 값 중 하나일 수 있습니다.

0 = 밀어넣기

1 = 끌어오기

2 = 익명

대기 시간Int32 트랜잭션 게시에 대해 로그 판독기 또는 배포 에이전트가 전파하는 데이터 변경에 대한 최대 대기 시간(초)입니다.
latencythresholdInt32 경고 발생의 기준이 되는 트랜잭션 게시에 대한 최대 대기 시간입니다.
agentnotrunningInt32 에이전트가 실행되지 않은 시간(시간)입니다.
agentnotrunningthresholdInt32 경고가 발생하기 전까지 에이전트가 실행되지 않은 시간(시간)입니다.
timetoexpirationInt32 구독이 동기화되지 않은 경우 만료되기 전까지의 시간(시간)입니다.
expirationthresholdInt32 경고가 발생한 구독이 만료되기 전까지의 시간(시간)입니다.
last_distsyncDateTime 배포 에이전트가 마지막으로 실행된 날짜/시간입니다.
distribution_agentnameString 트랜잭션 게시 구독에 대한 배포 에이전트 작업의 이름입니다.
mergeagentnameString 병합 게시 구독에 대한 병합 에이전트 작업의 이름입니다.
mergesubscriptionfriendlynameString 병합 게시 구독에 대한 병합 에이전트 작업의 이름입니다.
mergeagentlocationString 병합 에이전트가 실행되는 서버의 이름입니다.
mergeconnectiontypeInt32 구독과 병합 게시를 동기화할 때 사용하는 연결이며 다음 값 중 하나일 수 있습니다.

1 = LAN(Local Area Network)

2 = 전화 접속 네트워크 연결

mergePerformanceInt32 구독에 대한 모든 동기화 성능과 비교한 최근 동기화의 성능입니다. 최근 동기화의 배달 속도를 이전의 모든 배달 속도 평균으로 나눈 값을 기반으로 합니다.
mergerunspeedSingle 구독에 대한 최근 동기화의 배달 속도입니다.
mergerundurationInt32 구독의 최근 동기화를 완료하는 데 걸린 시간입니다.
monitorrankingInt32 결과 집합에서 구독을 정렬하는 데 사용하는 순위 값이며 다음 값 중 하나일 수 있습니다.

트랜잭션 게시인 경우

60 = 오류

56 = 경고: 성능 심각

52 = 경고: 곧 만료됨 또는 만료됨

50 = 경고: 구독이 초기화되지 않음

40 = 실패한 명령 다시 시도 중

30 = 실행되지 않음(성공)

20 = 실행 중(시작 중, 실행 중 또는 유휴 상태)

병합 게시인 경우

60 = 오류

56 = 경고: 성능 심각

54 = 경고: 장기 실행 트랜잭션 병합

52 = 경고: 곧 만료됨 또는 만료됨

50 = 경고: 구독이 초기화되지 않음 40 = 실패한 명령 다시 시도 중

30 = 실행 중(시작 중, 실행 중 또는 유휴 상태)

20 = 실행 중이 아님(성공)

distributionagentjobidByte **[16]** 트랜잭션 게시 구독에 대한 배포 에이전트 작업의 ID입니다.
mergeagentjobidByte **[16]** 트랜잭션 게시 구독에 대한 병합 에이전트 작업의 ID입니다.
distributionagentidInt32 구독에 대한 배포 에이전트 작업의 ID입니다.
distributionagentprofileidInt32 배포 에이전트에서 사용하는 에이전트 프로필의 ID입니다.
mergeagentidInt32 구독에 대한 병합 에이전트 작업의 ID입니다.
mergeagentprofileidInt32 병합 에이전트에서 사용하는 에이전트 프로필의 ID입니다.

설명

메서드는 EnumSubscriptions 배포 데이터베이스에서 또는 replmonitor 고정된 데이터베이스 역할의 db_owner 멤버만 호출할 수 있습니다.

호출 EnumSubscriptionssp_replmonitorhelpsubscription(Transact-SQL)을 실행하는 것과 같습니다.

적용 대상

추가 정보