Register-CimIndicationEvent
Se suscribe a indicaciones mediante una expresión de filtro o una expresión de consulta.
Sintaxis
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
Este cmdlet solo está disponible en la plataforma Windows.
El Register-CimIndicationEvent
cmdlet se suscribe a indicaciones mediante un nombre de clase de indicación o una expresión de consulta. Use el parámetro SourceIdentifier para asignar un nombre a la suscripción.
Este cmdlet devuelve un objeto EventSubscription . Puede usar este objeto para cancelar la suscripción.
Ejemplos
Ejemplo 1: Registrar los eventos generados por una clase
En este ejemplo se suscribe a los eventos generados por la clase denominada Win32_ProcessStartTrace. Esta clase genera un evento cada vez que se inicia un proceso.
Register-CimIndicationEvent -ClassName 'Win32_ProcessStartTrace' -SourceIdentifier "ProcessStarted"
Get-Event -SourceIdentifier "ProcessStarted"
El Get-Event
cmdlet obtiene los eventos con la suscripción ProcessStarted . Para obtener más información, vea Get-Event.
Nota:
En este ejemplo, debe ejecutar PowerShell como administrador.
Ejemplo 2: Registrar los eventos mediante una consulta
En este ejemplo se usa una consulta para suscribirse a un evento generado siempre que haya un cambio en la instancia de una clase denominada Win32_LocalTime.
$query = "SELECT * FROM CIM_InstModification WHERE TargetInstance ISA 'Win32_LocalTime'"
Register-CimIndicationEvent -Query $query -SourceIdentifier "Timer"
Ejemplo 3: Ejecutar un script cuando llegue el evento
En este ejemplo se muestra cómo usar una acción en respuesta a un evento. La variable $action
contiene el bloque de script para Action, que usa la $event
variable para acceder al evento recibido de CIM.
$action = {
$name = $event.SourceEventArgs.NewEvent.ProcessName
$id = $event.SourceEventArgs.NewEvent.ProcessId
Write-Host -Object "New Process Started : Name = $name
ID = $id"
}
Register-CimIndicationEvent -ClassName 'Win32_ProcessStartTrace' -SourceIdentifier "ProcessStarted" -Action $action
Para obtener más información, consulte Win32_ProcessStartTrace.
Ejemplo 4: Registrar los eventos en un equipo remoto
En este ejemplo se suscribe a eventos en un equipo remoto denominado Server01. Los eventos recibidos del servidor CIM se almacenan en la cola de eventos de la sesión actual de PowerShell y, a continuación, ejecutan un local Get-Event
para recuperar los eventos.
Register-CimIndicationEvent -ClassName 'Win32_ProcessStartTrace' -SourceIdentifier "ProcessStarted" -ComputerName Server01
Get-Event -SourceIdentifier "ProcessStarted"
Parámetros
-Action
Especifica los comandos que controlan los eventos. Los comandos especificados por este parámetro se ejecutan cuando se genera un evento, en lugar de enviar el evento a la cola de eventos. Incluya los comandos entre llaves ({}
) para crear un bloque de script.
El bloque de script especificado con Action puede incluir las $Event
variables automáticas , $EventSubscriber
, $Sender
, $SourceEventArgs
y $SourceArgs
, que proporcionan información sobre el evento al bloque De script de acción . Para obtener más información, vea Acerca de las variables automáticas.
Tipo: | ScriptBlock |
Posición: | 1 |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-CimSession
Ejecuta el comando mediante la sesión CIM especificada. Escriba una variable que contenga la sesión CIM o un comando que cree o obtenga la sesión CIM, como los New-CimSession
cmdlets o Get-CimSession
. Para obtener más información, consulte about_CimSession.
Tipo: | CimSession |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-ClassName
Especifica la clase de indicación a la que se está suscribiendo. Puede usar la finalización de tabulación para examinar la lista de clases, ya que PowerShell obtiene una lista de clases del servidor WMI local para proporcionar una lista de nombres de clase.
Tipo: | String |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-ComputerName
Especifica el nombre del equipo en el que desea ejecutar la operación CIM. Puede especificar un nombre de dominio completo (FQDN), un nombre NetBIOS o una dirección IP.
Si especifica este parámetro, el cmdlet crea una sesión temporal en el equipo especificado mediante el protocolo WsMan. Si no especifica este parámetro, el cmdlet realiza la operación en el sistema local mediante el modelo de objetos componentes (COM).
Si se realizan varias operaciones en el mismo equipo, conéctese mediante una sesión CIM para mejorar el rendimiento.
Tipo: | String |
Alias: | CN, ServerName |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Forward
Indica que los eventos de la suscripción se reenvieron a la sesión en el equipo local. Utilice este parámetro cuando se registre en eventos de un equipo remoto o de una sesión remota.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-MaxTriggerCount
Parámetro para indicar que el suscriptor se debe anular automáticamente el registro después de que se desencadene durante horas especificadas. Si el valor es igual o menor que cero, no hay ningún límite en el número de veces que se puede desencadenar el evento sin que se anule el registro.
Tipo: | Int32 |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-MessageData
Especifica los datos adicionales que se van a asociar a esta suscripción de eventos. El valor de este parámetro aparece en la propiedad MessageData de todos los eventos asociados a esta suscripción.
Tipo: | PSObject |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Namespace
Especifica el espacio de nombres para la operación CIM. El espacio de nombres predeterminado es root/cimv2. Puede usar la finalización de tabulación para examinar la lista de espacios de nombres, ya que PowerShell obtiene una lista de espacios de nombres del servidor WMI local para proporcionar la lista de espacios de nombres.
Tipo: | String |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-OperationTimeoutSec
Especifica la cantidad de tiempo que el cmdlet espera una respuesta del equipo. De forma predeterminada, el valor de este parámetro es 0, lo que significa que el cmdlet usa el valor de tiempo de espera predeterminado para el servidor.
Si el parámetro OperationTimeoutSec se establece en un valor menor que el tiempo de espera de reintento de conexión sólido de 3 minutos, los errores de red que duran más que el valor del parámetro OperationTimeoutSec no se pueden recuperar, ya que la operación en el servidor agota el tiempo de espera antes de que el cliente pueda volver a conectarse.
Tipo: | UInt32 |
Alias: | OT |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-Query
Especifica una consulta que se va a ejecutar en el servidor CIM. Si el valor especificado contiene comillas "
dobles, comillas '
simples o una barra diagonal inversa \
, debe escapar esos caracteres prefijos con el carácter de barra diagonal inversa. Si el valor especificado usa el operador WQL LIKE, debe escapar los caracteres siguientes entre corchetes []
: porcentaje %
, subrayado _
o corchete [
de apertura.
Tipo: | String |
Posición: | 0 |
Valor predeterminado: | None |
Requerido: | True |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-QueryDialect
Especifica el lenguaje de consulta usado para el parámetro Query . Los valores aceptables para este parámetro son: WQL o CQL. El valor predeterminado es WQL.
Tipo: | String |
Posición: | Named |
Valor predeterminado: | WQL |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-SourceIdentifier
Especifica un nombre para la suscripción. El nombre que especifique debe ser único en la sesión actual. El valor predeterminado es un GUID que Asigna PowerShell. Este valor aparece en el valor de la propiedad SourceIdentifier del objeto subscriber y de todos los objetos de evento asociados a esta suscripción.
Tipo: | String |
Posición: | 1 |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
-SupportEvent
Indica que la suscripción de eventos está oculta. Utilice este parámetro cuando la suscripción actual forme parte de un mecanismo de registro de eventos más complejo y no deba detectarse de forma independiente.
Tipo: | SwitchParameter |
Posición: | Named |
Valor predeterminado: | None |
Requerido: | False |
Aceptar entrada de canalización: | False |
Aceptar caracteres comodín: | False |
Entradas
None
No se pueden canalizar objetos a este cmdlet.
Salidas
Este cmdlet devuelve un objeto EventSubscription .
Notas
PowerShell incluye los siguientes alias para Register-CimIndicationEvent
:
- Windows:
rcie
Este cmdlet solo está disponible en plataformas Windows.