sp_replmonitorhelpsubscription (Transact-SQL)
Se aplica a: SQL Server Azure SQL Managed Instance
Devuelve información de estado actual sobre las suscripciones que pertenecen a una o más publicaciones en el publicador y devuelve una fila por cada suscripción devuelta. Este procedimiento almacenado, que se utiliza para supervisar la replicación, se ejecuta en el distribuidor en la base de datos de distribución.
Convenciones de sintaxis de Transact-SQL
Sintaxis
sp_replmonitorhelpsubscription
[ [ @publisher = ] N'publisher' ]
[ , [ @publisher_db = ] N'publisher_db' ]
[ , [ @publication = ] N'publication' ]
[ , [ @publication_type = ] publication_type ]
[ , [ @mode = ] mode ]
[ , [ @topnum = ] topnum ]
[ , [ @exclude_anonymous = ] exclude_anonymous ]
[ , [ @refreshpolicy = ] refreshpolicy ]
[ ; ]
Argumentos
[ @publisher = ] N'publisher'
Nombre del publicador el estado del que se está supervisando. @publisher es sysname, con un valor predeterminado de NULL
. Si es null, se devuelve información para todos los publicadores que usan el distribuidor.
[ @publisher_db = ] N'publisher_db'
Nombre de la base de datos publicada. @publisher_db es sysname, con un valor predeterminado de NULL
. Si NULL
es , se devuelve información para todas las bases de datos publicadas en el publicador.
[ @publication = ] N'publication'
Nombre de la publicación que se está supervisando. @publication es sysname, con un valor predeterminado de NULL
.
[ @publication_type = ] publication_type
Es el tipo de publicación. @publication_type es int y puede ser uno de estos valores.
Valor | Descripción |
---|---|
0 |
Publicación transaccional. |
1 |
Publicación de instantáneas. |
2 |
Publicación de combinación. |
NULL (valor predeterminado) |
La replicación intenta determinar el tipo de publicación. |
[ @mode = ] modo
Modo de filtrado que se va a usar al devolver información de supervisión de suscripciones. @mode es int y puede ser uno de estos valores.
Valor | Descripción |
---|---|
0 (valor predeterminado) |
Devuelve todas las suscripciones. |
1 |
Solo devuelve las suscripciones con errores. |
2 |
Devuelve solo las suscripciones que generan advertencias de métricas de umbral. |
3 |
Devuelve solo las suscripciones que tienen errores o generan advertencias de métricas de umbral. |
4 |
Devuelve las 25 suscripciones con peor rendimiento. |
5 |
Devuelve las 50 suscripciones con un rendimiento peor. |
6 |
Solo devuelve las suscripciones que se están sincronizando en ese momento. |
7 |
Devuelve solo las suscripciones que no se están sincronizando actualmente. |
[ @topnum = ] topnum
Restringe el conjunto de resultados únicamente al número especificado de suscripciones situadas en la parte superior de los datos devueltos. @topnum es int, con un valor predeterminado de NULL
.
[ @exclude_anonymous = ] exclude_anonymous
Si las suscripciones de extracción anónimas se excluyen del conjunto de resultados. @exclude_anonymous es bit, con un valor predeterminado de 0
.
- Un valor de
1
significa que se excluyen las suscripciones anónimas. - Un valor de
0
significa que se incluyen.
[ @refreshpolicy = ] refreshpolicy
Solamente se identifica con fines informativos. No compatible. La compatibilidad con versiones posteriores no está garantizada.
Conjunto de resultados
Nombre de la columna | Tipo de datos | Descripción |
---|---|---|
status |
int | Examina el estado de todos los agentes de replicación asociados a la publicación, y devuelve el estado más alto encontrado en el orden siguiente:6 = Error5 = Reintentar2 = Detenido4 = Inactivo3 = En curso1 = Iniciado |
warning |
int | Advertencia de umbral máximo generada por una suscripción que pertenece a la publicación, que puede ser el resultado de OR lógico de uno o más de estos valores.1 = expiration : una suscripción a una publicación transaccional no se ha sincronizado dentro del umbral del período de retención.2 = latency : el tiempo necesario para replicar datos de un publicador transaccional al suscriptor supera el umbral, en segundos.4 = mergeexpiration : una suscripción a una publicación de combinación no se ha sincronizado dentro del umbral del período de retención.8 = mergefastrunduration : el tiempo necesario para completar la sincronización de una suscripción de mezcla supera el umbral, en segundos, a través de una conexión de red rápida.16 = mergeslowrunduration : el tiempo necesario para completar la sincronización de una suscripción de mezcla supera el umbral, en segundos, a través de una conexión de red lenta.32 = mergefastrunspeed : la tasa de entrega de las filas durante la sincronización de una suscripción de mezcla no pudo mantener la tasa de umbral, en filas por segundo, a través de una conexión de red rápida.64 = mergeslowrunspeed : la tasa de entrega de las filas durante la sincronización de una suscripción de mezcla no pudo mantener la tasa de umbral, en filas por segundo, a través de una conexión de red lenta. |
subscriber |
sysname | Nombre del suscriptor. |
subscriber_db |
sysname | Nombre de la base de datos usada para la suscripción. |
publisher_db |
sysname | Nombre de la base de datos de publicación. |
publication |
sysname | Nombre de una publicación. |
publication_type |
int | El tipo de publicación; puede ser uno de estos valores:0 = Publicación transaccional1 = Publicación de instantáneas2 = Publicación de mezcla |
subtype |
int | Tipo de suscripción, que puede ser uno de los siguientes valores:0 = Inserción1 = Extracción2 = Anónimo |
latency |
int | La mayor latencia, en segundos, para los cambios de datos propagados por los agentes de distribución o de registro del LOG para una publicación transaccional. |
latencythreshold |
int | Latencia máxima de la publicación transaccional, por encima de la cual se genera una advertencia. |
agentnotrunning |
int | El período de tiempo, en horas, durante el cual el agente no se ha ejecutado. |
agentnotrunningthreshold |
int | El período de tiempo, en horas, que el agente no se ha ejecutado antes de que se genere una advertencia. |
timetoexpiration |
int | El período de tiempo, en horas, antes de que expire la suscripción si no está sincronizado. |
expirationthreshold |
int | El tiempo, en horas, antes de que expire la suscripción, se genera una advertencia. |
last_distsync |
datetime | Fecha y hora en que se ejecutó por última vez el Agente de distribución. |
distribution_agentname |
sysname | Nombre del trabajo de Agente de distribución de la suscripción a una publicación transaccional. |
mergeagentname |
sysname | Nombre del trabajo de Agente de mezcla de la suscripción a una publicación de combinación. |
mergesubscriptionfriendlyname |
sysname | Nombre descriptivo proporcionado a la suscripción. |
mergeagentlocation |
sysname | Nombre del servidor en el que se ejecuta el Agente de mezcla. |
mergeconnectiontype |
int | Conexión que se utiliza al sincronizar una suscripción a una publicación de combinación. Puede ser uno de los siguientes valores:1 = red de área local (LAN)2 = conexión de red de acceso telefónico3 = Sincronización web. |
mergePerformance |
int | Rendimiento de la última sincronización con respecto a todas las sincronizaciones de la suscripción. Se basa en la tasa de entrega de la última sincronización dividida entre la media de todas las tasas de entrega anteriores. |
mergerunspeed |
float | Tasa de entrega de la última sincronización de la suscripción. |
mergerunduration |
int | Período de tiempo para completar la última sincronización de la suscripción. |
monitorranking |
int | El valor de clasificación usado para ordenar las suscripciones en el conjunto de resultados y puede ser uno de estos valores: Para una publicación transaccional: 60 = Error56 = Advertencia: crítico para el rendimiento52 = Advertencia: expiración pronto o expirada50 = Advertencia: suscripción sin inicializar40 = Comando con error de reintento30 = No se está ejecutando (correcto)20 = En ejecución (inicio, ejecución o inactividad)Para una publicación de combinación: 60 = Error56 = Advertencia: crítico para el rendimiento54 = Advertencia: combinación de larga duración52 = Advertencia: expiración pronto50 = Advertencia: suscripción sin inicializar40 = Comando con error de reintento30 = En ejecución (inicio, ejecución o inactividad)20 = No se está ejecutando (correcto) |
distributionagentjobid |
binary(16) | Id. del trabajo de Agente de distribución para las suscripciones a una publicación transaccional. |
mergeagentjobid |
binary(16) | Id. del trabajo de Agente de mezcla para las suscripciones a una publicación de combinación. |
distributionagentid |
int | Id. del trabajo de Agente de distribución para la suscripción. |
distributionagentprofileid |
int | Identificador del perfil del agente utilizado por el Agente de distribución. |
mergeagentid |
int | Identificador del trabajo del Agente de combinación para la suscripción. |
mergeagentprofileid |
int | Id. del perfil de agente utilizado por el Agente de mezcla. |
Valores de código de retorno
0
(correcto) o 1
(erróneo).
Comentarios
sp_replmonitorhelpsubscription
se usa con todos los tipos de replicación.
sp_replmonitorhelpsubscription
ordena el conjunto de resultados en función de la gravedad del estado de la suscripción, que viene determinado por el valor de monitorranking
. Por ejemplo, las filas de todas las suscripciones con un estado de error se colocan por encima de las filas de suscripciones con un estado de advertencia.
Permisos
Solo los miembros del rol fijo de base de datos db_owner o replmonitor en la base de datos de distribución pueden ejecutar sp_replmonitorhelpsubscription
.