次の方法で共有


NSAdministrationHistory (Transact-SQL)

Microsoft SQL Server Notification Services インスタンスの管理履歴レポートを生成します。このレポートには、指定した期間に処理されたイベント、通知、サブスクリプションなど、インスタンスがホストするすべてのアプリケーションに関する情報が含まれます。

構文

[ schema_name . ] NSAdministrationHistory 
    [  [ @ApplicationName = ] 'app_name' ],
    [, [ @ReportingIntervalInMinutes = ] interval ] 
    [, [ @StartDateTime = ] 'start_date_time' ] 
    [, [ @EndDateTime = ] 'end_date_time' ] 

引数

[ @ApplicationName =] 'app_name'

インスタンス構成ファイル (ICF) で定義されている、Notification Services アプリケーションの名前を指定します。app_name のデータ型は nvarchar(255) で、既定値は NULL です。これは、このインスタンスがホストするすべてのアプリケーションについてレポートを生成することを表します。

[ @ReportingIntervalInMinutes =] interval

各レポート間隔を示す時間 (分単位)。1 つの間隔ごとに 1 行のデータが作成されます。interval のデータ型は int で、既定値は 60 です。これは、1 つのレポート間隔が 60 分であることを表します。

[ @StartDateTime =] 'start_date_time'

レポートの開始日時を UTC (協定世界時またはグリニッジ標準時) で指定します。start_date_time のデータ型は datetime で、既定値は @EndDateTime の値の 1 か月前です。

[ @EndDateTime =] 'end_date_time'

レポートの終了日時を UTC で指定します。end_date_time のデータ型は datetime です。既定値は、GETUTCDATE 関数の戻り値です。つまり、このストアド プロシージャが呼び出された日時です。

結果セット

列名 データ型 説明

ApplicationName

nvarchar(255)

行が集計するアプリケーションの名前。インスタンスを集計する行の場合、値は NULL になります。

IntervalStartDateTime

datetime

レポート間隔の開始日時 (UTC)。

IntervalEndDateTime

datetime

レポート間隔の終了日時 (UTC)。

EventBatchCollectedCount

int

このレポート間隔中に、イベント バッチの EndCollectionTime の値を基に収集されたイベント バッチの数。

EventsCollectedCount

int

このレポート間隔中に、イベント バッチの EndCollectionTime の値を基に収集されたイベントの数。

EventsCollectedPerSecond

float

このレポート間隔中に、イベント収集で収集されたイベント数の 1 秒あたりの平均値。

EventBatchesAwaitingGeneration

int

データベースに書き込まれ、ジェネレータでまだ処理されていないイベント バッチの数。

EventBatchesInCollection

int

このレポート間隔中に、収集処理が行われていたイベント バッチの数。

NotificationBatchGeneratedCount

int

このレポート間隔中に、通知バッチの EndGenerationTime の値を基に書き込まれた通知バッチの数。

NotificationsGeneratedCount

int

このレポート間隔中に、通知バッチの EndGenerationTime の値を基に生成された通知の数。

NotificationsGeneratedPerSecond

float

このレポート間隔中に生成された通知の数に関する 1 秒あたりの平均値。

NotificationBatchesInGeneration

int

このレポート間隔中に、ジェネレータによって生成処理が行われていた通知バッチの数。

NotificationBatchesAwaitingDistribution

int

このレポート間隔中に、ディストリビュータによる処理を待機していた通知バッチの数。

NotificationsSuccessfulDeliveredCount

int

このレポート間隔中に、正常に配信された通知の数。

NotificationsFailedDeliveryCount

int

このレポート間隔中に、配信が失敗し、期限切れとしてマークされた通知の数。

WorkItemsInProgress

int

このレポート間隔中に、配信処理が行われていた作業項目の数。

SubscriptionsAddedCount

int

このレポート間隔中に、アプリケーションに追加されたサブスクリプションの数。

ScheduledSubscriptionsAdded

int

このレポート間隔中に、アプリケーションに追加された定期的なサブスクリプションの数。

SubscriptionsModified

int

このレポート間隔中に、アプリケーションで変更されたサブスクリプションの数。

SubscribersAddedCount

int

このレポート間隔中に、インスタンスに追加されたサブスクライバの数。

SubscriberDevicesAddedCount

int

このレポート間隔中に、追加されたサブスクライバ デバイスの数。

デバイスは、サブスクライバと同時に追加されたものと見なされます。

SubscriberDevicesModifiedCount

int

このレポート間隔中に、更新されたサブスクライバ デバイスの数。

デバイスは、サブスクライバと同時に更新されたものと見なされます。

解説

Notification Services でインスタンスを作成すると、インスタンス データベース内に NSAdministrationHistory ストアド プロシージャが作成されます。インスタンスを更新すると、Notification Services ではストアド プロシージャが再コンパイルされます。

このストアド プロシージャは、インスタンス構成ファイル (ICF) の要素 SchemaName で指定される、インスタンス スキーマ内に格納されます。スキーマ名が指定されない場合、既定のスキーマ dbo が使用されます。

このレポートで収集されるデータの量は、アプリケーション定義ファイル (ADF) の要素 VacuumDuration で指定される、データの削除処理 (Vacuumer) の保有期間によって制限されます。分析できるのは、削除されていないデータだけです。

現在の UTC 時間を調べるには、Transact-SQL クエリ SELECT GETUTCDATE() を実行してください。現在の UTC 時間は、現在のローカル時間と、コンピュータのオペレーティング システムに設定されているタイム ゾーン設定から算出されます。

権限

既定では、NSAnalysis データベース ロール、db_owner 固定データベース ロール、および sysadmin 固定サーバー ロールのメンバに実行権限が与えられています。

戻り値

なし

A. Flight 管理履歴レポートを生成する

次の例では、Flight アプリケーションの管理履歴レポートを生成します。インスタンスでは、既定のデータベース設定が使用されます。この設定ではすべてのインスタンス オブジェクトが dbo スキーマに格納されます。

レポート間隔は 120 分です。レポートの開始日時は 2004 年 9 月 22 日午前 11 時 30 分、終了日時は同日の午後 2 時 30 分です。

EXEC dbo.NSAdministrationHistory 
    @ApplicationName = N'Flight', 
    @ReportingIntervalInMinutes = 120, 
    @StartDateTime = '2004-09-22 11:30:00', 
    @EndDateTime = '2004-09-22 14:30:00';

B. すべてのアプリケーション管理履歴レポートを生成する

次の例では、インスタンスがホストするすべてのアプリケーションを対象に、管理履歴レポートを生成します。この例では、ICF の要素 SchemaName で指定された FlightInstance スキーマ内にストアド プロシージャが格納されます。

またこのレポートでは既定値が使用され、60 分のレポート間隔で過去 1 か月のすべてのデータが表示されます。

EXEC FlightInstance.NSAdministrationHistory;

参照

関連項目

Notification Services ストアド プロシージャ (Transact-SQL)

その他の技術情報

Notification Services パフォーマンス レポート
SchemaName 要素 (ICF)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手