예제 #1
0
        ///// <summary>
        ///// 排除 Elmah 404 寄信通知
        ///// </summary>
        //public void ErrorMail_Filtering(object sender, ExceptionFilterEventArgs e)
        //{
        //    var httpException = e.Exception as HttpException;
        //    if (httpException != null && (httpException.GetHttpCode() == 404 || httpException.Message.StartsWith("A potentially dangerous Request.Path value was detected from the client")))
        //    {
        //        e.Dismiss();
        //    }
        //}


        /// <summary>
        /// 自定 Elmah 發信主旨
        /// </summary>
        void ErrorMail_Mailing(object sender, Elmah.ErrorMailEventArgs e)
        {
            string machineName = "none server";

            try
            {
                if (Request != null)
                {
                    machineName = Request.ServerVariables["HTTP_HOST"];
                }
            }
            catch (Exception)
            {
                //throw;
            }

            // 取得 Elamh ErrorMail 的主旨
            // "$MachineName$ at $ErrorTime$ : {0}"

            string elmahSubject = e.Mail.Subject;
            //替換 ErrorMail 的主旨內容
            string emailSubject = string.Format("BigZata Error => {0}",
                                                elmahSubject
                                                .Replace("$MachineName$", machineName)
                                                );

            e.Mail.Subject = emailSubject;
        }
예제 #2
0
        void ErrorMail_Mailing(object sender, Elmah.ErrorMailEventArgs e)
        {
            var exception = e.Error.Exception;

            if (exception is NotImplementedException)
            {
                e.Mail.Priority = System.Net.Mail.MailPriority.High;
                e.Mail.Subject  = "ELMAH - Error 高度警示";
            }
        }
예제 #3
0
        // elmah : 自訂郵件標題
        void ErrorMail_Mailling(object sender, Elmah.ErrorMailEventArgs e)
        {
            var exception = e.Error.Exception;

            // 加入自訂主題與成員
            if (exception is NotImplementedException)
            {
                e.Mail.Priority = System.Net.Mail.MailPriority.High;
                e.Mail.Subject  = "偷懶未實作 Action被執行了";
                //e.Mail.CC.Add("*****@*****.**");
            }
        }
예제 #4
0
        void ErrorMail_Mailing(object sender, Elmah.ErrorMailEventArgs e)
        {
            string machineName     = Request.ServerVariables["HTTP_HOST"];
            string currentDateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
            // 取得 Elamh ErrorMail 的主旨
            // "$MachineName$ at $ErrorTime$ : {0}"
            string elmahSubject = e.Mail.Subject;
            //替換 ErrorMail 的主旨內容
            string emailSubject = elmahSubject
                                  .Replace("$MachineName$", machineName)
                                  .Replace("$ErrorTime$", currentDateTime)
            ;

            e.Mail.Subject = emailSubject;
        }
예제 #5
0
        void ErrorMail_Mailing(object sender, Elmah.ErrorMailEventArgs e)
        {
            string machineName = "Server-Localhost";

            string systemName = "Workshop";

            //subject="$MachineName$ ($SystemName$) at $ErrorTime$ : {0}"
            string elmahSubject = e.Mail.Subject;

            string emailSubject = string.Format("ELMAH 錯誤記錄 => {0}",
                                                elmahSubject
                                                .Replace("$MachineName$", machineName)
                                                .Replace("$SystemName$", systemName)
                                                .Replace("$ErrorTime$", DateTime.Now.ToString("yyyy/MM/dd HH:mm"))
                                                );

            e.Mail.Subject = emailSubject;
        }