Compartir a través de


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 NULLes , 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 = Error
5 = Reintentar
2 = Detenido
4 = Inactivo
3 = En curso
1 = 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 transaccional
1 = Publicación de instantáneas
2 = Publicación de mezcla
subtype int Tipo de suscripción, que puede ser uno de los siguientes valores:

0 = Inserción
1 = Extracción
2 = 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ónico
3 = 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 = Error
56 = Advertencia: crítico para el rendimiento
52 = Advertencia: expiración pronto o expirada
50 = Advertencia: suscripción sin inicializar
40 = Comando con error de reintento
30 = No se está ejecutando (correcto)
20 = En ejecución (inicio, ejecución o inactividad)

Para una publicación de combinación:

60 = Error
56 = Advertencia: crítico para el rendimiento
54 = Advertencia: combinación de larga duración
52 = Advertencia: expiración pronto
50 = Advertencia: suscripción sin inicializar
40 = Comando con error de reintento
30 = 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.