Share via


NSDiagnosticEventProvider (Transact-SQL)

Genera el informe del proveedor de eventos para una aplicación de Microsoft SQL Server Notification Services. El informe contiene información acerca de los eventos recopilados con un proveedor de eventos especificado.

Sintaxis

[ schema_name . ] NSDiagnosticEventProvider 
    [ @ApplicationName = ] 'app_name' ,
    [ @EventProviderName = ] 'event_provider_name' 
    [, [ @ReportingInterval = ] interval ] 
    [, [ @StartDateTime = ] 'start_date_time' ] 
    [, [ @EndDateTime = ] 'end_date_time' ] 

Argumentos

[ @ApplicationName = ] 'app_name'

Nombre de la aplicación, tal y como se define en el archivo de configuración. app_name es de tipo nvarchar(255) y no tiene ningún valor predeterminado.

[ @EventProviderName = ] 'event_provider_name'

Nombre de un proveedor de eventos de la aplicación. event_provider_name es de tipo nvarchar(255) y no tiene ningún valor predeterminado.

[ @ReportingInterval = ] interval

Número de cuantos de generador de cada intervalo de informe. El informe contiene una fila por intervalo. interval es de tipo int y su valor predeterminado es 1, lo que indica un cuanto de generador por intervalo.

La duración del cuanto se especifica en el archivo de definición de aplicación (ADF).

[ @StartDateTime = ] 'start_date_time'

Fecha y hora de inicio del informe en UTC (hora universal coordinada u hora del meridiano de Greenwich). start_date_time es de tipo datetime. El valor predeterminado es @EndDateTime - (5 * QuantumDuration * @ReportingInterval). Si se utiliza el valor predeterminado, el conjunto de resultados contiene como mucho cinco filas, y cada una de ellas representa un intervalo de informe.

[ @EndDateTime = ] 'end_date_time'

Fecha y hora de finalización del informe en UTC. end_date_time es de tipo datetime. El valor predeterminado es la hora en la que el usuario invoca el procedimiento almacenado (en UTC).

Conjuntos de resultados

Nombre de columna Tipo de datos Descripción

IntervalStartDateTime

datetime

Fecha y hora de inicio del intervalo de informe con formato UTC.

IntervalEndDateTime

datetime

Fecha y hora de finalización del intervalo de informe con formato UTC.

EventBatchesSubmitted

int

Número de lotes de eventos enviados por el proveedor de eventos durante el intervalo de informe.

EventsSubmitted

int

Número de eventos enviados por el proveedor de eventos durante el intervalo de informe.

AvgTimeCollectingEvents

float

Tiempo medio en segundos que invierte el proveedor de eventos en recopilar eventos durante el intervalo de informe.

UnfinishedEventBatches

int

Número de lotes de eventos iniciados, pero no completados, por el proveedor de eventos durante el intervalo de informe.

Notas

Notification Services crea el procedimiento almacenado NSDiagnosticEventProvider en la base de datos de instancias al crear la instancia. Al actualizar la instancia, Notification Services vuelve a compilar el procedimiento almacenado.

Este procedimiento almacenado se encuentra en el esquema de la instancia, que se especifica mediante el elemento SchemaName del archivo de configuración de la instancia (ICF). Si no se proporciona ningún nombre de esquema, el esquema predeterminado es dbo.

Los lotes de eventos pasan a estar dentro del intervalo de informe cuando el valor de EndCollectionTime es mayor que el valor de IntervalStartDateTime y menor o igual que el valor de IntervalEndDateTime.

Para determinar la fecha y hora UTC actuales, ejecute SELECT GETUTCDATE() en SQL Server Management Studio. La hora UTC actual se deriva de la hora local actual y la configuración de zona horaria del sistema operativo del equipo en el que se ejecuta SQL Server.

Permisos

De forma predeterminada, los permisos de ejecución corresponden a los miembros de la función de base de datos NSAnalysis, la función fija de base de datos db_owner y la función fija de servidor sysadmin.

Valores de código de retorno

0 (correcto) o 1 (error)

Ejemplos

A. Especificar intervalo de informe, hora de inicio y hora de finalización

En este ejemplo se genera el informe de diagnóstico del proveedor de eventos para la aplicación Flight y el proveedor de eventos FlightEP. La instancia utiliza la configuración predeterminada de la base de datos, que coloca todos los objetos de la instancia en el esquema dbo.

El informe incluye 50 cuantos de generador en cada intervalo de informe. El informe se inicia a las 5:00 p.m. el 23 mayo de 2004 y finaliza a las 6:00 p.m. de ese mismo día (UTC).

EXEC dbo.NSDiagnosticEventProvider 
    @ApplicationName = N'Flight', 
    @EventProviderName = N'FlightEP', 
    @ReportingInterval = 50, 
    @StartDateTime = '2004-05-23 17:00', 
    @EndDateTime = '2004-05-23 18:00';

B. Utilizar valores predeterminados, esquema con nombre

En este ejemplo se genera el informe de diagnóstico del proveedor de eventos para la aplicación Flight y el proveedor de eventos FlightEP. En este ejemplo, el procedimiento almacenado (al igual que el resto de los objetos de instancia) se encuentra en el esquema FlightInstance, según se especifica en el elemento SchemaName del ICF.

El informe utiliza valores predeterminados que especifica para mostrar los datos de los cinco últimos cuantos de generador.

EXEC FlightInstance.NSDiagnosticEventProvider 
    @ApplicationName = N'Flight', 
    @EventProviderName = N'FlightEP';

Vea también

Referencia

Procedimientos almacenados de Notification Services (Transact-SQL)

Otros recursos

Informes de rendimiento de Notification Services
SchemaName Element (ICF)

Ayuda e información

Obtener ayuda sobre SQL Server 2005