sp_syscollector_create_collection_item (Transact-SQL)
適用対象:SQL Server
ユーザー定義コレクション セット内にコレクション項目を作成します。 コレクション項目は、収集するデータと、データを収集する頻度を定義します。
構文
sp_syscollector_create_collection_item
[ @collection_set_id = ] collection_set_id
, [ @collector_type_uid = ] 'collector_type_uid'
, [ @name = ] N'name'
[ , [ @frequency = ] frequency ]
[ , [ @parameters = ] N'parameters' ]
, [ @collection_item_id = ] collection_item_id OUTPUT
[ ; ]
引数
[ @collection_set_id = ] collection_set_id
コレクション セットの一意のローカル識別子。 @collection_set_idは int で、既定値はありません。
[ @collector_type_uid = ] 'collector_type_uid'
この項目に使用するコレクターの種類を識別する GUID。 @collector_type_uidは uniqueidentifier で、既定値はありません。 コレクターの種類の一覧については、システム ビューに対してクエリを syscollector_collector_types
実行します。
[ @name = ] N'name'
コレクション アイテムの名前です。 @nameは sysname であり、空の文字列または NULL
.
@nameは一意である必要があります。 現在のコレクション項目名の一覧については、システム ビューに対してクエリを syscollector_collection_items
実行します。
[ @frequency = ] frequency
このコレクション項目がデータを収集する頻度を (秒単位で) 指定するために使用されます。 @frequencyは int で、既定値は 5
. 指定できる最小値は 5 秒です。
コレクション セットが非キャッシュ モードに設定されている場合、このモードではデータ収集とアップロードの両方がコレクション セットに指定されたスケジュールで実行されるため、頻度は無視されます。 コレクション セットのコレクション モードを表示するには、syscollector_collection_sets (Transact-SQL) システム ビューに対してクエリを実行します。
[ @parameters = ] N'parameters'
コレクター型の入力パラメーターを指定します。 @parametersは xml で、既定値は NULL
. @parameters スキーマは、コレクター型のパラメーター スキーマと一致する必要があります。
[ @collection_item_id = ] collection_item_id OUTPUT
コレクション セット項目を識別する一意識別子。 @collection_item_idは int 型の OUTPUT パラメーターです。
リターン コードの値
0
(成功) または 1
(失敗)。
解説
sp_syscollector_create_collection_item
は、システム データベースのコンテキストで実行する msdb
必要があります。
コレクション項目を作成する前に、コレクション項目の追加先のコレクション セットを停止する必要があります。 コレクション項目をシステム コレクション セットに追加することはできません。
アクセス許可
このプロシージャを実行するには、(EXECUTE 権限を持つ) dc_admin固定データベース ロールのメンバーシップが必要です。
例
次の例では、コレクション型 Generic T-SQL Query Collector Type
に基づいてコレクション項目を作成し、それをコレクション セットに追加します Simple collection set test 2
。 指定したコレクション セットを作成するには、sp_syscollector_create_collection_set (Transact-SQL) で例 B を実行します。
USE msdb;
GO
DECLARE @collection_item_id INT;
DECLARE @collection_set_id INT = (
SELECT collection_set_id
FROM syscollector_collection_sets
WHERE name = N'Simple collection set test 2');
DECLARE @collector_type_uid UNIQUEIDENTIFIER = (
SELECT collector_type_uid
FROM syscollector_collector_types
WHERE name = N'Generic T-SQL Query Collector Type');
DECLARE @params XML = CONVERT(XML, N'\<ns:TSQLQueryCollector xmlns:ns="DataCollectorType">
<Query>
<Value>SELECT * FROM sys.objects</Value>
<OutputTable>MyOutputTable</OutputTable>
</Query>
<Databases>
<Database> UseSystemDatabases = "true"
UseUserDatabases = "true"
</Database>
</Databases>
\</ns:TSQLQueryCollector>');
EXEC sp_syscollector_create_collection_item @collection_set_id = @collection_set_id,
@collector_type_uid = @collector_type_uid,
@name = 'My custom T-SQL query collector item',
@frequency = 6000,
@parameters = @params,
@collection_item_id = @collection_item_id OUTPUT;
関連するコンテンツ
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示