Compartir a través de


sp_syscollector_create_collection_set (Transact-SQL)

Crea un conjunto de recopilaciones nuevo. Puede utilizar este procedimiento almacenado para crear un conjunto de recopilación personalizado para la recopilación de datos.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

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 ]

Argumentos

  • [ @name = ] 'name'
    Es el nombre del conjunto de recopilación. name es de tipo sysname y no puede ser una cadena vacía ni NULL.

    name debe ser único. Para obtener una lista de los nombres de conjuntos de recopilación actuales, consulte la vista del sistema syscollector_collection_sets.

  • [ @target = ] 'target'
    Está reservado para su uso futuro. name es de tipo nvarchar(128) y tiene el valor predeterminado NULL.

  • [ @collection\_mode = ] collection_mode
    Especifica el modo en que se recopilan y almacenan los datos. collection_mode es de tipo smallint y puede tener uno de los valores siguientes:

    0 - Modo de almacenamiento en caché. La recopilación de datos y la carga están en programaciones independientes. Especifique el modo de almacenamiento en caché para la recopilación continua.

    1 - Modo sin almacenamiento en caché. La recopilación y la carga de datos están en la misma programación. Establezca el modo sin almacenamiento en caché para la recopilación ad hoc o la recopilación de instantáneas.

    El valor predeterminado de collection_mode es 0. Cuando collection_mode es 0, debe especificarse schedule_uid o schedule_name.

  • [ @days\_until\_expiration = ] days_until_expiration
    Es el número de días que los datos recopilados se guardan en el almacén de administración de datos. days_until_expiration es de tipo smallint y tiene como valor predeterminado 730 (dos años). days_until_expiration debe ser 0 o un entero positivo.

  • [ @proxy\_id = ] proxy_id
    Es el identificador único de una cuenta de proxy de Agente SQL Server. proxy_id es de tipo int y tiene el valor predeterminado NULL. Si se especifica, proxy_name debe ser NULL. Para obtener proxy_id, consulte la tabla del sistema sysproxies. La función de la base de datos fija dc_admin debe disponer de los permisos necesarios para obtener acceso al proxy. Para obtener más información, vea Crear cuentas de proxy del Agente SQL Server.

  • [ @proxy\_name = ] 'proxy_name'
    Es el nombre de la cuenta de proxy. proxy_name es de tipo sysname y su valor predeterminado es NULL. Si se especifica, proxy_id debe ser NULL. Para obtener proxy_name, consulte la tabla del sistema sysproxies.

  • [ @schedule\_uid = ] 'schedule_uid'
    Es el GUID que apunta a una programación. schedule_uid es de tipo uniqueidentifier y tiene el valor predeterminado NULL. Si se especifica, schedule_name debe ser NULL. Para obtener schedule_uid, consulte la tabla del sistema sysschedules.

    Cuando collection_mode se establece en 0, debe especificarse schedule_uid o schedule_name. Cuando collection_mode se establece en 1, schedule_uid o schedule_name se omite si se especifica.

  • [ @schedule\_name = ] 'schedule_name'
    Es el nombre de la programación. schedule_name es de tipo sysname y su valor predeterminado es NULL. Si se especifica, schedule_uid debe ser NULL. Para obtener schedule_name, consulte la tabla del sistema sysschedules.

  • [ @logging\_level = ] logging_level
    Es el nivel del registro. logging_level es smallint con uno de los siguientes valores:

    0 - registrar la información de ejecución y los eventos SSIS que realizan el seguimiento:

    • Iniciar/detener los conjuntos de recopilaciones

    • Iniciar/detener los paquetes

    • Información de error

    1 - nivel de registro 0 y:

    • Estadísticas de ejecución

    • Progreso de recopilaciones que se ejecutan continuamente

    • Eventos de advertencia de SSIS

    2 - nivel de registro 1 e información detallada de eventos de SSIS

    El valor predeterminado de logging_level es 1.

  • [ @description = ] 'description'
    Es la descripción del conjunto de recopilación. description es de tipo nvarchar(4000) y su valor predeterminado es NULL.

  • [ @collection\_set\_id = ] collection_set_id
    Es el identificador único local del conjunto de recopilación. collection_set_id es de tipo int con OUTPUT y es necesario.

  • [ @collection\_set\_uid = ] 'collection_set_uid'
    Es el GUID del conjunto de recopilación. collection_set_uid es de tipo uniqueidentifier con OUTPUT y su valor predeterminado es NULL.

Valores de código de retorno

0 (correcto) o 1 (error)

Notas

sp_syscollector_create_collection_set se debe ejecutar en el contexto de la base de datos del sistema msdb.

Permisos

Debe pertenecer a la función de base de datos fija dc_admin (con permiso EXECUTE) para ejecutar este procedimiento.

Ejemplos

A. Crear un conjunto de recopilación utilizando valores predeterminados

En el ejemplo siguiente se crea un conjunto de recopilación especificando únicamente los parámetros necesarios. @collection\_mode no es un parámetro necesario, pero el modo de recopilación predeterminado (almacenamiento en caché) hace necesario especificar el identificador o el nombre de la programación.

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

B. Crear un conjunto de recopilación utilizando los valores especificados

En el ejemplo siguiente se crea un conjunto de recopilación con los valores especificados para muchos de los parámetros.

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;