我在APPLICATION_START上产生了一个线程,并希望记录异常.没有Context/HttpContext/HttpContext.Current,我怎么才能把它记入日志(log)呢?

目前,它没有在我的线程中捕获任何异常,如果我写ErrorSignal.FromCurrentContext().Raise(ex);,我会得到一个关于上下文不能为空的错误.

也许我可以创建一个虚拟的HttpContext,但不知何故,我认为这不会很好地工作.

我试了ErrorSignal.Get(new HttpApplication()).Raise(ex);次,但它似乎没有接收到这一例外.

推荐答案

确保在web中设置应用程序名称.配置

<errorLog type="Elmah.SqlErrorLog, Elmah" 
          connectionStringName="nibWeb" 
          applicationName="Nib.Services" />

然后

ErrorLog.GetDefault(null).Log(new Error(error));

会有用的

Asp.net相关问答推荐

在Docker Windows中,ASP.NET核心容器在自定义端口8080上运行,但ASP.NET容器在固定端口80上运行

在具有多个项目(API/服务/数据等)的解决方案中编写 SignalR 服务的最佳方法是什么?

如何在 ASP.Net Core 中验证上传的文件

C# ASP.NET Core Serilog 添加类名和方法到日志(log)

在 DataTextField 中组合两个字段.这可能吗?

业务逻辑中的实体框架最佳实践?

由于缺少定义,在 .net Core 应用程序上构建失败

ASP.NET MVC4 异步控制器 - 为什么要使用?

如何设置默认页面 asp.net

如何在 IIS 7.5 上使用 ASP.NET 表单身份验证保护静态文件?

如何在 ASP.NET 站点中添加 favicon.ico

单击按钮时播放哔声

如何使用 ASP.NET 和 jQuery 返回 JSON

ASP.NET 元:资源键

如何获取部署在 Azure 网站上的 ASP.NET 5 应用程序的错误详细信息?

ASP.NET 按钮重定向到另一个页面

ASP.NET 发布try 复制不存在的文件

如何告诉 RadioButtonList 不生成表格

URL 路由、图像处理程序和潜在危险的 Request.Path 值

配置授权服务器端点