如何使用Elmah.Contrib.WebApi 1.0.9?

时间:2015-04-30 10:25:06

标签: asp.net-web-api asp.net-web-api2 elmah

我正在开发WEB API项目。我想实现全局错误处理,我选择了ELMAH。

在google搜索中,我发现我可以使用Elmah.Contrib.WebApi包在WEB API中实现ELMAH。

所以我安装了包Elmah.Contrib.WebApi并在author's github site中写了我注册了​​它。

所以我的global.asax看起来像是跟随。

 protected void Application_Start()
    {
        GlobalConfiguration.Configure(WebApiConfig.Register);
        GlobalConfiguration.Configuration.Filters.Add(new ElmahHandleErrorApiAttribute());
        GlobalConfiguration.Configuration.MessageHandlers.Add(new MessageLoggingHandler());

    }

但它似乎不起作用。我还试图找到有关如何在项目中实现此包但无法找到它的文档。

有人可以帮助我,这样我可以得到那些有用的工作吗?

1 个答案:

答案 0 :(得分:4)

如果您使用的是 Web API 2 ,则应使用新的异常记录器:

public static class WebApiConfig
{
    public static void Register(HttpConfiguration config)
    {
        ...
        config.Services.Add(typeof(IExceptionLogger), new ElmahExceptionLogger());
        ...
    }
}

此帖还显示:

http://blog.elmah.io/logging-to-elmah-io-from-web-api/

(如果您使用的是其他日志存储,则不包含elmah.io包)