core.sp_create_snapshot (Transact-SQL)

Вставляет строку в представление core.snapshots хранилища данных управления. Эта процедура вызывается каждый раз, когда пакет передачи начинает передавать данные в хранилище данных управления.

Значок ссылки на раздел Синтаксические обозначения в Transact-SQL

Синтаксис

core.sp_create_snapshot [ @collection_set_uid = ] 'collection_set_uid'
    , [ @collector_type_uid = ] 'collector_type_uid'
    ,[ @machine_name = ] 'machine_name'
    , [ @named_instance = ] 'named_instance'
    , [ @log_id = ] log_id 
    , [ @snapshot_id = ] snapshot_id OUTPUT

Аргументы

  • [ @collection\_set\_uid = ] 'collection_set_uid'
    Имеет значение GUID для набора элементов сбора. Аргумент collection_set_uid имеет тип uniqueidentifier и не имеет значения по умолчанию. Чтобы получить идентификатор GUID, запросите представление dbo.syscollector_collection_sets в базе данных msdb.

  • [ @collector\_type\_uid = ] 'collector_type_uid'
    Идентификатор GUID для типа сборщика. Аргумент collector_type_uid имеет тип uniqueidentifier и не имеет значения по умолчанию. Чтобы получить идентификатор GUID, запросите представление dbo.syscollector_collector_types в базе данных msdb.

  • [ @machine\_name= ] 'machine_name'
    Имя сервера, на котором находится набор элементов сбора. Аргумент machine_name имеет тип sysname и не имеет значения по умолчанию.

  • [ @named\_instance= ] 'named_instance'
    Имя экземпляра набора элементов сбора. Аргумент named_instance имеет тип sysname и не имеет значения по умолчанию.

  • [ @log\_id = ] log_id
    Уникальный идентификатор, соответствующий журналу событий набора элементов сбора на сервере, который собирал данные. Аргумент log_id имеет тип bigint и не имеет значения по умолчанию. Получить значение параметра log_id можно с помощью запроса к представлению dbo.syscollector_execution_log в базе данных msdb.

  • [ @snapshot\_id = ] snapshot_id
    Уникальный идентификатор для строки, которая вставляется в представление core.snapshots. snapshot_id имеет тип int и возвращается как переменная OUTPUT.

Значения кодов возврата

0 (успешное завершение) или 1 (неуспешное завершение)

Замечания

Каждый раз, когда пакет передачи начинает загружать данные в хранилище данных управления, исполняемый компонент сборщика данных вызывает функцию core.sp_create_snapshot.

Эта процедура проверяет следующее:

  • Аргумент collection_set_uid соответствует существующим записям таблицы core.source_info_internal;

  • Аргумент collector_type_uid соответствует существующим записям представления core.supported_collector_types;

Если хотя бы одно из вышеперечисленных условий не выполняется, процедура возвращает ошибку.

Разрешения

Необходимо членство в предопределенной роли базы данных mdw_writer (с разрешением EXECUTE).

Примеры

В следующем примере создается моментальный снимок для набора сбора «Занято места на диске», который добавляется в хранилище данных управления, а затем возвращается идентификатор моментального снимка. В примере используется экземпляр по умолчанию.

USE <management_data_warehouse>;
DECLARE @snapshot_id int;
EXEC core.sp_create_snapshot 
    @collection_set_uid = '7B191952-8ECF-4E12-AEB2-EF646EF79FEF', 
    @collector_type_uid = '302E93D1-3424-4BE7-AA8E-84813ECF2419',
    @machine_name = '<computername>',
    @named_instance = 'MSSQLSERVER',
    @log_id = 11, -- ID of the log for the collection set
    @snapshot_id = @snapshot_id OUTPUT;

См. также

Справочник

Системные хранимые процедуры (Transact-SQL)

Хранимые процедуры сборщика данных (Transact-SQL)

Основные понятия

Хранилище данных управления