用于 asp.net 核心的 ELMAH

Posted

技术标签:

【中文标题】用于 asp.net 核心的 ELMAH【英文标题】:ELMAH for asp.net core 【发布时间】:2017-12-23 22:53:06 【问题描述】:

我正在开发托管在 azure 上的 asp.net core webapp,我想将我的 Elmah 日志写入我的 azure 表存储。我研究的许多示例都使用“API_KEY”和“logbucketId”,但我不确定它们是什么。 例如这里的 elmah 文档 [https://docs.elmah.io/logging-to-elmah-io-from-aspnet-core/]

app.UseElmahIo(
    "API_KEY", 
    new Guid("LOG_ID"),

安装 nuget 包后,我的 appsettings.json 文件中没有看到任何 API_KEY 或 LogBucketId。

在哪里可以找到我的 API_KEY 和 LogBucket_Id ?

【问题讨论】:

【参考方案1】:

https://github.com/ElmahCore/ElmahCore 现在支持.net core

不是基于ModulesHandlers,而是Middleware

它工作正常,但仍然有限。

目前未使用async 呼叫。但它的扩展性很强。

【讨论】:

【参考方案2】:

ELMAH 不适用于 ASP.NET Core,因为 ASP.NET Core 不适用于 HttpModules 和 HttpHandlers(ELMAH 代表错误记录模块和处理程序)。 ASP.NET Core 确实包含一个新的(预发布)诊断工具,称为 ELM(错误记录中间件 - 有创意,对吗?)。你可以在这里找到它的源代码和示例: https://github.com/aspnet/Diagnostics/tree/release/1.1/src/Microsoft.AspNetCore.Diagnostics.Elm

另一个类似于 ELMAH(和 ELM)但具有更多功能的选项是 Glimpse: http://getglimpse.com/

我意识到这些都不能直接回答您的问题,但希望您会发现这些替代工具中的一个或两个有用。

【讨论】:

仅供参考,两个链接都已关闭 不确定 Glimpse 发生了什么,但你可以在这里找到 Elm 的东西:github.com/aspnet/Diagnostics/tree/release/1.1/src/… 谢谢,会检查一下。【参考方案3】:

您可以检查 ELMAH 端口到 Net.Core 版本

https://github.com/ElmahCore/ElmahCore

在使用它之前,请确保它符合您的期望。

注意:这个新扩展正在开发中,不支持 Elmah 的所有功能。

【讨论】:

【参考方案4】:

ELMAH 不支持 ASP.NET Core。您链接到的文档来自elmah.io。虽然它们具有相似的名称,并且 elmah.io 使用 ELMAH 进行一些集成,但它们不共享代码或文档。

【讨论】:

以上是关于用于 asp.net 核心的 ELMAH的主要内容,如果未能解决你的问题,请参考以下文章

Missed User 属性,用于计算 asp.net 核心身份中的用户/角色数

RedirectToAction 不适用于 Tempdata - ASP.net 核心 MVC

用于 asp.net 核心的 Service Fabric 中 docker 中的 HTTPS 不起作用

用于 asp.net 核心应用程序的 ngrok 和 https 隧道

用于 asp.net 核心应用程序生产的红隼准备好了吗?

核心ASP.NET