【发布时间】:2013-02-26 20:28:35
【问题描述】:
我将以下代码放在全局文件中以在我的 mvc 应用程序中捕获异常:
void Application_Error(Object sender, EventArgs e)
{
Exception ex = Server.GetLastError().GetBaseException();
log.Error("Exception", ex);
}
以及以下内容以跟踪调用的控制器:
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
if (log.IsDebugEnabled)
{
var loggingWatch = Stopwatch.StartNew();
filterContext.HttpContext.Items.Add(StopwatchKey, loggingWatch);
var message = new StringBuilder();
message.Append(string.Format("Executing controller: {0}, action: {1}",
filterContext.ActionDescriptor.ControllerDescriptor.ControllerName,
filterContext.ActionDescriptor.ActionName));
log.Debug(message);
}
}
我还能做些什么来捕获涉及 db、安全性(例如无法连接到 ldap)、数据问题/转换等的错误吗?
【问题讨论】:
-
只是想知道如何在 DAL 和辅助类中处理日志记录?
标签: asp.net-mvc-3 logging exception-handling log4net