sp_syscollector_create_collection_set (T-SQL)

Berlaku untuk:SQL Server

Membuat kumpulan koleksi baru. Anda dapat menggunakan prosedur tersimpan ini untuk membuat kumpulan koleksi kustom untuk pengumpulan data.

Peringatan

Dalam kasus di mana akun Windows yang dikonfigurasi sebagai proksi adalah pengguna non-interaktif atau interaktif yang belum masuk, direktori profil tidak akan ada, dan pembuatan direktori penahapan akan gagal. Oleh karena itu, jika Anda menggunakan akun proksi pada pengendali domain, Anda harus menentukan akun interaktif yang telah digunakan setidaknya sekali untuk memastikan bahwa direktori profil telah dibuat.

Konvensi sintaks transact-SQL

Sintaks

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

Argumen

[ @name = ] N'name'

Nama kumpulan koleksi. @name adalah sysname dan tidak boleh berupa string kosong atau NULL.

@name harus unik. Untuk daftar nama kumpulan koleksi saat ini, kueri syscollector_collection_sets tampilan sistem.

[ @target = ] N'target'

Disiapkan untuk penggunaan masa mendatang. @target adalah nvarchar(128), dengan default NULL.

[ @collection_mode = ] collection_mode

@collection_mode kecil, dengan default 0.

Menentukan cara data dikumpulkan dan disimpan. @collection_mode kecil, dengan default 0, dan dapat memiliki salah satu nilai berikut:

  • 0: Mode singgahan. Pengumpulan dan pengunggahan data berada pada jadwal terpisah. Tentukan mode singgahan untuk koleksi berkelanjutan.

  • 1: Mode non-cache. Pengumpulan dan pengunggahan data berada pada jadwal yang sama. Tentukan mode non-cache untuk koleksi ad hoc atau koleksi rekam jepret.

Ketika @collection_mode , 0@schedule_uid atau @schedule_name harus ditentukan.

[ @days_until_expiration = ] days_until_expiration

Jumlah hari data yang dikumpulkan disimpan di gudang data manajemen. @days_until_expiration kecil, dengan default 730 (dua tahun). @days_until_expiration harus berupa 0 bilangan bulat atau positif.

[ @proxy_id = ] proxy_id

Pengidentifikasi unik untuk akun proksi SQL Server Agent. @proxy_id int, dengan default NULL. Jika ditentukan, @proxy_name harus NULL. Untuk mendapatkan @proxy_id, kueri sysproxies tabel sistem. Peran database tetap dc_admin harus memiliki izin untuk mengakses proksi. Untuk informasi selengkapnya, lihat Membuat Proksi Agen SQL Server.

[ @proxy_name = ] N'proxy_name'

Nama akun proksi. @proxy_name adalah sysname, dengan default NULL. Jika ditentukan, @proxy_id harus NULL. Untuk mendapatkan @proxy_name, kueri sysproxies tabel sistem.

[ @schedule_uid = ] 'schedule_uid'

GUID yang menunjuk ke jadwal. @schedule_uid adalah uniqueidentifier, dengan default NULL. Jika ditentukan, @schedule_name harus NULL. Untuk mendapatkan @schedule_uid, kueri sysschedules tabel sistem.

Ketika @collection_mode diatur ke 0, @schedule_uid atau @schedule_name harus ditentukan. Ketika @collection_mode diatur ke 1, @schedule_uid atau @schedule_name diabaikan jika ditentukan.

[ @schedule_name = ] N'schedule_name'

Nama jadwal. @schedule_name adalah sysname, dengan default NULL. Jika ditentukan, @schedule_uid harus NULL. Untuk mendapatkan @schedule_name, kueri sysschedules tabel sistem.

[ @logging_level = ] logging_level

Tingkat pengelogan. @logging_level kecil, dengan default 1, dengan salah satu nilai berikut:

  • 0: informasi eksekusi log dan peristiwa SSIS yang melacak:

    • Memulai/menghentikan kumpulan koleksi
    • Memulai/menghentikan paket
    • Informasi kesalahan
  • 1: pengelogan tingkat 0 dan:

    • Statistik eksekusi
    • Kemajuan pengumpulan yang terus berjalan
    • Peristiwa peringatan dari SSIS
  • 2: pengelogan tingkat 1 dan informasi peristiwa terperinci dari SSIS.

[ @description = ] N'description'

Deskripsi kumpulan koleksi. @description adalah nvarchar(4000), dengan default NULL.

[ @collection_set_id = ] collection_set_id OUTPUT

Pengidentifikasi lokal unik untuk kumpulan koleksi. @collection_set_id adalah parameter OUTPUT dari jenis int.

[ @collection_set_uid = ] OUTPUT 'collection_set_uid'

GUID untuk kumpulan koleksi. @collection_set_uid adalah parameter OUTPUT dari jenis pengidentifikasi unik.

Mengembalikan nilai kode

0 (berhasil) atau 1 (kegagalan).

Keterangan

sp_syscollector_create_collection_set harus dijalankan dalam konteks msdb database sistem.

Izin

Memerlukan keanggotaan dalam peran database tetap dc_admin (dengan izin EXECUTE) untuk menjalankan prosedur ini.

Contoh

J. Membuat kumpulan yang ditetapkan dengan menggunakan nilai default

Contoh berikut membuat kumpulan koleksi dengan hanya menentukan parameter yang diperlukan. @collection_mode tidak diperlukan, tetapi mode koleksi default (di-cache) mengharuskan menentukan ID jadwal atau nama jadwal.

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. Membuat kumpulan yang ditetapkan dengan menggunakan nilai yang ditentukan

Contoh berikut membuat kumpulan koleksi dengan menentukan nilai untuk banyak parameter.

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;
GO