В Windows Server 2008 (Vista) появился новый функционал, позволяющий привязать задание планировщика к любому событию в журналах системы. Благодаря этой возможности администратор может на любое событие Windows назначить выполнение определенного скрипта или отправку оповещения по электронной почты. Разберемся с этой возможностью подробнее.
Возможность запуска задач при наступлении определенных событий Windows основана на тесной интеграции Task Scheduler и Event Viewer . Назначить задание планировщика на любое событие Windows можно прямо из консоли журнала просмотр события (Event Viewer). В качестве реакции на произошедшее событие планировщик может запустить скрипт или отправить почтовое уведомление администратору (или любому другому пользователю).
Допустим, наша задача – настроить оповестить администратора безопасности о блокировке учетной записи пользователя в Active Directory.
Событие блокировки учетной записи в AD отмечается на контроллере домена в журнале Security (Безопасность). Event ID события блокировки – 4740 . Открываем консоль журнала событий Windows ( Event Viewer — eventvwr.msc ) и ищем интересующее нас событие. Щелкаем по нему ПКМ и выбираем пункт Attach Task To This Event (Прикрепить задачу к этому событию).
Триггер является активным. Теперь при блокировке любой учетной записи AD – на указанный email будет отправляться письмо с уведомлением.
Примечание . Аналогичный функционал в Windows Server 2003 и более ранних версиях Windows реализовывался с помощью консольной утилиты — eventtriggers.exe . Данная утилита также позволяла отслеживать события в журналах системы и «вешать» на определенные события триггеры. Для нашего пример, когда к событию 4740 нужно привязать выполнение скрипта vbs или powershell , который отправляет письмо на ящик администратора, команда может быть такой:
eventtriggers /create /TR “Lock Account” /TK “C:WINDOWSsystem32windowspowershellv1.0powershell.exe c:scriptSendEmail.ps1″ /L Security /EID 4740
Такое уведомление не очень информативно, и для просмотра подробной информации о событии приходится открывать журнал Event Viewer. Попробуем прикрепить к письму данные из журнала событий. В этом нам поможет утилита wevtutil, позволяющая выгрузить из журналов Windows информацию о любом событии. Так, чтобы получить данные о последнем событии с кодом 4740 из журнала Security, нужно выполнить:
wevtutil qe Security /q:"*[System[(EventID=4740)]]" /f:text /rd:true /c:1
Создадим скрипт (query.cmd) из двух строчек: первая удаляет старый файл с логом, вторая – выгружает из журнала последнее событие и сохраняет его в файл лога:
del c:scriptquery.txt
wevtutil qe Security /q:"*[System[(EventID=4740)]]" /f:text /rd:true /c:1 > c:scriptquery.txt
Осталось еще раз открыть настройки созданного ранее триггера в журнале планировщика задач. На вкладке Actions добавим новое действие – запуск скрипта query.cmd. Затем нужно изменить порядок выполнения действий, перенесем его вверх списка с помощью стрелок справа (скрипт должен выполняться первым).
Протестируем задание еще раз. Теперь на почту администратора будет приходить уведомление со вложением, в котором указан данные о имени заблокированной учетной записи, времени блокировке и другой полезной информацией.
Привязка заданий планировщика к событиям в журналах систем работает во всех версиях Windows, начиная с Windows Server 2008 / Vista. Этот функционал позволяет быстро оповестить администратора о возникновении определенных проблем с серверов и отреагировать на них.
Как менялся логотип Apple на протяжении многих лет. Логотип Apple — это не просто символ,…
Security Boot Fail при загрузке Acer — решение проблемы При загрузке ноутбука Acer с флешки,…
Ноутбук не включается — варианты решения Если при попытке включить ноутбук вы обнаруживаете, что он…
The AC power adapter wattage and type cannot be determined — причины и решение При…
Свистит или звенит блок питания компьютера — причины и решения Некоторые владельцы ПК могут обратить…
Мигает Caps Lock на ноутбуке HP — почему и что делать? При включении ноутбука HP…