Поделиться через


sp_helptracertokens (Transact-SQL)

Возвращает строку для каждого трассировочного маркера, вставленного в публикацию для определения задержки. Эта хранимая процедура выполняется на издателе в базе данных публикации или на распространителе в базе данных распространителя.

Значок ссылки на разделСинтаксические обозначения в Transact-SQL

Синтаксис

sp_helptracertokens [ @publication = ] 'publication' 
    [ , [ @publisher = ] 'publisher' ] 
    [ , [ @publisher_db = ] 'publisher_db' ]

Аргументы

  • [ @publication= ] 'publication'
    Имя публикации, в которую были вставлены трассировочные маркеры. Аргумент publication имеет тип sysname и не имеет значения по умолчанию.

  • [ @publisher= ] 'publisher'
    Имя издателя. Аргумент publisher имеет тип sysname и значение по умолчанию NULL.

    ПримечаниеПримечание

    Этот аргумент должен быть определен только для издателей, отличных от MicrosoftSQL Server.

  • [ @publisher_db= ] 'publisher_db'
    Имя базы данных публикации. Аргумент publisher_db имеет тип sysname и по умолчанию принимает значение NULL. Этот параметр не учитывается, если хранимая процедура выполняется на издателе.

Результирующий набор

Имя столбца

Тип данных

Описание

tracer_id

int

Идентифицирует запись трассировочного маркера.

publisher_commit

datetime

Дата и время, когда была зафиксирована запись маркера у издателя в базе данных публикации.

Значения кодов возврата

0 (успешное завершение) или 1 (неуспешное завершение)

Замечания

Процедура sp_helptracertokens используется в репликации транзакций.

Процедура sp_helptracertokens используется для получения идентификаторов трассировочных маркеров при выполнении процедуры sp_helptracertokenhistory (Transact-SQL).

Пример

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

USE [AdventureWorks]

-- 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

Разрешения

Только члены предопределенной роли сервера sysadmin, предопределенной роли базы данных db_owner в базе данных публикации или встроенных ролей db_owner или replmonitor в базе данных распространителя могут выполнять процедуру sp_helptracertokenhistory.