sp_replmonitorhelpsubscription (Transact-SQL)sp_replmonitorhelpsubscription (Transact-SQL)

S’APPLIQUE À : ouiSQL Server ouiAzure SQL Database (Managed Instance uniquement) nonAzure SQL Data Warehouse nonParallel Data Warehouse APPLIES TO: yesSQL Server yesAzure SQL Database (Managed Instance only) noAzure SQL Data Warehouse noParallel Data Warehouse

Renvoie des informations sur l'état actuel d'abonnements appartenant à une ou plusieurs publications du serveur de publication, et retourne une ligne pour chaque abonnement retourné.Returns current status information for subscriptions belonging to one or more publications at the Publisher and returns one row for each returned subscription. Cette procédure stockée, utilisée pour surveiller la réplication, est exécutée sur la base de données du serveur de distribution.This stored procedure, which is used to monitor replication, is executed at the Distributor on the distribution database.

Icône de lien de rubrique Conventions de la syntaxe Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SyntaxeSyntax

  
sp_replmonitorhelpsubscription [ @publisher = ] 'publisher'  
    [ , [ @publisher_db = ] 'publisher_db' ]  
    [ , [ @publication = ] 'publication' ]  
    [ , [ @publication_type = ] publication_type ]   
    [ , [ @mode = ] mode ]  
    [ , [ @topnum = ] topnum ]   
    [ , [ @exclude_anonymous = ] exclude_anonymous ]   
    [ , [ @refreshpolicy = ] refreshpolicy ]  

ArgumentsArguments

[ @publisher = ] 'publisher'Nom du serveur de publication dont l’État est en cours d’analyse.[ @publisher = ] 'publisher' Is the name of the Publisher the status of which is being monitored. Publisher est de type sysname, avec NULL comme valeur par défaut.publisher is sysname, with a default value of NULL. Si la valeur est null, les informations sont retournées pour tous les serveurs de publication qui utilisent le serveur de distribution.If null, information is returned for all Publishers that use the Distributor.

[ @publisher_db = ] 'publisher_db'Nom de la base de données publiée.[ @publisher_db = ] 'publisher_db' Is the name of the published database. publisher_db est de type sysname, avec NULL comme valeur par défaut.publisher_db is sysname, with a default value of NULL. Si la valeur est NULL, les informations retournées concernent toutes les bases de données publiées situées sur le serveur de publication.If NULL, then information is returned for all published databases at the Publisher.

[ @publication = ] 'publication'Nom de la publication en cours d’analyse.[ @publication = ] 'publication' Is the name of the publication being monitored. publication est de type sysname, avec NULL comme valeur par défaut.publication is sysname, with a default value of NULL.

[ @publication_type = ] publication_typeSi le type de publication.[ @publication_type = ] publication_type If the type of publication. publication_type est de type intet peut prendre l’une des valeurs suivantes.publication_type is int, and can be one of these values.

ValueValue DescriptionDescription
00 Publication transactionnelle.Transactional publication.
11 Publication d'instantané.Snapshot publication.
22 Publication de fusion.Merge publication.
NULL (par défaut)NULL (default) La réplication tente de déterminer le type de publication.Replication tries to determine the publication type.

[ @mode = ] modeMode de filtrage à utiliser pour retourner les informations de surveillance d’abonnement.[ @mode = ] mode Is the filtering mode to use when returning subscription monitoring information. le mode est intet peut prendre l’une des valeurs suivantes.mode is int, and can be one of these values.

ValueValue DescriptionDescription
0 (valeur par défaut)0 (default) Retourne tous les abonnements.Returns all subscriptions.
11 Retourne uniquement les abonnements qui ont des erreurs.Returns only subscriptions with errors.
22 Retourne uniquement les abonnements qui ont généré des avertissements de mesure de seuil.Returns only subscriptions that have generated threshold metric warnings.
33 Retourne uniquement les abonnements qui ont des erreurs ou ayant généré des avertissements de mesure de seuil.Returns only subscriptions that either have errors or have generated threshold metric warnings.
44 Retourne les 25 principaux abonnements les moins performants.Returns the top 25 worst performing subscriptions.
55 Retourne les 50 abonnements les moins performants.Returns the top 50 worst performing subscriptions.
66 Retourne uniquement les abonnements en cours de synchronisation.Returns only subscriptions that are currently being synchronized.
77 Retourne uniquement les abonnements qui ne sont pas en cours de synchronisation.Returns only subscriptions that are not currently being synchronized.

[ @topnum = ] topnumLimite le jeu de résultats au nombre d’abonnements spécifié au début des données retournées.[ @topnum = ] topnum Restricts the result set to only the specified number of subscriptions at the top of the returned data. topnum est de type int, sans valeur par défaut.topnum is int, with no default.

[ @exclude_anonymous = ] exclude_anonymousIndique si les abonnements extraits anonymes sont exclus du jeu de résultats.[ @exclude_anonymous = ] exclude_anonymous Is if anonymous pull subscriptions are excluded from the result set. exclude_anonymous est de bit, avec 0comme valeur par défaut. la valeur 1 signifie que les abonnements anonymes sont exclus et la valeur 0 indique qu’ils sont inclus.exclude_anonymous is bit, with a default of 0; a value of 1 means that anonymous subscriptions are excluded and a value of 0 means that they are included.

[ @refreshpolicy = ] refreshpolicyÀ usage interne uniquement.[ @refreshpolicy = ] refreshpolicy Internal use only.

Jeux de résultatsResult Sets

Nom de la colonneColumn name Type de donnéesData type DescriptionDescription
statusstatus intint Examine l'état de tous les agents de réplication associés à la publication, puis retourne l'état le plus élevé dans l'ordre suivant :Examines the status of all the replication agents associated with the publication, and returns the highest status found in the following order:

6 = échec6 = Failed

5 = nouvelle tentative5 = Retrying

2 = arrêté2 = Stopped

4 = inactif4 = Idle

3 = en cours3 = In progress

1 = démarré1 = Started
treswarning intint Avertissement de seuil maximal généré par un abonnement appartenant à la publication, qui peut être le résultat OR logique d'au moins l'une des valeurs suivantes.Maximum threshold warning generated by a subscription belonging to the publication, which can be the logical OR result of one or more of these values.

1 = expiration: un abonnement à une publication transactionnelle n’a pas été synchronisé dans le seuil de la période de rétention.1 = expiration - a subscription to a transactional publication has not been synchronized within the retention period threshold.

2 = latence: le temps nécessaire à la réplication des données d’un serveur de publication transactionnel vers l’abonné dépasse le seuil, en secondes.2 = latency - the time taken to replicate data from a transactional Publisher to the Subscriber exceeds the threshold, in seconds.

4 = mergeexpiration-un abonnement à une publication de fusion n’a pas été synchronisé dans le seuil de la période de rétention.4 = mergeexpiration - a subscription to a merge publication has not been synchronized within the retention period threshold.

8 = mergefastrunduration-le temps nécessaire pour effectuer la synchronisation d’un abonnement de fusion dépasse le seuil, en secondes, sur une connexion réseau rapide.8 = mergefastrunduration - the time taken to complete synchronization of a merge subscription exceeds the threshold, in seconds, over a fast network connection.

16 = mergeslowrunduration-le temps nécessaire pour effectuer la synchronisation d’un abonnement de fusion dépasse le seuil, en secondes, sur une connexion réseau lente ou d’accès à distance.16 = mergeslowrunduration - the time taken to complete synchronization of a merge subscription exceeds the threshold, in seconds, over a slow or dial-up network connection.

32 = mergefastrunspeed-la vitesse de transmission des lignes pendant la synchronisation d’un abonnement de fusion n’a pas réussi à maintenir le taux de seuil, en lignes par seconde, sur une connexion réseau rapide.32 = mergefastrunspeed - the delivery rate for rows during synchronization of a merge subscription has failed to maintain the threshold rate, in rows per second, over a fast network connection.

64 = mergeslowrunspeed-la vitesse de transmission des lignes pendant la synchronisation d’un abonnement de fusion n’a pas réussi à maintenir le taux de seuil, en lignes par seconde, sur une connexion réseau lente ou d’accès à distance.64 = mergeslowrunspeed - the delivery rate for rows during synchronization of a merge subscription has failed to maintain the threshold rate, in rows per second, over a slow or dial-up network connection.
subscriber (Abonné)subscriber sysnamesysname Nom de l'Abonné.Is the name of the Subscriber.
subscriber_dbsubscriber_db sysnamesysname Nom de la base de données utilisée pour l'abonnement.Is the name of the database used for the subscription.
publisher_dbpublisher_db sysnamesysname Nom de la base de données de publication.Is the name of the publication database.
publicationpublication sysnamesysname Nom d'une publication.Is the name of a publication.
publication_typepublication_type intint Type de publication, qui peut prendre l’une des valeurs suivantes:Is the type of publication, which can be one of these values:

0 = publication transactionnelle0 = Transactional publication

1 = publication d’instantané1 = Snapshot publication

2 = publication de fusion2 = Merge publication
subtypesubtype intint Type d'abonnement, qui peut prendre l'une des valeurs suivantes :Is the subscription type, which can be one of the following values:

0 = Push0 = Push

1 = extraction1 = Pull

2 = anonyme2 = Anonymous
latencelatency Intint Latence maximale, en secondes, des modifications de données propagées par l'Agent de lecture du journal ou l'Agent de distribution pour une publication transactionnelle.The highest latency, in seconds, for data changes propagated by the Log Reader or Distribution Agents for a transactional publication.
latencythresholdlatencythreshold Intint Latence maximale de la publication transactionnelle au-delà de laquelle un avertissement est déclenché.Is the maximum latency for the transactional publication above which a warning is raised.
agentnotrunningagentnotrunning intint Durée, en heures, pendant laquelle l'Agent n'a pas été exécuté.Is the length of time, in hours, during which the agent has not run.
agentnotrunningthresholdagentnotrunningthreshold intint Durée, en heures, pendant laquelle l'Agent n'a pas été exécuté avant le déclenchement d'un avertissement.Is the length of time, in hours, that the agent has not run before a warning is raised.
timetoexpirationtimetoexpiration intint Durée, en heures, au terme de laquelle l'abonnement expire s'il n'est pas synchronisé.Is the length of time, in hours, before the subscription expires if not synchronized.
expirationthresholdexpirationthreshold Intint Durée, en heures, au terme de laquelle l'expiration de l'abonnement déclenche un avertissement.Is the time, in hours, before the subscription expires that a warning is raised.
last_distsynclast_distsync datetimedatetime Date et heure de la dernière exécution de la Agent de distribution.Is the datetime that the Distribution Agent last ran.
distribution_agentnamedistribution_agentname sysnamesysname Nom du travail d'Agent de distribution pour l'abonnement à une publication transactionnelle.Is the name of the Distribution Agent job for the subscription to a transactional publication.
mergeagentnamemergeagentname sysnamesysname Nom du travail d'Agent de fusion pour l'abonnement à une publication de fusion.Is the name of the Merge Agent job for the subscription to a merge publication.
mergesubscriptionfriendlynamemergesubscriptionfriendlyname sysnamesysname Nom convivial donné à l'abonnement.Is the friendly name given to the subscription.
mergeagentlocationmergeagentlocation sysnamesysname Nom du serveur sur lequel l'Agent de fusion est exécuté.Is the name of the server on which the Merge Agent runs.
mergeconnectiontypemergeconnectiontype intint Connexion utilisée lors de la synchronisation d'un abonnement à une publication de fusion ; ce paramètre peut prendre l'une des valeurs suivantes :Connection used when synchronizing a subscription to a merge publication, which can be one of the following values:

1 = réseau local (LAN)1 = local area network (LAN)

2 = connexion d’accès réseau à distance2 = dial-up network connection

3 = synchronisation Web.3 = Web synchronization.
mergePerformancemergePerformance Intint Performances de la dernière synchronisation comparées à toutes les synchronisations de l'abonnement, calculées en divisant la vitesse de transmission de la dernière synchronisation par la moyenne de toutes les vitesses de transmission antérieures.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.
mergerunspeedmergerunspeed floatfloat Vitesse de transmission de la dernière synchronisation de l'abonnement.Is the delivery rate of the last synchronization for the subscription.
mergerundurationmergerunduration intint Durée qui a été nécessaire à la dernière synchronisation de l'abonnement.Is the length of time to complete the last synchronization of the subscription.
monitorrankingmonitorranking intint Valeur de classement des abonnements dans l'ensemble de résultats ; ce paramètre peut prendre l'une des valeurs suivantes :Is the ranking value used to order the subscriptions in the result set, and can be one of these values:

Dans le cas d'une publication transactionnelle :For a transactional publication:

60 = erreur60 = Error

56 = AVERTISSEMENT: critique pour les performances56 = Warning: performance critical

52 = AVERTISSEMENT: expire bientôt ou expiré52 = Warning: expiring soon or expired

50 = AVERTISSEMENT: abonnement non initialisé50 = Warning: subscription uninitialized

40 = nouvelle tentative de la commande qui a échoué40 = Retrying failed command

30 = non exécuté (succès)30 = Not running (success)

20 = en cours d’exécution (démarré, en cours d’exécution ou inactif)20 = Running (starting, running, or idle)

Dans le cas d'une publication de fusion :For a merge publication:

60 = erreur60 = Error

56 = AVERTISSEMENT: critique pour les performances56 = Warning: performance critical

54 = AVERTISSEMENT: fusion longue54 = Warning: long-running merge

52 = AVERTISSEMENT: expire bientôt52 = Warning: expiring soon

50 = AVERTISSEMENT: abonnement non initialisé50 = Warning: subscription uninitialized

40 = nouvelle tentative de la commande qui a échoué40 = Retrying failed command

30 = en cours d’exécution (démarré, en cours d’exécution ou inactif)30 = Running (starting, running, or idle)

20 = non exécuté (succès)20 = Not running (success)
distributionagentjobiddistributionagentjobid binary(16)binary(16) ID du travail d'Agent de distribution pour les abonnements à une publication transactionnelle.ID of the Distribution Agent job for subscriptions to a transactional publication.
mergeagentjobidmergeagentjobid binary(16)binary(16) ID du travail d'Agent de fusion pour les abonnements à une publication de fusion.ID of the Merge Agent job for subscriptions to a merge publication.
distributionagentiddistributionagentid intint ID du travail d'Agent de distribution pour l'abonnement.ID of the Distribution Agent job for the subscription.
distributionagentprofileiddistributionagentprofileid intint ID du profil d'Agent utilisé par l'Agent de distribution.ID of the agent profile used by the Distribution Agent.
mergeagentidmergeagentid intint ID du travail d'Agent de fusion pour l'abonnement.ID of the Merge Agent job for the subscription.
mergeagentprofileidmergeagentprofileid intint ID du profil d'Agent utilisé par l'Agent de fusion.ID of the agent profile used by the Merge Agent.

Valeurs des codes de retourReturn Code Values

0 (succès) ou 1 (échec)0 (success) or 1 (failure)

NotesRemarks

sp_replmonitorhelpsubscription est utilisé avec tous les types de réplications.sp_replmonitorhelpsubscription is used with all types of replication.

sp_replmonitorhelpsubscription trie le jeu de résultats en fonction de la gravité de l’état de l’abonnement, qui est déterminée par la valeur de monitorranking.sp_replmonitorhelpsubscription orders the result set based on the severity of the status of the subscription, which is determined by the value of monitorranking. Par exemple, les lignes de tous les abonnements se trouvant dans un état d'erreur précèdent les lignes des abonnements se trouvant dans un état d'avertissement.For example, rows for all subscriptions in an error state are ordered above rows for subscriptions in a warning state.

AutorisationsPermissions

Seuls les membres du rôle de base de données fixe db_owner ou replmonitor de la base de données de distribution peuvent exécuter sp_replmonitorhelpsubscription.Only members of the db_owner or replmonitor fixed database role on the distribution database can execute sp_replmonitorhelpsubscription.

Voir aussiSee Also

Surveiller la réplication par programmationProgrammatically Monitor Replication