sp_syscollector_create_collection_set (Transact-SQL)
Создает новый набор сбора. При помощи этой хранимой процедуры можно создать пользовательский набор сбора для сбора данных.
Синтаксис
sp_syscollector_create_collection_set
[ @name = ] 'name'
, [ [ @target = ] 'target' ]
, [ [ @collection_mode = ] collection_mode ]
, [ [ @days_until_expiration = ] days_until_expiration ]
, [ [ @proxy_id = ] proxy_id ]
, [ [ @proxy_name = ] 'proxy_name' ]
, [ [ @schedule_uid = ] 'schedule_uid' ]
, [ [ @schedule_name = ] 'schedule_name' ]
, [ [ @logging_level = ] logging_level ]
, [ [ @description = ] 'description' ]
, [ @collection_set_id = ] collection_set_id OUTPUT
, [ [ @collection_set_uid = ] 'collection_set_uid' OUTPUT ]
Аргументы
[ @name = ] 'name'
Имя набора сбора. Аргумент name имеет тип sysname и не может быть пустой строкой или иметь значение NULL.Аргумент name должен быть уникальным. Чтобы получить список имен текущего набора сбора, выполните запрос системного представления syscollector_collection_sets.
[ @target = ] 'target'
Зарезервировано для использования в будущем. Аргумент name имеет тип nvarchar(128) и значение по умолчанию NULL.[ @collection_mode = ] collection_mode
Указывает способ, которым собираются и хранятся данные. Аргумент collection_mode имеет тип smallint и может иметь одно из следующих значений.0 — режим с кэшированием. Сбор и передача данных выполняются по отдельным расписаниям. Укажите кэшированный режим для непрерывного сбора.
1 — режим без кэширования. Сбор и передача данных выполняются по общему расписанию. Укажите некэшированный режим для нерегламентированного сбора или создания моментального снимка.
Значение collection_mode по умолчанию равно 0. Если значение параметра collection_mode равно 0, необходимо указать параметр schedule_uid или schedule_name.
[ @days_until_expiration = ] days_until_expiration
Число дней, в течение которых собранные данные хранятся в хранилище данных управления. Аргумент days_until_expiration имеет тип smallint со значением по умолчанию 730 (два года). Аргумент 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 = ] '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 и может иметь одно из следующих значений.0 — регистрировать сведения о выполнении и события служб SSIS, которые отслеживают:
Запуск и остановку наборов сбора.
Запуск и остановку пакетов.
Сведения об ошибках.
1 — ведение журнала на уровне -0, а также:
Статистика выполнения.
Ход непрерывно работающего сбора.
Предупреждающие события от служб SSIS.
2 — ведение журнала на уровне -1, а также запись подробных сведений о событиях служб SSIS
Значение logging_level по умолчанию равно 1.
[ @description = ] 'description'
Описание набора сбора. Аргумент description имеет тип nvarchar(4000) и значение по умолчанию NULL.[ @collection_set_id = ] collection_set_id
Уникальный локальный идентификатор набора сбора. Аргумент collection_set_id имеет тип int, является выходным и обязательным.[ @collection_set_uid = ] 'collection_set_uid'
Идентификатор GUID для набора сбора. Аргумент collection_set_uid имеет тип uniqueidentifier и выходной параметр со значением по умолчанию NULL.
Значения кода возврата
0 (успешное завершение) или 1 (неуспешное завершение)
Замечания
Функция sp_syscollector_create_collection_set должна выполняться в контексте системной базы данных msdb.
Разрешения
Для выполнения этой процедуры требуется членство в предопределенной роли базы данных dc_admin (с разрешением EXECUTE).
Примеры
А. Создание набора сбора при помощи значений по умолчанию
В следующем примере набор сбора создается путем указания только обязательных параметров. Параметр @collection_mode не является обязательным, однако режим сбора по умолчанию (кэшированный) требует указания идентификатора или имени расписания.
USE msdb;
GO
DECLARE @collection_set_id 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
Б. Создание набора сбора при помощи указанных значений
В следующем примере набор сбора создается путем указания значений для многих параметров.
USE msdb;
GO
DECLARE @collection_set_id int;
DECLARE @collection_set_uid uniqueidentifier;
SET @collection_set_uid = NEWID();
EXEC 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;