PublisherMonitor.EnumSubscriptions Method

Definition

Returns information about subscriptions that belong to a publication at the monitored Publisher.

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

Parameters

publicationType
PublicationType

A PublicationType value that specifies the type of publication to which the subscription is subscribed.

resultOption
SubscriptionResultOption

A SubscriptionResultOption value that specifies the result options.

Returns

A DataSet object that contains the following columns.

Column Data type Description
status Int32 Maximum status of all replication agents associated with the publication, which can be one of the following values:

1 = Started

2 = Succeeded

3 = In progress

4 = Idle

5 = Retrying

6 = Failed

warning Int32 Maximum threshold warning generated by a subscription belonging to the publication, which can be the logical OR result of one or more of the following values.

1 = Expiration. A subscription to a transactional publication has exceeded the retention period by more than the allowable threshold, as a percentage of the retention period.

2 = Latency. The time taken to replicate data from a transactional Publisher to the Subscriber exceeds the threshold, in seconds.

4 = Mergeexpiration. A subscription to a merge publication has exceeded the retention period by more than the allowable threshold, as a percentage of the retention period.

8 = Mergefastrunduration. The time taken to complete synchronization of a merge subscription exceeds the threshold over a fast network connection, in seconds.

16 = Mergeslowrunduration The time taken to complete synchronization of a merge subscription exceeds the threshold over a slow or dial-up network connection, in seconds.

32 = Mergefastrunspeed. The delivery rate for rows during synchronization of a merge subscription has failed to maintain the threshold rate over a fast network connection, in rows per second.

64 = Mergeslowrunspeed. The delivery rate for rows during synchronization of a merge subscription has failed to maintain the threshold rate over a slow or dial-up network connection, in rows per second.

subscriber String Is the name of the Subscriber.
subscriber_db String Is the name of the database used for the subscription.
publisher_db String Is the name of the Publisher.
publication String Is the name of a publication.
publication_type Int32 Is the type of publication, which can be one of the following values:

0 = Transactional publication

1 = Snapshot publication

2 = Merge publication

subtype Int32 Is the subscription type, which can be one of the following values:

0 = Push

1 = Pull

2 = Anonymous

latency Int32 The highest latency, in seconds, for data changes propagated by the Log Reader or Distribution Agents for a transactional publication.
latencythreshold Int32 Is the maximum latency for the transactional publication above which a warning is raised.
agentnotrunning Int32 Is the length of time, in hours, during which the agent has not run.
agentnotrunningthreshold Int32 Is the length of time, in hours, that the agent has not run before a warning is raised.
timetoexpiration Int32 Is the length of time, in hours, before the subscription expires if not synchronized.
expirationthreshold Int32 Is the time, in hours, before the subscription expires that a warning is raised.
last_distsync DateTime Is the date/time that the Distribution Agent last ran.
distribution_agentname String Is the name of the Distribution Agent job for the subscription to a transactional publication.
mergeagentname String Is the name of the Merge Agent job for the subscription to a merge publication.
mergesubscriptionfriendlyname String Is the friendly name of the Merge Agent job for the subscription to a merge publication.
mergeagentlocation String Is the name of the server on which the Merge Agent runs.
mergeconnectiontype Int32 Connection used when synchronizing a subscription to a merge publication, which can be one of the following values:

1 = Local area network (LAN)

2 = Dial-up network connection

mergePerformance Int32 Performance of the last synchronization compared to all synchronizations for the subscription, which is based on the delivery rate of the last synchronization divided by the average of all previous delivery rates.
mergerunspeed Single Is the delivery rate of the last synchronization for the subscription.
mergerunduration Int32 Is the length of time to complete the last synchronization of the subscription.
monitorranking Int32 Is the ranking value used to order the subscriptions in the result set, and can be one of the following values:

For a transactional publication:

60 = Error

56 = Warning: performance critical

52 = Warning: expiring soon or expired

50 = Warning: subscription uninitialized

40 = Retrying failed command

30 = Not running (success)

20 = Running (starting, running, or idle)

For a merge publication:

60 = Error

56 = Warning: performance critical

54 = Warning: long-running merge

52 = Warning: expiring soon or expired

50 = Warning: subscription uninitialized 40 = Retrying failed command

30 = Running (starting, running, or idle)

20 = Not running (success)

distributionagentjobid Byte **[16]** ID of the Distribution Agent job for subscriptions to a transactional publication.
mergeagentjobid Byte **[16]** ID of the Merge Agent job for subscriptions to a transactional publication.
distributionagentid Int32 ID of the Distribution Agent job for the subscription.
distributionagentprofileid Int32 ID of the agent profile used by the Distribution Agent.
mergeagentid Int32 ID of the Merge Agent job for the subscription.
mergeagentprofileid Int32 ID of the agent profile used by the Merge Agent.

Remarks

The EnumSubscriptions method can only be called by members of the db_owner or replmonitor fixed database roles on the distribution database.

Calling EnumSubscriptions is equivalent to executing sp_replmonitorhelpsubscription (Transact-SQL).

Applies to

See also