Я использую IIS7 для своего веб-приложения, и по какой-то причине время от времени пул приложений дает сбой (останавливается).
Я хотел бы получить уведомление по электронной почте, когда это произойдет. Это возможно?
Если да, то как?
Или я должен искать инструмент мониторинга сервера, чтобы помочь мне в этом?
Включи мониторинг здоровья, указывая на поставщика электронной почты:
<system.net>
<mailSettings>
<smtp deliveryMethod="Network" from="me@example.com">
<network defaultCredentials="false"
host="example.com"
password="mypassword"
userName="emailauthenticationusername" />
</smtp>
</mailSettings>
</system.net>
<healthMonitoring>
<providers>
<add name="MailWebEventProvider"
type="System.Web.Management.SimpleMailWebEventProvider"
buffer="false" />
</providers>
<rules>
<add name="Application Lifetime Events Default"
eventName="Application Lifetime Events"
provider="MailWebEventProvider"
profile="Default"
minInstances="1"
maxLimit="Infinite"
minInterval="00:01:00"
custom="" />
</rules>
</healthMonitoring>
[http://www.iis.net/ConfigReference/system.applicationHost/applicationPools/add/failure]
Это помогает?
Вы можете проверить средство просмотра событий, чтобы узнать, записывается ли событие при сбое пула приложений. Вы также можете попробовать установить ограничения на его переработку - это скорее профилактика, чем лечение.
Кроме того, если вы используете ASP.NET, вы можете попробовать отправить себе предупреждение в методах Application_End / Application_Error?