PublisherMonitor.EnumSubscriptions Method
Returns information about subscriptions that belong to a publication at the monitored Publisher.
Namespace: Microsoft.SqlServer.Replication
Assembly: Microsoft.SqlServer.Rmo (in microsoft.sqlserver.rmo.dll)
Syntax
'Declaration
Public Function EnumSubscriptions ( _
publicationType As PublicationType, _
resultOption As SubscriptionResultOption _
) As DataSet
public DataSet EnumSubscriptions (
PublicationType publicationType,
SubscriptionResultOption resultOption
)
public:
DataSet^ EnumSubscriptions (
PublicationType publicationType,
SubscriptionResultOption resultOption
)
public DataSet EnumSubscriptions (
PublicationType publicationType,
SubscriptionResultOption resultOption
)
public function EnumSubscriptions (
publicationType : PublicationType,
resultOption : SubscriptionResultOption
) : DataSet
Parameters
- publicationType
A PublicationType value that specifies the type of publication to which the subscription is subscribed.
- resultOption
A SubscriptionResultOption value that specifies the result options.
Return Value
A DataSet object that contains the following columns.
Column |
Data type |
Description |
status |
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 |
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 |
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 |
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).
This namespace, class, or member is supported only in version 2.0 of the .NET Framework.
Thread Safety
Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Platforms
Development Platforms
For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.
Target Platforms
For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.
See Also
Reference
PublisherMonitor Class
PublisherMonitor Members
Microsoft.SqlServer.Replication Namespace
Other Resources
How to: Programmatically Monitor Replication (RMO Programming)