Partager via


NSQuantumPerformance (Transact-SQL)

Retourne des informations sur les temps d'exécution des quanta d'application. L'ensemble de résultats regroupe les quanta en fonction de leurs temps d'exécution, indiquant le nombre de quanta dans différentes plages de temps d'exécution. Cela peut vous aider à résoudre les problèmes de quanta longs.

Syntaxe

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

Arguments

[ @ReportingInterval = ] interval

Durée (en secondes) de chaque plage de temps d'exécution de l'ensemble de résultats. Le rapport contient une ligne par plage.

interval est de type int, avec 5 comme valeur par défaut (cinq secondes par plage de temps).

[ @SinceQuantumInitialized = ] since_init

Indique si le rapport inclut des quanta avant la dernière réinitialisation de l'horloge de quantum avec la procédure stockée NSSetQuantumClock ou NSSetQuantumClockDate. since_init est de type tinyint et peut avoir la valeur 0 ou 1. La valeur par défaut, 1, inclut uniquement les périodes de quantum postérieures à la dernière réinitialisation. 0 inclut des périodes de quantum antérieures à la dernière réinitialisation.

Valeurs des codes de retour

Aucune

Notes

Microsoft SQL Server Notification Services crée la procédure stockée NSQuantumPerformance dans la base de données de l'application lorsque vous créez l'instance. Lorsque vous mettez à jour l'application, Notification Services recompile la procédure stockée.

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

Les valeurs de QuantumDuration, ChronicleQuantumLimit et SubscriptionQuantumLimit indiquent si les durées des quanta de l'intervalle de rapport ont pris moins de temps ou plus de temps que ce qui était prévu pour l'application. Les valeurs de ces colonnes spécifient ce qui suit :

  • Over indique que la valeur de MinimumExecutionTime est supérieure à la limite de quantum ; tous les quanta spécifiés dans la ligne ont pris plus de temps que la limite prévue.
  • Under indique que la valeur de MaximumExecutionTime est inférieure à la limite de quantum ; tous les quanta spécifiés dans la ligne ont pris moins de temps que la limite prévue.
  • Maybe over indique que la valeur de MinimumExecutionTime est inférieure ou égale à la limite de quantum et que la valeur de MaximumExecutionTime est supérieure ou égale à la limite de quantum ; il se peut que la durée d'exécution de certains quanta ait été plus longue que la valeur de MaximumExecutionTime.

Autorisations

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

Ensembles de résultats

Nom de la colonne Type de données Description

MinimumExecutionTime

int

Temps d'exécution du quantum, en secondes, pour la limite inférieure de la plage de temps d'exécution.

MaximumExecutionTime

int

Temps d'exécution du quantum, en secondes, pour la limite supérieure de la plage de temps d'exécution.

CountOfQuantums

int

Nombre de quanta exécutés pendant une durée supérieure ou égale à la valeur de MinimumExecutionTime mais inférieure à la valeur de MaximumExecutionTime de la ligne.

QuantumDuration

nvarchar(255)

Indique si la plage de temps de cette ligne du rapport inclut des temps supérieurs à la durée de quantum définie dans le fichier de définition de l'application. Une durée d'exécution de quantum plus longue que la durée indiquée entraîne un retard au niveau du générateur Les valeurs possibles sont Under, Over et Maybe over.

ChronicleQuantumLimit

nvarchar(255)

Indique si la plage de temps de cette ligne du rapport inclut des durées supérieures au résultat de ChronicleQuantumLimit * QuantumDuration (défini dans le fichier de définition de l'application). Dans le cas où la durée d'exécution de quantum est plus longue que cette valeur, les activations de règles de chronique sont parfois ignorées. Les valeurs possibles sont Under, Over et Maybe over.

SubscriptionQuantum Limit

nvarchar(255)

Indique si la plage de temps de cette ligne du rapport inclut des durées supérieures au résultat de SubscriptionQuantumLimit * QuantumDuration (défini dans le fichier de définition de l'application). Dans le cas où la durée d'exécution de quantum est plus longue que celle indiquée, les activations de règles d'abonnement sont parfois ignorées. Les valeurs possibles sont Under, Over et Maybeover.

Exemples

A. Utilisation des valeurs par défaut

L'exemple suivant indique comment générer le rapport de performance de quanta à l'aide d'un intervalle de rapport de 5 secondes et de la valeur par défaut de @SinceQuantumInitialized. Cela concerne uniquement les quanta traités après la dernière initialisation de l'horloge de quantum.

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

EXEC dbo.NSQuantumPerformance;

B. Utilisation de tous les quanta et spécification de l'intervalle de rapport

L'exemple suivant indique comment générer le rapport de performance de quanta à l'aide d'un intervalle de rapport de 60 secondes et en incluant les quanta traités avant la dernière initialisation de l'horloge de quantum.

Dans cet exemple, la procédure stockée (comme tous les autres objets de l'application) se trouve dans le schéma Stock, tel que le spécifie l'élément SchemaName du fichier de configuration de l'application.

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

Voir aussi

Référence

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

Autres ressources

Rapports de performances de Notification Services
SchemaName Element (ADF)

Aide et Informations

Assistance sur SQL Server 2005