1. Журнал событий Windows традиционно используется для выявления причин аварийных остановов и зависаний программ. Если штатных элементов управления недостаточно, разработчик рекомендует редактировать запрос вручную. Ниже приведён пример фильтра, отбирающего строки с ошибками и зависаниями, вызванными программой 1С. Куда вводить текст показано на скриншоте.
<QueryList> <Query Id="0" Path="Application"> <Select Path="Application"> *[System[Provider[@Name='Application Error'] or Provider[@Name='Application Hang']]and EventData[(Data='1cv8.exe')]] </Select> </Query> </QueryList>
2. К событию журнала можно привязать задачу (см. контекстное меню к строке). Одной из таких задач может быть отправка письма администратору. Однако встроенный механизм требует наличия учётной записи на почтовом сервере. Можно обойтись без неё, если создать простой VBA-скрипт, отправляющий письма. Достаточно иметь почтовый ящик на Yandex.
Set objMsg = CreateObject("CDO.Message")
Set Config = CreateObject("CDO.Configuration")
Set Config = objMsg.Configuration
objMsg.From = "alert_1234@yandex.ru"
objMsg.To = "name@domen.ru"
objMsg.Subject = "Test sending email from sсriрt"
objMsg.Textbody = "This is a body of E-mail."
Config("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
Config("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.yandex.ru"
Config("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
Config("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
Config("http://schemas.microsoft.com/cdo/configuration/sendusername") = "alert_1234@yandex.ru"
Config("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"
Config.Fields.Update
objMsg.Send