sp_posttracertoken (Transact-SQL)

Cette procédure publie un jeton de suivi dans le journal des transactions sur le serveur de publication et débute le processus de suivi des statistiques de latence. Les informations sont enregistrées lorsque le jeton de suivi est écrit dans le journal des transactions, lorsqu'il est repris par l'Agent de lecture du journal et lorsqu'il est appliqué par l'Agent de distribution. Cette procédure stockée est exécutée au niveau du serveur de publication dans la base de données de publication. Pour plus d'informations, consultez Mesure de la latence et validation des connexions pour la réplication transactionnelle.

Icône Lien de rubriqueConventions de la syntaxe de Transact-SQL

Syntaxe

sp_posttracertoken [ @publication = ] 'publication' 
    [ , [ @tracer_token_id = ] tracer_token_id OUTPUT
    [ , [ @publisher = ] 'publisher' 

Arguments

  • [ @publication= ] 'publication'
    Nom de la publication pour laquelle la latence est mesurée. publication est de type sysname et n'a pas de valeur par défaut.

  • [ @tracer_token_id= ] tracer_token_idOUTPUT
    ID du jeton de suivi inséré. tracer_token_id est de type int, avec NULL comme valeur par défaut, et il s'agit d'un paramètre OUTPUT. Cette valeur peut être utilisée pour exécuter sp_helptracertokenhistory (Transact-SQL) ou sp_deletetracertokenhistory (Transact-SQL) sans exécuter d'abord sp_helptracertokens (Transact-SQL).

  • [ @publisher= ] 'publisher'
    Spécifie un serveur de publication non-Microsoft SQL Server. publisher est de type sysname, avec NULL comme valeur par défaut, et ne doit pas être spécifié pour un serveur de publication SQL Server.

Valeurs des codes renvoyés

0 (succès) ou 1 (échec)

Notes

sp_posttracertoken est utilisée au cours d'une réplication transactionnelle.

Exemple

DECLARE @publication AS sysname;
DECLARE @tokenID AS int;
SET @publication = N'AdvWorksProductTran'; 

USE [AdventureWorks2008R2]

-- Insert a new tracer token in the publication database.
EXEC sys.sp_posttracertoken 
  @publication = @publication,
  @tracer_token_id = @tokenID OUTPUT;
SELECT 'The ID of the new tracer token is ''' + 
    CONVERT(varchar,@tokenID) + '''.'
GO

-- Wait 10 seconds for the token to make it to the Subscriber.
WAITFOR DELAY '00:00:10';
GO

-- Get latency information for the last inserted token.
DECLARE @publication AS sysname;
DECLARE @tokenID AS int;
SET @publication = N'AdvWorksProductTran'; 

CREATE TABLE #tokens (tracer_id int, publisher_commit datetime)

-- Return tracer token information to a temp table.
INSERT #tokens (tracer_id, publisher_commit)
EXEC sys.sp_helptracertokens @publication = @publication;
SET @tokenID = (SELECT TOP 1 tracer_id FROM #tokens
ORDER BY publisher_commit DESC)
DROP TABLE #tokens

-- Get history for the tracer token.
EXEC sys.sp_helptracertokenhistory 
  @publication = @publication, 
  @tracer_id = @tokenID;
GO

Autorisations

Seuls les membres du rôle serveur fixe sysadmin ou du rôle de base de données fixe db_owner peuvent exécuter sp_posttracertoken.