目前,在我们所有的环境中,我们都打开了 healthmonitoring 以在用户导致错误时提醒我们:
<healthMonitoring enabled="true">
<providers>
<add name="MailWebEventProvider" type="System.Web.Management.SimpleMailWebEventProvider" to="email@addr.com" from="email@addr.com" buffer="false" subjectPrefix="prefix: "/>
</providers>
<rules>
<add name="All errors from my site" eventName="All Errors" provider="MailWebEventProvider" profile="Critical"/>
</rules>
</healthMonitoring>
我们最近开始实现更多的 AJAX 功能,我刚刚意识到在部分页面更新期间抛出的任何错误都不会触发 healthmonitor 发送电子邮件。用户获取默认的 alert() 消息框;但是,服务器端没有任何内容。
有谁知道如何打开这个?我不确定我缺少什么设置
编辑
我看到 ScriptManager 控件有一个名为“AsyncPostBackError”的事件。如果我抓住它并执行“抛出 e.Exception”,它将触发运行状况监视器;但是,它会删除用户看到的错误。有谁知道如何在不抛出这样的错误的情况下启动健康监视器?