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


NSQuantumPerformance (Transact-SQL)

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

Синтаксис

[ application_schema_name . ] NSQuantumPerformance 
    [ [ @ReportingInterval = ] interval ]
    [, [ @SinceQuantumInitialized = ] since_init ]

Аргументы

  • [ @ReportingInterval = ] interval
    Диапазон (в секундах) интервалов выполнения в результирующем наборе. Отчет содержит одну строку на интервал.

    Аргумент interval имеет тип int и значение по умолчанию 5, что означает пять секунд на интервал.

  • [ @SinceQuantumInitialized = ] since_init
    Указывает, включены ли в отчет такты, выполненные до переустановки часов тактового генератора с помощью хранимых процедур NSSetQuantumClock или NSSetQuantumClockDate. Аргумент since_init имеет тип tinyint и может иметь значения 0 или 1. По умолчанию его значение равно 1, что означает включение только тех тактовых периодов, которые были выполнены после последнего сброса. 0 включает тактовые периоды, предшествующие последнему сбросу.

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

Нет

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

Имя столбца Тип данных Описание

MinimumExecutionTime

int

Выраженное в секундах время выполнения такта для нижней границы интервала выполнения.

MaximumExecutionTime

int

Выраженное в секундах время выполнения такта для верхней границы интервала выполнения.

CountOfQuantums

int

Число тактов, выполненных за время, большее или равное значению строки Minimum Execution Time, но меньшее, чем значение строки Maximum Execution Time.

QuantumDuration

nvarchar(255)

Указывает, включает ли интервал для данной строки отчета более высокие значения времени, нежели длительность такта, определенная в файле определения приложения (ADF-файл). Если время выполнения такта превышает длительность такта, это приводит к запаздыванию генератора. Допустимые значения — Under, Over и Maybe over.

ChronicleQuantumLimit

nvarchar(255)

Указывает, включает ли интервал для данной строки отчета более высокие значения времени, нежели результат умножения ChronicleQuantumLimit на QuantumDuration, (определенный в ADF-файле). Если время выполнения такта превышает данное значение, это может привести к пропуску обработки правил хроники. Допустимые значения — Under, Over и Maybe over.

Ограничение SubscriptionQuantum

nvarchar(255)

Указывает, включает ли интервал для данной строки отчета более высокие значения времени, нежели результат умножения SubscriptionQuantumLimit на QuantumDuration, (определенный в ADF-файле). Если время выполнения такта превышает данное значение, это приводит к пропуску обработки правил подписки. Допустимые значения — Under, Over и Maybeover.

Замечания

Microsoft SQL Server при создании служб Notification Services создает в базе данных приложения хранимую процедуру NSNotificationBatchDetails. При обновлении приложения службы Notification Services осуществляют повторную компиляцию этой хранимой процедуры.

Данная хранимая процедура находится в схеме приложения, которая задана элементом SchemaName файла определения приложения (ADF-файл). Если имя схемы не задано, схемой по умолчанию является dbo.

Значения QuantumDuration, ChronicleQuantumLimit и SubscriptionQuantumLimit указывают на то, была ли длительность тактов в период составления отчета большей или меньшей, чем предполагалось для данного приложения. Содержащиеся в этих столбцах данные имеют следующие значения.

  • Значение Over указывает на то, что параметр MinimumExecutionTime превышает установленное ограничение такта; при выполнении всех тактов, перечисленных в строке, установленное ограничение было превышено.
  • Значение Under указывает на то, что параметр MinimumExecutionTime имеет меньшее значение, нежели предел тактовой задержки; для выполнения всех перечисленных в строке тактов потребовалось меньше времени, чем предусмотрено установленным ограничением.
  • Значение Maybe over указывает на то, что параметр MinimumExecutionTime имеет либо меньшее значение, нежели предел тактовой задержки, либо значение, равное ему, и что параметр MaximumExecutionTime имеет большее значение, нежели установленное ограничение такта, или значение, равное ему; возможно, что на выполнение некоторых тактов было затрачено больше времени, чем определено параметром MaximumExecutionTime.

Разрешения

По умолчанию разрешения на выполнение предоставляются членам роли базы данных NSAnalysis, фиксированной роли базы данных db_owner и фиксированной серверной роли sysadmin.

Примеры

A. Использование значений по умолчанию

В следующем примере показано, как составляется отчет о производительности такта с периодом составления отчета в 5 секунд и с использованием принимаемого по умолчанию значения аргумента @SinceQuantumInitialized. При этом учитываются только такты, обработанные после последней инициализации генератора тактов.

Приложение использует принимаемые по умолчанию настройки SchemaName; в результате все объекты приложения помещаются в схему dbo.

EXEC dbo.NSQuantumPerformance;

Б. Использование всех тактов и указание периода составления отчета

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

В этом примере хранимая процедура (как и все остальные объекты приложения) находится в схеме Stock, как указано в элементе SchemaName ADF-файла.

EXEC Stock.NSQuantumPerformance
    @ReportingInterval = 60,
    @SinceQuantumInitialized = 1;

См. также

Справочник

Хранимые процедуры служб Notification Services (Transact-SQL)

Другие ресурсы

Отчеты о производительности служб Notification Services
SchemaName Element (ADF)

Справка и поддержка

Получение помощи по SQL Server 2005