Register-CimIndicationEvent
Подписывается на признаки с помощью выражения фильтра или выражения запроса.
Синтаксис
ClassNameComputerSet (По умолчанию)
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>]
Описание
Этот командлет доступен только на платформе Windows.
Командлет Register-CimIndicationEvent подписывается на индикации с помощью имени класса индикаций или выражения запроса. Используйте параметр SourceIdentifier присвойте подписке имя.
Этот командлет возвращает объект EventSubscription. Этот объект можно использовать для отмены подписки.
Примеры
Пример 1. Регистрация событий, созданных классом
Этот пример подписывается на события, созданные классом с именем Win32_ProcessStartTrace. Этот класс вызывает событие при каждом запуске процесса.
$event = @{
ClassName = 'Win32_ProcessStartTrace'
SourceIdentifier = 'ProcessStarted'
}
Register-CimIndicationEvent @event
Get-Event -SourceIdentifier "ProcessStarted"
Командлет Get-Event получает события с подпиской ProcessStarted. Дополнительные сведения см. в Get-Event.
Замечание
В этом примере необходимо запустить PowerShell от имени администратора.
Пример 2. Регистрация событий с помощью запроса
В этом примере используется запрос для подписки на событие, созданное при изменении экземпляра класса с именем Win32_LocalTime.
$query = "SELECT * FROM CIM_InstModification WHERE TargetInstance ISA 'Win32_LocalTime'"
Register-CimIndicationEvent -Query $query -SourceIdentifier "Timer"
Пример 3. Запуск скрипта при поступлении события
В этом примере показано, как использовать действие в ответ на событие. Переменная содержит блок скрипта для Action, который использует $Event переменную $action для доступа к событию, полученному от 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
Дополнительные сведения см. в Win32_ProcessStartTrace.
Пример 4. Регистрация событий на удаленном компьютере
Этот пример подписывается на события на удаленном компьютере с именем Server01. События, полученные от сервера CIM, сначала хранятся в очереди событий в текущем сеансе PowerShell, а затем запускается локальный процесс Get-Event для их получения.
$event = @{
ClassName = 'Win32_ProcessStartTrace'
SourceIdentifier = 'ProcessStarted'
ComputerName = 'Server01'
}
Register-CimIndicationEvent @event
Get-Event -SourceIdentifier "ProcessStarted"
Параметры
-Action
Задает команды, обрабатывающие события. Команды, указанные этим параметром, выполняются при возникновении события, а не отправки события в очередь событий. Заключите команды в фигурные скобки ({}) для создания скриптблока.
Блок скрипта, указанный с помощью действия, может включать $Eventпеременные , $EventSubscriber$SourceEventArgs$Senderи $SourceArgs автоматические переменные, которые предоставляют сведения о событии в блок скрипта Action. Дополнительные сведения см. в разделе Об автоматических переменных.
Свойства параметров
| Тип: | ScriptBlock |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | 1 |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-CimSession
Выполняет команду с помощью указанного сеанса CIM. Введите переменную, содержащую сеанс CIM, или команду, которая создает или получает сеанс CIM, например командлеты New-CimSession или Get-CimSession. Дополнительные сведения см. в разделе about_CimSession.
Свойства параметров
| Тип: | CimSession |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
ClassNameSessionSet
| Position: | Named |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
QueryExpressionSessionSet
| Position: | Named |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-ClassName
Указывает класс подписки, к которому вы присоединяетесь. Вы можете использовать завершение вкладки для просмотра списка классов, так как PowerShell получает список классов с локального сервера WMI для предоставления списка имен классов.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
ClassNameComputerSet
| Position: | 0 |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
ClassNameSessionSet
| Position: | 0 |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-ComputerName
Указывает имя компьютера, на котором требуется выполнить операцию CIM. Можно указать полное доменное имя (FQDN), имя NetBIOS или IP-адрес.
При указании этого параметра командлет создает временный сеанс для указанного компьютера с помощью протокола WsMan. Если этот параметр не указан, командлет выполняет операцию в локальной системе с помощью объектной модели компонента (COM).
Если на одном компьютере выполняются несколько операций, подключитесь к сеансу CIM для повышения производительности.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | Китай, Имя сервера |
Наборы параметров
ClassNameComputerSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
QueryExpressionComputerSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Forward
Указывает, что события для подписки перенаправляются в сеанс на локальном компьютере. Используйте этот параметр при регистрации событий на удаленном компьютере или в удаленном сеансе.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-MaxTriggerCount
Параметр, указывающий, что подписчик должен автоматически отменить регистрацию после активации в течение указанного времени. Если значение равно или меньше нуля, количество активаций события не ограничено без отмены регистрации.
Свойства параметров
| Тип: | Int32 |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-MessageData
Указывает дополнительные данные, которые необходимо связать с этой подпиской на событие. Значение этого параметра отображается в свойстве MessageData всех событий, связанных с этой подпиской.
Свойства параметров
| Тип: | PSObject |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Namespace
Указывает пространство имен для операции CIM. Пространство имен по умолчанию — корневой/CIMV2. Вы можете использовать завершение вкладки для просмотра списка пространств имен, так как PowerShell получает список пространств имен с локального сервера WMI для предоставления списка пространств имен.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-OperationTimeoutSec
Указывает период времени, в течение которого командлет ожидает ответа от компьютера. По умолчанию значение этого параметра равно 0, что означает, что командлет использует значение времени ожидания по умолчанию для сервера.
Если параметр OperationTimeoutSec имеет значение меньше времени ожидания надежного повтора подключения в 3 минуты, сетевые сбои, длящиеся дольше, чем значение параметра OperationTimeoutSec, не подлежат восстановлению, так как время операции на сервере истекает до того, как клиент успевает переподключиться.
Свойства параметров
| Тип: | UInt32 |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | OT |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Query
Указывает запрос, выполняемый на сервере CIM. Если указанное значение содержит двойные кавычки ", одинарные кавычки 'или обратную косую черту \, необходимо экранировать эти символы, префиксируя их символом обратной косой черты. Если указанное значение использует оператор WQL LIKE, необходимо экранировать следующие символы, заключив их в квадратные скобки []: процент %, подчеркивание _или открытие квадратной скобки [.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
QueryExpressionSessionSet
| Position: | 0 |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
QueryExpressionComputerSet
| Position: | 0 |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-QueryDialect
Задает язык запросов, используемый для параметра запроса
Свойства параметров
| Тип: | String |
| Default value: | WQL |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
QueryExpressionSessionSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
QueryExpressionComputerSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-SourceIdentifier
Указывает имя подписки. Указанное имя должно быть уникальным в текущем сеансе. Значение по умолчанию — это GUID, который назначает PowerShell. Это значение отображается в значении свойства SourceIdentifier объекта подписчика и всех объектов событий, связанных с этой подпиской.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | 1 |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-SupportEvent
Указывает, что подписка на событие скрыта. Используйте этот параметр, если текущая подписка является частью более сложного механизма регистрации событий и не должна быть обнаружена независимо.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Входные данные
None
Невозможно передать объекты в этот командлет.
Выходные данные
Object
Этот командлет возвращает объект EventSubscription.
Примечания
PowerShell включает следующие псевдонимы для Register-CimIndicationEvent:
- Виндоус:
rcie
Этот командлет доступен только на платформах Windows.