Condividi tramite


NSDiagnosticDeliveryChannel (Transact-SQL)

Restituisce il report del canale di recapito per un'applicazione di Microsoft SQL Server Notification Services. Questo report risulta utile per l'analisi dell'attività del canale di recapito e delle notifiche non riuscite.

Sintassi

[ schema_name . ] NSDiagnosticDeliveryChannel 
    [ @ApplicationName = ] 'app_name' ,
    [ @DeliveryChannelName = ] 'delivery_channel_name' 
    [, [@ReportingInterval = ] interval ] 
    [, [@StartDateTime = ] 'start_date_time' ] 
    [, [@EndDateTime = ] 'end_date_time' ] 

Argomenti

[ @ApplicationName = ] 'app_name'

Nome di un'applicazione di Notification Services, come definito nel file di configurazione. app_name è di tipo nvarchar(255) e non prevede alcun valore predefinito.

[ @DeliveryChannelName = ] 'delivery_channel_name'

Nome di un canale di recapito, come definito nel file di configurazione. delivery_channel_name è di tipo nvarchar(255) e non prevede alcun valore predefinito.

[ @ReportingInterval = ] interval

Numero di quantum del generatore per ogni intervallo di report. Il report contiene una riga per intervallo. interval è di tipo int e il valore predefinito è 1, che indica un quantum del generatore per intervallo.

La durata del quantum viene definita nel file di definizione dell'applicazione (ADF).

[ @StartDateTime = ] 'start_date_time'

Data e ora UTC (Coordinated Universal Time o ora di Greenwich) di inizio del report. start_date_time è di tipo datetime. Il valore predefinito è @EndDateTime - (5 * QuantumDuration * @ReportingInterval). Utilizzando il valore predefinito, il set dei risultati contiene al massimo cinque righe, ognuna delle quali rappresenta un intervallo di report.

[ @EndDateTime = ] 'end_date_time'

Data e ora UTC di fine del report. end_date_time è di tipo datetime. Il valore predefinito è l'ora UTC in cui viene richiamata la stored procedure.

Set di risultati

Nome colonna Tipo di dati Descrizione

IntervalStartDateTime

datetime

Data e ora UTC (Coordinated Universal Time o ora di Greenwich) di inizio per l'intervallo di report.

IntervalEndDateTime

datetime

Data e ora UTC (Coordinated Universal Time o ora di Greenwich) di fine per l'intervallo di report.

NotificationBatchesDelivered

int

Numero di batch di notifica recapitati durante l'intervallo di report.

NotificationDeliveryAttempts

int

Numero di tentativi di recapito di notifiche nel canale di recapito durante l'intervallo di report.

NotificationSuccessfulDeliveries

int

Numero di notifiche inviate correttamente nel canale di recapito durante l'intervallo di report.

NotificationAttemptsFailed

int

Numero di tentativi di recapito di notifiche non riusciti nel canale di recapito durante l'intervallo di report.

NotificationToMessageRatio

float

Rapporto tra le notifiche generate e i messaggi inviati, durante l'intervallo di report.

Per il recapito digest o multicast, è possibile includere più notifiche in un unico messaggio. Questa colonna indica il numero medio di notifiche incluse nei messaggi digest o multicast.

Osservazioni

Quando si crea l'istanza, Notification Services crea la stored procedure NSDiagnosticDeliveryChannel nel database dell'istanza. Quando si aggiorna l'istanza, Notification Services ricompila la stored procedure.

Questa stored procedure è disponibile nello schema dell'istanza, specificato dall'elemento SchemaName del file di configurazione dell'istanza (ICF). Se non si specifica un nome di schema, viene utilizzato lo schema predefinito dbo.

Per stabilire la data e l'ora UTC correnti, eseguire SELECT GETUTCDATE() in SQL Server Management Studio. L'ora UTC corrente è basata sull'ora locale corrente e sull'impostazione del fuso orario del sistema operativo del computer in cui è in esecuzione SQL Server.

Autorizzazioni

Le autorizzazioni di esecuzione vengono assegnate per impostazione predefinita ai membri del ruolo di database NSAnalysis, del ruolo predefinito del database db_owner e del ruolo predefinito del server sysadmin.

Valori restituiti

0 (esito positivo) o 1 (esito negativo)

Esempi

A. Specifica dell'intervallo di report, dell'ora di avvio e dell'ora di inizio

Nell'esempio seguente viene generato il report dei canali di recapito per l'applicazione Flight e per il canale di recapito FileChannel. L'istanza utilizza le impostazioni predefinite del database, che prevedono l'inserimento di tutti gli oggetti dell'istanza nello schema dbo.

Il report include 50 quantum del generatore per ogni riga. Il report viene avviato alle 17.00 del 23 maggio 2004 e termina alle 18.00 dello stesso giorno:

EXEC dbo.NSDiagnosticDeliveryChannel 
    @ApplicationName = N'Flight', 
    @DeliveryChannelName = N'FileChannel', 
    @ReportingInterval = 50, 
    @StartDateTime = '2004-05-23 17:00',
    @EndDateTime = '2004-05-23 18:00';

B. Utilizzo dei valori predefiniti, schema denominato

Nell'esempio seguente viene generato il report dei canali di recapito per l'applicazione Flight e per il canale di recapito FileChannel. In questo esempio, la stored procedure (come tutti gli altri oggetti dell'istanza) è inclusa nello schema FlightInstance, come specificato nell'elemento SchemaName del file di configurazione dell'istanza (ICF).

Il report utilizza i valori predefiniti, che specificano di visualizzare un quantum del generatore per ogni riga e un totale di cinque quantum del generatore.

EXEC FlightInstance.NSDiagnosticDeliveryChannel 
    @ApplicationName = N'Flight', 
    @DeliveryChannelName = N'FileChannel';

Vedere anche

Riferimento

Stored procedure di Notification Services (Transact-SQL)

Altre risorse

Report sulle prestazioni di Notification Services
SchemaName Element (ICF)

Guida in linea e informazioni

Assistenza su SQL Server 2005