如何为 Asp.NET MVC 应用程序设置 log4net

发布于 2024-08-08 15:13:17 字数 132 浏览 5 评论 0原文

我们有第一个 MVC 应用程序,我想知道那里有什么特殊的考虑因素。在常规的 Web 表单应用程序中,我们几乎只是使用 try catch 块将事件包装在页面后面的代码上。但就助手、控制器、路由等而言,mvc 似乎不太清楚。我应该在哪里确保有日志记录。

We have a fist MVC application and I am wandering what special considerations there. In the regular web forms applications we pretty much just wrap events on code behind pages with try catch blocks. But it seems less clear with mvc as far as helpers, controllers, routes, etc. Where should I make sure there is logging.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

懒的傷心 2024-08-15 15:13:17

通常,您会在控制器操作中应用日志记录。您还可以从 HandleError 属性派生来添加错误日志记录,以及创建自定义操作/结果过滤器以自动执行某些类型的日志记录。使用这样的过滤器,您可以将其应用到基本控制器,并对所有操作进行一些基本的使用日志记录/检测。

如果您使用控制器工厂、操作调用程序或模型绑定器自定义框架,您也可以在那里应用日志记录。当然,这与如何将日志记录应用到实际模型(域对象、外部服务、持久性和数据库、安全性等)无关。

Typically you would apply logging in your controller actions. You can also derive from the HandleError attribute to add error logging, as well as create custom action/result filters to automate certain types of logging. With such a filter, you can apply this to your base controller and have some basic usage logging/instrumentation for all actions.

If you customize the framework with controller factories, action invokers, or model binders, you might apply logging there as well. Of course, this is nothing to say of how to apply logging to your actual Model (domain objects, external services, persistence and database, security etc).

旧城烟雨 2024-08-15 15:13:17

在您的 Global.asax.cs 文件中:

protected void Application_Error(object sender, EventArgs e)
{
    _logger.Error("Unhandled exception", Server.GetLastError());
}

In your Global.asax.cs file:

protected void Application_Error(object sender, EventArgs e)
{
    _logger.Error("Unhandled exception", Server.GetLastError());
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文