Partager via


NSQuantumExecutionTime (Transact-SQL)

Renvoie des informations qui vous permettent d'identifier les quanta de générateur dont l'exécution est longue ; ces renseignements peuvent ensuite servir à approfondir l'analyse de ces quanta.

Syntaxe

[ schema_name . ] NSQuantumExecutionTime 
    [ @MinExecutionTime = ] min_time 
    [, [ @MaxExecutionTime = ] max_time ]
    [, [ @SinceQuantumInitialized = ] since_init ]

Arguments

[ @MinExecutionTime = ] min_time

Spécifie la durée d'exécution minimale permettant d'inclure un quantum dans le rapport. L'argument min_time est de type int, est exprimé en secondes et ne possède pas de valeur par défaut.

[@MaxExecutionTime = ] max_time

Spécifie la durée d'exécution maximale permettant d'inclure un quantum dans le rapport. L'argument max_time est de type int, se définit en secondes et a une valeur par défaut de min_time plus 5.

[ @SinceQuantumInitialized = ] since_init

Spécifie si le rapport inclut des quanta antérieurs à la dernière réinitialisation de l'horloge de quantum par le biais de la procédure stockée NSSetQuantumClock ou NSSetQuantumClockDate. L'argument since_init est de type tinyint et peut afficher les valeurs 0 ou 1. La valeur par défaut 1 comprend uniquement les périodes de quantum postérieures à la dernière réinitialisation. La valeur 0 comprend les périodes antérieures à la dernière réinitialisation.

Valeurs des codes de retour

Aucune

Notes

Notification Services crée la procédure stockée NSQuantumExecutionTime dans la base de données d'application au moment de la création de l'instance. Lors de la mise à jour de l'application, Notification Services recompile la procédure stockée.

Cette procédure stockée se trouve dans le schéma de l'application qui est spécifié par l'élément SchemaName du fichier de définition d'application (ADF). Si aucun nom de schéma n'est fourni, le schéma par défaut est dbo.

Lorsque vous aurez identifié un quantum intéressant, vous serez peut-être amené à effectuer des analyses supplémentaires. Pour plus d'informations sur le quantum, utilisez la procédure stockée NSQuantumDetails.

Autorisations

Les autorisations d'exécution sont attribuées par défaut aux membres du rôle de base de données NSAnalysis, aux membres du rôle de base de données fixe db_owner et aux membres du rôle de serveur fixe sysadmin.

Ensembles de résultats

Nom de la colonne Type de données Description

QuantumId

int

ID unique d'un quantum. Vous pouvez indiquer cet identificateur dans la procédure stockée NSQuantumDetails pour obtenir des informations supplémentaires sur le quantum.

QuantumStatusDescription

nvarchar(255)

Texte descriptif sur l'état actuel du quantum.

ExecutionTimeInMS

bigint

Nombre de millisecondes nécessaires au générateur pour traiter le quantum.

QuantumStartTime

datetime

Heure UTC de début pour l'intervalle de temps que le quantum représente.

QuantumEndTime

datetime

Heure UTC de fin pour l'intervalle de temps que le quantum représente. Il correspond à l'heure de début plus la durée du quantum.

ExecutionStartTime

datetime

Date et heure réelles UTC auxquelles le générateur a commencé le traitement du quantum.

ExecutionEndTime

datetime

Date et heure réelles UTC auxquelles le générateur a terminé le traitement du quantum.

QuantumDurationLimit

nvarchar(20)

Indique si le temps d'exécution du quantum a dépassé ou n'a pas atteint la durée de quantum défini par le fichier de définition d'application (ADF).

ChronicleQuantumLimit

nvarchar(20)

Indique si le temps d'exécution du quantum était supérieur à ChronicleQuantumLimit * QuantumDuration (défini dans le fichier ADF). Ceci indique si le temps nécessaire au quantum a obligé l'application à dépasser son nombre maximal de quanta de chronique.

SubscriptionQuantumLimit

nvarchar(20)

Indique si le temps d'exécution du quantum était supérieur à SubscriptionQuantumLimit * QuantumDuration (défini dans le fichier ADF). Ceci indique si le temps nécessaire au quantum a obligé l'application à dépasser son nombre maximal de quanta d'abonnement.

ChronicleRuleFiringCount

int

Nombre d'activations de règles de chronique d'événements dans le quantum.

EventSubscriptionRuleFiringCount

int

Nombre d'activations de règles d'abonnement d'événements dans le quantum.

ScheduledSubscriptionRuleFiringCount

int

Nombre d'activations de règles d'abonnement planifiées dans le quantum.

EventNotificationsGenerated

int

Lors de l'exécution d'un quantum, le nombre de notifications découlant des règles déclenchées par des événements.

ScheduledNotificationsGenerated

int

Lors de l'exécution d'un quantum, le nombre de notifications découlant des règles d'abonnement planifiées.

Exemples

A. Utilisation des valeurs par défaut

L'exemple suivant illustre l'élaboration d'un rapport sur le temps d'exécution des quanta qui ont demandé entre 0 et 5 secondes pour s'exécuter depuis la dernière initialisation.

L'application utilise les paramètres par défaut de SchemaName, ce qui place tous les objets d'application dans le schéma dbo.

EXEC dbo.NSQuantumExecutionTime 
    @MinExecutionTime = 0;

B. Renvoi de tous les quanta compris entre les valeurs minimales et maximales

L'exemple suivant illustre l'élaboration d'un rapport sur le temps d'exécution des quanta pour tous les quanta de générateur qui ont dépassé 30 secondes, mais n'ont pas atteint 35 secondes (la valeur NULL est identique à min_time + 5).

Dans cet exemple, la procédure stockée (comme tous les objets d'application) se trouve dans le schéma Stock, comme spécifié dans l'élément SchemaName du fichier ADF.

EXEC Stock.NSQuantumExecutionTime 
    @MinExecutionTime = 30, 
    @MaxExecutionTime = NULL, 
    @SinceQuantumInitialized = 0;

Voir aussi

Référence

Procédures stockées de Notification Services (Transact-SQL)
NSQuantumDetails (Transact-SQL)

Autres ressources

Rapports de performances de Notification Services
SchemaName Element (ADF)

Aide et Informations

Assistance sur SQL Server 2005