Aracılığıyla paylaş


Register-CimIndicationEvent

Filtre ifadesi veya sorgu ifadesi kullanarak göstergelere abonedir.

Sözdizimi

Register-CimIndicationEvent
        [-Namespace <String>]
        [-ClassName] <String>
        [-OperationTimeoutSec <UInt32>]
        [-ComputerName <String>]
        [[-SourceIdentifier] <String>]
        [[-Action] <ScriptBlock>]
        [-MessageData <PSObject>]
        [-SupportEvent]
        [-Forward]
        [-MaxTriggerCount <Int32>]
        [<CommonParameters>]
Register-CimIndicationEvent
        [-Namespace <String>]
        [-ClassName] <String>
        [-OperationTimeoutSec <UInt32>]
        -CimSession <CimSession>
        [[-SourceIdentifier] <String>]
        [[-Action] <ScriptBlock>]
        [-MessageData <PSObject>]
        [-SupportEvent]
        [-Forward]
        [-MaxTriggerCount <Int32>]
        [<CommonParameters>]
Register-CimIndicationEvent
        [-Namespace <String>]
        [-Query] <String>
        [-QueryDialect <String>]
        [-OperationTimeoutSec <UInt32>]
        -CimSession <CimSession>
        [[-SourceIdentifier] <String>]
        [[-Action] <ScriptBlock>]
        [-MessageData <PSObject>]
        [-SupportEvent]
        [-Forward]
        [-MaxTriggerCount <Int32>]
        [<CommonParameters>]
Register-CimIndicationEvent
        [-Namespace <String>]
        [-Query] <String>
        [-QueryDialect <String>]
        [-OperationTimeoutSec <UInt32>]
        [-ComputerName <String>]
        [[-SourceIdentifier] <String>]
        [[-Action] <ScriptBlock>]
        [-MessageData <PSObject>]
        [-SupportEvent]
        [-Forward]
        [-MaxTriggerCount <Int32>]
        [<CommonParameters>]

Description

Bu cmdlet yalnızca Windows platformunda kullanılabilir.

Register-CimIndicationEvent cmdlet'i, gösterge sınıf adını veya sorgu ifadesini kullanarak göstergelere abone oluyor. SourceIdentifier parametresini kullanarak aboneliğe bir ad verin.

Bu cmdlet bir EventSubscription nesnesi döndürür. Aboneliği iptal etmek için bu nesneyi kullanabilirsiniz.

Örnekler

Örnek 1: Sınıf tarafından oluşturulan olayları kaydetme

Bu örnek, Win32_ProcessStartTraceadlı sınıf tarafından oluşturulan olaylara abonedir. Bu sınıf, bir işlem her başlatıldığında bir olay oluşturur.

$event = @{
    ClassName = 'Win32_ProcessStartTrace'
    SourceIdentifier = 'ProcessStarted'
}
Register-CimIndicationEvent @event
Get-Event -SourceIdentifier "ProcessStarted"

Get-Event cmdlet'i ProcessStarted aboneliğiyle olayları alır. Daha fazla bilgi için bkz. Get-Event .

Not

Bu örnekte PowerShell'i Yönetici olarak çalıştırmanız gerekir.

Örnek 2: Sorgu kullanarak olayları kaydetme

Bu örnekte, Win32_LocalTimeadlı bir sınıfın örneğinde değişiklik olduğunda oluşturulan bir olaya abone olmak için bir sorgu kullanılır.

$query = "SELECT * FROM CIM_InstModification WHERE TargetInstance ISA 'Win32_LocalTime'"
Register-CimIndicationEvent -Query $query -SourceIdentifier "Timer"

Örnek 3: Olay geldiğinde betik çalıştırma

Bu örnekte, bir olaya yanıt olarak bir eylemin nasıl kullanılacağı gösterilmektedir. $action değişkeni, CIM'den alınan olaya erişmek için değişkenini kullanan $Eventiçin betik bloğunu tutar.

$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

Daha fazla bilgi için bkz. Win32_ProcessStartTrace.

Örnek 4: Olayları uzak bilgisayara kaydetme

Bu örnek, Server01adlı uzak bilgisayardaki olaylara abonedir. CIM sunucusundan alınan olaylar geçerli PowerShell oturumundaki olay kuyruğunda depolanır ve ardından olayları almak için yerel bir Get-Event çalıştırır.

$event = @{
    ClassName = 'Win32_ProcessStartTrace'
    SourceIdentifier = 'ProcessStarted'
    ComputerName = 'Server01'
}
Register-CimIndicationEvent @event
Get-Event -SourceIdentifier "ProcessStarted"

Parametreler

-Action

Olayları işleyen komutları belirtir. Bu parametre tarafından belirtilen komutlar, olayı olay kuyruğuna göndermek yerine bir olay tetiklendiğinde çalıştırılır. Komut dosyası bloğu oluşturmak için komutları küme ayraçları ({}) içine alın.

Eylem ile belirtilen betik bloğu, $Event betik bloğuna olay hakkında bilgi sağlayan $EventSubscriber, $Sender, $SourceEventArgs, $SourceArgsve otomatik değişkenleri içerebilir. Daha fazla bilgi için bkz. otomatik değişkenler hakkında hakkında.

Tür:ScriptBlock
Position:1
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CimSession

Belirtilen CIM oturumunu kullanarak komutunu çalıştırır. CIM oturumunu içeren bir değişken veya New-CimSession veya Get-CimSession cmdlet'leri gibi CIM oturumunu oluşturan veya alan bir komut girin. Daha fazla bilgi için bkz. about_CimSession.

Tür:CimSession
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-ClassName

Abone olduğunuz gösterge sınıfını belirtir. PowerShell, sınıf adlarının listesini sağlamak için yerel WMI sunucusundan sınıfların listesini aldığından, sınıf listesine göz atmak için sekme tamamlama özelliğini kullanabilirsiniz.

Tür:String
Position:0
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-ComputerName

CIM işlemini çalıştırmak istediğiniz bilgisayarın adını belirtir. Tam etki alanı adı (FQDN), NetBIOS adı veya IP adresi belirtebilirsiniz.

Bu parametreyi belirtirseniz, cmdlet WsMan protokolunu kullanarak belirtilen bilgisayarda geçici bir oturum oluşturur. Bu parametreyi belirtmezseniz, cmdlet Bileşen Nesne Modeli 'ni (COM) kullanarak yerel sistemde işlem gerçekleştirir.

Aynı bilgisayarda birden çok işlem gerçekleştiriliyorsa, daha iyi performans için CIM oturumu kullanarak bağlanın.

Tür:String
Diğer adlar:CN, ServerName
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Forward

Abonelik olaylarının yerel bilgisayardaki oturuma iletildiğini gösterir. Uzak bir bilgisayarda veya uzak bir oturumda olaylara kaydolırken bu parametreyi kullanın.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-MaxTriggerCount

Belirtilen süreler için tetiklendikten sonra abonenin otomatik olarak kaydının alınması gerektiğini belirten parametre. Değer sıfıra eşit veya sıfırdan küçükse, kaydı kaldırılmadan olayın tetiklenme sayısı sınırı yoktur.

Tür:Int32
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-MessageData

Bu olay aboneliğiyle ilişkilendirilecek ek verileri belirtir. Bu parametrenin değeri, bu abonelikle ilişkili tüm olayların MessageData özelliğinde görünür.

Tür:PSObject
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Namespace

CIM işlemi için ad alanını belirtir. Varsayılan ad alanı kök/CIMV2 . PowerShell, ad alanlarının listesini sağlamak üzere yerel WMI sunucusundan bir ad alanı listesi aldığından, ad alanları listesine göz atmak için sekme tamamlama özelliğini kullanabilirsiniz.

Tür:String
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-OperationTimeoutSec

Cmdlet'in bilgisayardan yanıt bekleme süresini belirtir. Varsayılan olarak, bu parametrenin değeri 0'dır; bu da cmdlet'in sunucu için varsayılan zaman aşımı değerini kullandığı anlamına gelir.

OperationTimeoutSec parametresi 3 dakikalık sağlam bağlantı yeniden deneme zaman aşımından daha küçük bir değere ayarlanırsa, istemci yeniden bağlanamadan önce sunucudaki işlem zaman aşımına uğraması nedeniyle OperationTimeoutSec parametresinin değerinden daha uzun süren ağ hataları kurtarılamaz.

Tür:UInt32
Diğer adlar:OT
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Query

CIM sunucusunda çalıştırılacak sorguyu belirtir. Belirtilen değer ", 'tek tırnak işaretleri veya ters eğik çizgi \içeriyorsa, bu karakterlere ters eğik çizgi karakteri ön ekini ekleyerek bu karakterlerden kaçmalısınız. Belirtilen değer WQL LIKE işlecini kullanıyorsa, bunları köşeli ayraç içine []içine alarak şu karakterlerden kaçmalısınız: yüzde %, alt çizgi _veya [köşeli ayraç açma.

Tür:String
Position:0
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-QueryDialect

Sorgu parametresi için kullanılan sorgu dilini belirtir. Bu parametre için kabul edilebilir değerler şunlardır: WQL veya CQL. Varsayılan değer WQL değeridir.

Tür:String
Position:Named
Default value:WQL
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-SourceIdentifier

Abonelik için bir ad belirtir. Belirttiğiniz ad geçerli oturumda benzersiz olmalıdır. Varsayılan değer, PowerShell tarafından atanan bir GUID'dir. Bu değer, abone nesnesinin ve bu abonelikle ilişkili tüm olay nesnelerinin SourceIdentifier özelliğinin değerinde görünür.

Tür:String
Position:1
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-SupportEvent

Olay aboneliğinin gizli olduğunu gösterir. Geçerli abonelik daha karmaşık bir olay kayıt mekanizmasının parçası olduğunda ve bağımsız olarak keşfedilmemesi gerektiğinde bu parametreyi kullanın.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

Girişler

None

Nesneleri bu cmdlet'e yöneltemezsiniz.

Çıkışlar

Object

Bu cmdlet bir EventSubscription nesnesi döndürür.

Notlar

PowerShell, Register-CimIndicationEventiçin aşağıdaki diğer adları içerir:

  • Windows:
    • rcie

Bu cmdlet yalnızca Windows platformlarında kullanılabilir.