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)