sp_syscollector_create_collection_set (Transact-SQL)

Gäller för:SQL Server

Skapar en ny samlingsuppsättning. Du kan använda denna lagrade propuder för att skapa en anpassad samlingsmängd för datainsamling.

Varning

I fall där Windows-kontot konfigurerat som proxy är en icke-interaktiv eller interaktiv användare som ännu inte har loggat in, kommer profilkatalogen inte att existera och skapandet av staging-katalogen kommer att misslyckas. Därför, om du använder ett proxykonto på en domänkontrollant, måste du ange ett interaktivt konto som har använts minst en gång för att säkerställa att profilkatalogen har skapats.

Transact-SQL syntaxkonventioner

Syntax

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 ]
[ ; ]

Arguments

[ @name = ] N'namn'

Namnet på samlingssetet. @name är sysname och kan inte vara en tom sträng eller NULL.

@name måste vara unik. För en lista över aktuella samlingssetnamn, fråga systemvyn syscollector_collection_sets .

[ @target = ] N'target'

Reserverad för framtida användning. @target är nvarchar(128), med en standard på NULL.

[ @collection_mode = ] collection_mode

@collection_mode är smallint, med en standard på 0.

Specificerar hur data samlas in och lagras. @collection_mode är smallint, med standardvärdet , 0och kan ha ett av följande värden:

  • 0: Cachet läge. Datainsamling och uppladdning sker på separata scheman. Ange cachelagrat läge för kontinuerlig insamling.

  • 1: Icke-cachet läge. Datainsamling och uppladdning sker enligt samma schema. Ange icke-cachad läge för ad hoc-insamling eller snapshot-insamling.

När @collection_mode är 0, måste @schedule_uid eller @schedule_name specificeras.

[ @days_until_expiration = ] days_until_expiration

Antalet dagar då den insamlade datan sparas i hanteringsdatalagret. @days_until_expiration är smallint, med en standardnivå på 730 (två år). @days_until_expiration måste vara 0 ett positivt heltal.

[ @proxy_id = ] proxy_id

Den unika identifieraren för ett SQL Server Agent-proxykonto. @proxy_id är int, med standardvärdet .NULL Om specificerat måste @proxy_name vara NULL. För att få @proxy_id, fråga systemtabellen sysproxies . Den dc_admin fasta databasrollen måste ha behörighet att komma åt proxyn. För mer information, se Skapa en SQL Server Agent-proxy.

[ @proxy_name = ] N'proxy_name'

Namnet på proxykontot. @proxy_name är sysname, med standardvärdet .NULL Om specificerat måste @proxy_id vara NULL. För att få @proxy_name, fråga systemtabellen sysproxies .

[ @schedule_uid = ] 'schedule_uid'

GUID:n som pekar på ett schema. @schedule_uid är unik identifierare, med standardvärdet .NULL Om specificerat måste @schedule_name vara NULL. För att få @schedule_uid, fråga systemtabellen sysschedules .

När @collection_mode sätts till 0, måste @schedule_uid eller @schedule_name specificeras. När @collection_mode är satt till 1, ignoreras @schedule_uid eller @schedule_name om det är specificerat.

[ @schedule_name = ] N'schedule_name'

Namnet på schemat. @schedule_name är sysname, med standardvärdet .NULL Om specificerat måste @schedule_uid vara NULL. För att hämta @schedule_name, fråga systemtabellen sysschedules .

[ @logging_level = ] logging_level

Loggningsnivån. @logging_level är smallint, med standardvärdet , 1med ett av följande värden:

  • 0: loggar exekveringsinformation och SSIS-händelser som spårar:

    • Startande/stoppande samlingsmängder
    • Starta/stoppa paket
    • Felinformation
  • 1: nivåregistrering 0 och:

    • Körningsstatistik
    • Kontinuerligt pågående samlingsframsteg
    • Varningshändelser från SSIS
  • 2: nivåregistrering 1 och detaljerad händelseinformation från SSIS.

[ @description = ] Ingen beskrivning'

Beskrivningen av samlingssetet. @description är nvarchar(4000), med en standard på NULL.

[ @collection_set_id = ] collection_set_id UTGÅNG

Den unika lokala identifieraren för samlingsmängden. @collection_set_id är en OUTPUT-parameter av typen int.

[ @collection_set_uid = ] 'collection_set_uid' UTGÅNG

GUID för samlingssetet. @collection_set_uid är en OUTPUT-parameter av typen uniqueidentifier.

Returnera kodvärden

0 (lyckades) eller 1 (fel).

Anmärkningar

sp_syscollector_create_collection_set måste köras i kontexten av systemdatabasen msdb .

Permissions

Kräver medlemskap i den dc_admin (med EXEKUT-behörighet) fasta databasrollen för att utföra denna procedur.

Examples

A. Skapa en samlingsmängd genom att använda standardvärden

Följande exempel skapar en samlingsmängd genom att endast ange de nödvändiga parametrarna. @collection_mode är inte nödvändigt, men standardinsamlingsläget (cacha) kräver att man anger antingen ett schema-ID eller schemanamn.

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. Skapa en samlingsmängd genom att använda angivna värden

Följande exempel skapar en samlingsmängd genom att specificera värden för många av parametrarna.

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