適用対象:SQL Server
新しいコレクション セットを作成します。 このストアド プロシージャを使用して、データ収集用のカスタム コレクション セットを作成できます。
警告
プロキシとして構成された Windows アカウントが、まだログインしていない非対話型ユーザーまたは対話型ユーザーである場合、プロファイル ディレクトリは存在せず、ステージング ディレクトリの作成は失敗します。 そのため、ドメイン コントローラーでプロキシ アカウントを使用している場合は、プロファイル ディレクトリが作成されたことを確認するために、少なくとも 1 回使用された対話型アカウントを指定する必要があります。
構文
sp_syscollector_create_collection_set
[ @name = ] N'name'
[ , [ @target = ] N'target' ]
[ , [ @collection_mode = ] collection_mode ]
[ , [ @days_until_expiration = ] days_until_expiration ]
[ , [ @proxy_id = ] proxy_id ]
[ , [ @proxy_name = ] N'proxy_name' ]
[ , [ @schedule_uid = ] 'schedule_uid' ]
[ , [ @schedule_name = ] N'schedule_name' ]
[ , [ @logging_level = ] logging_level ]
[ , [ @description = ] N'description' ]
, [ @collection_set_id = ] collection_set_id OUTPUT
[ , [ @collection_set_uid = ] 'collection_set_uid' OUTPUT ]
[ ; ]
引数
[ @name = ] 名前
コレクション セットの名前。
@name は sysname 空の文字列または NULLにすることはできません。
@name は一意である必要があります。 現在のコレクション セット名の一覧については、 syscollector_collection_sets システム ビューに対してクエリを実行します。
[ @target = ] N'ターゲット」
将来の使用のために予約済み。
@target は nvarchar(128) で、既定値は NULL です。
[ @collection_mode = ] collection_mode
@collection_mode は smallint で、既定値は 0 です。
データを収集し、格納する方法を指定します。
@collection_mode は smallint で、既定値は 0 で、次のいずれかの値を指定できます。
0: キャッシュ モード。 データの収集とアップロードは別々のスケジュールで行われます。 連続コレクションのキャッシュ モードを指定します。1: キャッシュされていないモード。 データの収集とアップロードは同じスケジュールで行われます。 アドホック コレクションまたはスナップショット コレクションの非キャッシュ モードを指定します。
@collection_modeが0場合は、@schedule_uidまたは@schedule_nameを指定する必要があります。
[ @days_until_expiration = ] days_until_expiration
収集されたデータが管理データ ウェアハウスに保存される日数。
@days_until_expiration は smallint で、既定値は 730 (2 年) です。
@days_until_expiration は、 0 または正の整数である必要があります。
[ @proxy_id = ] proxy_id
SQL Server エージェント プロキシ アカウントの一意識別子。
@proxy_id は int で、既定値は NULL です。 指定する場合は、 @proxy_name を NULLする必要があります。
@proxy_idを取得するには、sysproxies システム テーブルに対してクエリを実行します。
dc_admin固定データベース ロールには、プロキシにアクセスするためのアクセス許可が必要です。 詳細については、「SQL Server エージェント プロキシの作成を参照してください。
[ @proxy_name = ] N'proxy_name
プロキシ アカウントの名前。
@proxy_name は sysname で、既定値は NULL です。 指定する場合は、 @proxy_id を NULLする必要があります。
@proxy_nameを取得するには、sysproxies システム テーブルに対してクエリを実行します。
[ @schedule_uid = ] 「schedule_uid」
スケジュールを指す GUID。
@schedule_uid は uniqueidentifier で、既定値は NULL です。 指定する場合は、 @schedule_name を NULLする必要があります。
@schedule_uidを取得するには、sysschedules システム テーブルに対してクエリを実行します。
@collection_modeが0に設定されている場合は、@schedule_uidまたは@schedule_nameを指定する必要があります。
@collection_modeが1に設定されている場合、@schedule_uidまたは@schedule_nameが指定されている場合は無視されます。
[ @schedule_name = ] schedule_name
スケジュールの名前です。
@schedule_name は sysname で、既定値は NULL です。 指定する場合は、 @schedule_uid を NULLする必要があります。
@schedule_nameを取得するには、sysschedulesシステム テーブルに対してクエリを実行します。
[ @logging_level = ] logging_level
ログ 記録レベル。
@logging_level は smallint で、既定値は 1 で、次のいずれかの値があります。
0: ログ実行情報と追跡する SSIS イベント:- コレクション セットの開始/停止
- パッケージの開始/停止
- エラー情報
1: レベル0ログ記録と:- 実行の統計
- 継続的に実行されるコレクションの進行状況
- SSIS からの警告イベント
2: レベル1ログ記録と SSIS からの詳細なイベント情報。
[ @description = ] 説明
コレクション セットの説明。
@description は nvarchar(4000) で、既定値は NULL です。
[ @collection_set_id = ] collection_set_id 出力
コレクション セットの一意のローカル識別子。 @collection_set_id は、 int 型の OUTPUT パラメーターです。
[ @collection_set_uid = ] 「collection_set_uid」出力
コレクション セットの GUID を指定します。 @collection_set_uid は、 uniqueidentifier 型の OUTPUT パラメーターです。
リターン コードの値
0 (成功) または 1 (失敗)。
解説
sp_syscollector_create_collection_set は、 msdb システム データベースのコンテキストで実行する必要があります。
アクセス許可
このプロシージャを実行するには、(EXECUTE 権限を持つ) dc_admin 固定データベース ロールのメンバーシップが必要です。
例
A. 既定値を使用してコレクション セットを作成する
次の例では、必須パラメーターのみを指定してコレクション セットを作成します。 @collection_mode は必要ありませんが、既定のコレクション モード (キャッシュ) では、スケジュール ID またはスケジュール名を指定する必要があります。
USE msdb;
GO
DECLARE @collection_set_id AS INT;
EXECUTE dbo.sp_syscollector_create_collection_set
@name = N'Simple collection set test 1',
@description = N'This is a test collection set that runs in non-cached mode.',
@collection_mode = 1,
@collection_set_id = @collection_set_id OUTPUT;
GO
B. 指定した値を使用してコレクション セットを作成する
次の例では、多くのパラメーターの値を指定してコレクション セットを作成します。
USE msdb;
GO
DECLARE @collection_set_id AS INT;
DECLARE @collection_set_uid AS UNIQUEIDENTIFIER;
SET @collection_set_uid = NEWID();
EXECUTE dbo.sp_syscollector_create_collection_set
@name = N'Simple collection set test 2',
@collection_mode = 0,
@days_until_expiration = 365,
@description = N'This is a test collection set that runs in cached mode.',
@logging_level = 2,
@schedule_name = N'CollectorSchedule_Every_30min',
@collection_set_id = @collection_set_id OUTPUT,
@collection_set_uid = @collection_set_uid OUTPUT;
GO