Register-CimIndicationEvent
Berlangganan sinyal dengan menggunakan ekspresi filter atau ekspresi kueri.
Sintaks
ClassNameComputerSet (Default)
Register-CimIndicationEvent
[-ClassName] <String>
[[-SourceIdentifier] <String>]
[[-Action] <ScriptBlock>]
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-ComputerName <String>]
[-MessageData <PSObject>]
[-SupportEvent]
[-Forward]
[-MaxTriggerCount <Int32>]
[<CommonParameters>]
ClassNameSessionSet
Register-CimIndicationEvent
[-ClassName] <String>
[[-SourceIdentifier] <String>]
[[-Action] <ScriptBlock>]
-CimSession <CimSession>
[-Namespace <String>]
[-OperationTimeoutSec <UInt32>]
[-MessageData <PSObject>]
[-SupportEvent]
[-Forward]
[-MaxTriggerCount <Int32>]
[<CommonParameters>]
QueryExpressionSessionSet
Register-CimIndicationEvent
[-Query] <String>
[[-SourceIdentifier] <String>]
[[-Action] <ScriptBlock>]
-CimSession <CimSession>
[-Namespace <String>]
[-QueryDialect <String>]
[-OperationTimeoutSec <UInt32>]
[-MessageData <PSObject>]
[-SupportEvent]
[-Forward]
[-MaxTriggerCount <Int32>]
[<CommonParameters>]
QueryExpressionComputerSet
Register-CimIndicationEvent
[-Query] <String>
[[-SourceIdentifier] <String>]
[[-Action] <ScriptBlock>]
[-Namespace <String>]
[-QueryDialect <String>]
[-OperationTimeoutSec <UInt32>]
[-ComputerName <String>]
[-MessageData <PSObject>]
[-SupportEvent]
[-Forward]
[-MaxTriggerCount <Int32>]
[<CommonParameters>]
Deskripsi
Cmdlet ini hanya tersedia di platform Windows.
cmdlet Register-CimIndicationEvent mendaftar ke indikasi menggunakan nama kelas indikasi atau ekspresi kueri. Gunakan parameter SourceIdentifier untuk memberikan nama kepada langganan.
Cmdlet ini mengembalikan objek EventSubscription. Anda dapat menggunakan objek ini untuk membatalkan langganan.
Contoh
Contoh 1: Mendaftarkan peristiwa yang dihasilkan oleh kelas
Contoh ini berlangganan pada peristiwa yang dihasilkan oleh kelas yang disebut Win32_ProcessStartTrace. Kelas ini memicu sebuah peristiwa setiap kali sebuah proses dimulai.
$event = @{
ClassName = 'Win32_ProcessStartTrace'
SourceIdentifier = 'ProcessStarted'
}
Register-CimIndicationEvent @event
Get-Event -SourceIdentifier "ProcessStarted"
Cmdlet Get-Event mendapatkan peristiwa dengan subskripsi ProcessStarted. Untuk informasi selengkapnya, lihat Get-Event.
Nota
Untuk contoh ini, Anda harus menjalankan PowerShell sebagai Administrator.
Contoh 2: Mendaftarkan peristiwa menggunakan kueri
Contoh ini menggunakan kueri untuk berlangganan peristiwa yang dihasilkan setiap kali ada perubahan dalam instans kelas bernama Win32_LocalTime.
$query = "SELECT * FROM CIM_InstModification WHERE TargetInstance ISA 'Win32_LocalTime'"
Register-CimIndicationEvent -Query $query -SourceIdentifier "Timer"
Contoh 3: Jalankan skrip saat peristiwa tiba
Contoh ini menunjukkan cara menggunakan tindakan sebagai respons terhadap peristiwa. Variabel $action menyimpan blok skrip untuk Tindakan, yang menggunakan $Event variabel untuk mengakses peristiwa yang diterima dari CIM.
$action = {
$name = $Event.SourceEventArgs.NewEvent.ProcessName
$id = $Event.SourceEventArgs.NewEvent.ProcessId
Write-Host -Object "New Process Started : Name = $name ID = $id"
}
$event = @{
ClassName = 'Win32_ProcessStartTrace'
SourceIdentifier = 'ProcessStarted'
Action = $action
}
Register-CimIndicationEvent @event
Untuk informasi selengkapnya, lihat Win32_ProcessStartTrace.
Contoh 4: Mendaftarkan peristiwa di komputer jarak jauh
Contoh ini memantau kejadian di komputer jarak jauh bernama Server01. Peristiwa yang diterima dari server CIM disimpan di dalam antrean peristiwa pada sesi PowerShell yang sedang berjalan, kemudian menjalankan perintah lokal Get-Event untuk mengambil peristiwa.
$event = @{
ClassName = 'Win32_ProcessStartTrace'
SourceIdentifier = 'ProcessStarted'
ComputerName = 'Server01'
}
Register-CimIndicationEvent @event
Get-Event -SourceIdentifier "ProcessStarted"
Parameter
-Action
Menentukan perintah yang menangani kejadian. Perintah yang ditentukan oleh parameter ini dijalankan saat peristiwa dinaikkan, alih-alih mengirim peristiwa ke antrean peristiwa. Sertakan perintah dalam kurung kurawal ({}) untuk membuat blokir skrip.
Blok skrip yang ditentukan dengan Tindakan dapat menyertakan $Eventvariabel , , $EventSubscriber$Sender, $SourceEventArgs, dan $SourceArgs otomatis, yang memberikan informasi tentang peristiwa ke blokir skrip Tindakan. Untuk informasi selengkapnya, lihat Tentang Variabel Otomatis.
Properti parameter
| Jenis: | ScriptBlock |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | 1 |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-CimSession
Menjalankan perintah menggunakan sesi CIM yang ditentukan. Masukkan variabel yang berisi sesi CIM, atau perintah yang membuat atau mendapatkan sesi CIM, seperti cmdlet New-CimSession atau Get-CimSession. Untuk informasi lebih lanjut, lihat about_CimSession.
Properti parameter
| Jenis: | CimSession |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
ClassNameSessionSet
| Position: | Named |
| Wajib: | True |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
QueryExpressionSessionSet
| Position: | Named |
| Wajib: | True |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-ClassName
Menentukan kelas indikasi yang Anda langgani. Anda dapat menggunakan penyelesaian tab untuk menelusuri daftar kelas, karena PowerShell mendapatkan daftar kelas dari server WMI lokal untuk menyediakan daftar nama kelas.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
ClassNameComputerSet
| Position: | 0 |
| Wajib: | True |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
ClassNameSessionSet
| Position: | 0 |
| Wajib: | True |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-ComputerName
Menentukan nama komputer tempat Anda ingin menjalankan operasi CIM. Anda dapat menentukan nama domain yang sepenuhnya memenuhi syarat (FQDN), nama NetBIOS, atau alamat IP.
Jika Anda menentukan parameter ini, cmdlet membuat sesi sementara ke komputer yang ditentukan menggunakan protokol WsMan. Jika Anda tidak menentukan parameter ini, cmdlet melakukan operasi pada sistem lokal menggunakan Model Objek Komponen (COM).
Jika beberapa operasi sedang dilakukan pada komputer yang sama, sambungkan menggunakan sesi CIM untuk performa yang lebih baik.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
| Alias: | CN, ServerName |
Kumpulan parameter
ClassNameComputerSet
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
QueryExpressionComputerSet
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Forward
Menunjukkan bahwa event untuk langganan diteruskan ke sesi di komputer lokal. Gunakan parameter ini saat Anda mendaftar untuk peristiwa di komputer jarak jauh atau dalam sesi jarak jauh.
Properti parameter
| Jenis: | SwitchParameter |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-MaxTriggerCount
Parameter untuk menunjukkan bahwa pelanggan harus dihapus pendaftarannya secara otomatis setelah dipicu untuk sejumlah waktu yang ditentukan. Jika nilai sama atau kurang dari nol, tidak ada batasan berapa kali peristiwa dapat dipicu tanpa dibatalkan pendaftarannya.
Properti parameter
| Jenis: | Int32 |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-MessageData
Memperjelas data tambahan yang terkait dengan langganan acara ini. Nilai parameter ini muncul dalam properti MessageData dari semua peristiwa yang berhubungan dengan langganan ini.
Properti parameter
| Jenis: | PSObject |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Namespace
Menentukan namespace untuk operasi CIM. Namespace default root/CIMV2 . Anda dapat menggunakan penyelesaian tab untuk menelusuri daftar namespace, karena PowerShell mendapatkan daftar namespace dari server WMI lokal untuk menyediakan daftar namespace.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-OperationTimeoutSec
Menentukan jumlah waktu cmdlet menunggu respons dari komputer. Secara default, nilai parameter ini adalah 0, yang berarti bahwa cmdlet menggunakan nilai batas waktu default untuk server.
Jika parameter OperationTimeoutSec diatur ke nilai yang kurang dari batas waktu coba lagi koneksi yang kuat selama 3 menit, kegagalan jaringan yang berlangsung lebih dari nilai parameter OperationTimeoutSec tidak dapat dipulihkan, karena operasi pada server habis sebelum klien dapat terhubung kembali.
Properti parameter
| Jenis: | UInt32 |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
| Alias: | OT |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-Query
Menentukan kueri yang akan dijalankan di server CIM. Jika nilai yang ditentukan berisi tanda kutip ganda ", tanda kutip tunggal ', atau garis miring terbalik \, Anda harus menghindari karakter tersebut dengan menambahkannya dengan karakter garis miring terbalik. Jika nilai yang ditentukan menggunakan operator WQL LIKE, maka Anda harus keluar dari karakter berikut dengan menyertakannya dalam tanda kurung siku []: persen %, garis bawah _, atau membuka kurung siku [.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
QueryExpressionSessionSet
| Position: | 0 |
| Wajib: | True |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
QueryExpressionComputerSet
| Position: | 0 |
| Wajib: | True |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-QueryDialect
Menentukan bahasa kueri yang digunakan untuk parameter Kueri . Nilai yang dapat diterima untuk parameter ini adalah: WQL atau CQL. Nilai defaultnya adalah WQL.
Properti parameter
| Jenis: | String |
| Nilai default: | WQL |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
QueryExpressionSessionSet
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
QueryExpressionComputerSet
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-SourceIdentifier
Menentukan nama untuk langganan. Nama yang Anda tentukan harus unik dalam sesi saat ini. Nilai bawaan adalah GUID yang ditetapkan oleh PowerShell. Nilai ini tercantum dalam properti SourceIdentifier dari objek subskriptor dan semua objek event yang terkait dengan langganan ini.
Properti parameter
| Jenis: | String |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | 1 |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
-SupportEvent
Menunjukkan bahwa langganan acara disembunyikan. Gunakan parameter ini ketika langganan saat ini adalah bagian dari mekanisme pendaftaran peristiwa yang lebih kompleks dan tidak boleh ditemukan secara independen.
Properti parameter
| Jenis: | SwitchParameter |
| Nilai default: | None |
| Mendukung wildcard: | False |
| DontShow: | False |
Kumpulan parameter
(All)
| Position: | Named |
| Wajib: | False |
| Nilai dari alur: | False |
| Nilai dari alur berdasarkan nama properti: | False |
| Nilai dari argumen yang tersisa: | False |
CommonParameters
Cmdlet ini mendukung parameter umum: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction, dan -WarningVariable. Untuk informasi selengkapnya, lihat about_CommonParameters.
Input
None
Anda tidak dapat menyalurkan objek ke cmdlet ini.
Output
Object
Cmdlet ini mengembalikan objek EventSubscription.
Catatan
PowerShell menyertakan alias berikut untuk Register-CimIndicationEvent:
- Windows:
rcie
Cmdlet ini hanya tersedia di platform Windows.