none
Обработка WMI-событий RRS feed

  • Вопрос

  • Народ, подскажите по такой проблеме (может у кого-нить есть большой опыт работы с WMI-событиями). Пытаюсь ловить события перезапуска служб (для теста) и писать результат в текстовый файл. Сваял вот такой вот PS-скрипт:

     

    #Создание фильтра событий 
    $WMIEventFilter = Set-WmiInstance -Class __EventFilter -Namespace "root/CIMV2"`
    @{Name = "MonitoringServices"; QueryLanguage = "WQL"; Query = "SELECT * FROM __InstanceModificationEvent WITHIN 1 WHERE TargetInstance ISA 'Win32_Service'"}
    $WMIEventFilter.Put()
    
    #Создание потребителя событий записи в текстовый файл
    $WMIEventConsumer = Set-WmiInstance -Class LogFileEventConsumer -Name "root/subscription"`
    @{Name = "ServiceLog"; Filename = "C:\Temp\LogService.txt"; Text = "Service %TargetInstance.DisplayName% will %TargetInstance.State%"}
    $WMIEventConsumer.Put()
    
    #Cоздание связи между потребителем и фильтром
    $WMIBinding = Set-WmiInstance -Class __FilterToConsumerBinding -Name "root/subscription"`
    @{Filter = $WMIEventFilter; Consumer = $WMIEventConsumer}
    $WMIBinding.Put()
    <br/>
    
    Запускаю скрипт, регистрация всех объектов проходит успешно. Начинаю играться со службами - никакой реакции. Не появляется C:\Temp\LogService.txt и хоть тресни.
    Смотрю с помощью CIM Studio - все необходимые объекты в репозитарии есть.
    В чем может быть проблема ?
    Andy Mishechkin
    24 декабря 2010 г. 11:45

Ответы

Все ответы