sp_replmonitorhelpsubscription (Transact-SQL)
Se aplica a: SQL Server Azure SQL Instancia administrada
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 = ] 'publisher'
[ , [ @publisher_db = ] 'publisher_db' ]
[ , [ @publication = ] 'publication' ]
[ , [ @publication_type = ] publication_type ]
[ , [ @mode = ] mode ]
[ , [ @topnum = ] topnum ]
[ , [ @exclude_anonymous = ] exclude_anonymous ]
[ , [ @refreshpolicy = ] refreshpolicy ]
Argumentos
[ @publisher = ] 'publisher'
Es el 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 = ] 'publisher_db'
Es el nombre de la base de datos publicada. publisher_db es sysname, con un valor predeterminado de NULL. Si es NULL, se devuelve información sobre todas las bases de datos publicadas en el publicador.
[ @publication = ] 'publication'
Es el nombre de la publicación que se está supervisando. publication es sysname, con un valor predeterminado de NULL.
[ @publication_type = ] publication_type
Si 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 (predeterminado) | La replicación intenta determinar el tipo de publicación. |
[ @mode = ] mode
Es el 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 | Solo devuelve las suscripciones que han generado advertencias de métrica de umbral. |
3 | Solo devuelve las suscripciones que o tienen errores o han generado advertencias de métrica 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 | Solo devuelve las suscripciones que no se están sincronizando en ese momento. |
[ @topnum = ] topnum
Restringe el conjunto de resultados a solo el número especificado de suscripciones en la parte superior de los datos devueltos. topnum es int, sin valor predeterminado.
[ @exclude_anonymous = ] exclude_anonymous
Es 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 las suscripciones anónimas se excluyen y un valor de 0 significa que se incluyen.
[ @refreshpolicy = ] refreshpolicy
Solo uso interno.
Conjuntos 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 |
general, | 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 = expiración: una suscripción a una publicación transaccional no se ha sincronizado dentro del umbral del período de retención. 2 = latencia: 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 o de acceso telefónico. 32 = mergefastrunspeed: la velocidad de entrega de las filas durante la sincronización de una suscripción de mezcla no ha podido mantener la tasa de umbral, en filas por segundo, a través de una conexión de red rápida. 64 = mergeslowrunspeed: la velocidad de entrega de las filas durante la sincronización de una suscripción de mezcla no ha podido mantener la tasa de umbral, en filas por segundo, a través de una conexión de red lenta o de acceso telefónico. |
subscriber | sysname | Es el nombre del suscriptor. |
subscriber_db | sysname | Es el nombre de la base de datos utilizada para la suscripción. |
publisher_db | sysname | Es el nombre de la base de datos de publicación. |
publicación | sysname | Es el nombre de una publicación. |
publication_type | int | Es el tipo de publicación, que puede ser uno de estos valores: 0 = Publicación transaccional 1 = Publicación de instantáneas 2 = Publicación de mezcla |
subtype | int | Es el tipo de suscripción, que puede ser uno de los siguientes valores: 0 = Insertar 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. |
latenciathreshold | int | La latencia máxima para la publicación transaccional por encima de la cual se genera una advertencia. |
agentnotrunning | int | Es la cantidad de tiempo, en horas, durante la que el agente no se ha ejecutado. |
agentnotrunningthreshold | int | Es el tiempo, en horas, que el agente no se ha ejecutado antes de que se genere una advertencia. |
timetoexpiration | int | Es el tiempo, en horas, antes de que expire la suscripción si no se sincroniza. |
expirationthreshold | int | Es el tiempo, en horas, en que se genera una advertencia antes de que expire la suscripción. |
last_distsync | datetime | Es la fecha y hora en que el Agente de distribución se ejecutó por última vez. |
distribution_agentname | sysname | Es el nombre del trabajo del Agente de distribución para la suscripción a una publicación transaccional. |
mergeagentname | sysname | Es el nombre del trabajo de Agente de mezcla para la suscripción a una publicación de combinación. |
mergesubscriptionfriendlyname | sysname | Es el nombre descriptivo dado a la suscripción. |
mergeagentlocation | sysname | Es el 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. |
fusionunspeed | float | Tasa de entrega de la última sincronización de la suscripción. |
fusionunduration | int | Es el tiempo necesario para completar la última sincronización de la suscripción. |
monitorranking | int | Es el valor de categoría utilizado para ordenar las suscripciones en el conjunto de resultados. Puede ser uno de estos valores: Para una publicación transaccional: 60 = Error 56 = Advertencia: crítico para el rendimiento 52 = Advertencia: expirando pronto o expirando 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: expirando 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 (error)
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.