在 .Net Core 2.2 Api 中扩展 IIS 日志

Posted

技术标签:

【中文标题】在 .Net Core 2.2 Api 中扩展 IIS 日志【英文标题】:Extend IIS logs in .Net Core 2.2 Api 【发布时间】:2019-06-26 20:13:21 【问题描述】:

我正在将内容从我的 ASP.Net MVC 应用程序 (.Net Framework 4.7) 转移到新的 .Net Core 2.2 API。

在我的旧 MVC 应用程序中,我通过 HttpResponseBase.AppendToLog() 在 IIS 日志中添加了一些特定的 POST 属性。我在 .Net Core 中找不到类似的方法。

我的问题:如何将 HttpPost 中的属性添加到 .Net Core Api 中的 IIS 日志中?日志如下所示:

2019-06-26 19:34:07 website-ip-address POST /some-endpoint [data-to-log-ended-here] 443 username ip-address etc.

【问题讨论】:

【参考方案1】:

我没有直接回答您的问题,但我发现了两篇可能与您的问题相关的帖子

How to log http POST data to IIS log in asp.net core Where do logs go when running ASP.NET Core on IIS 7.5?

通常,在 Asp.net Core 应用程序中,更常见的是使用其logging API 与强大的第 3 方日志库(如Serilog)一起使用,以便轻松登录到您可以选择的多个different sources。尽管 IIS 不是其中之一,但我建议您查看 Application Insights,它在登录 Asp.net Core 应用程序时非常流行。希望这会有所帮助!

【讨论】:

谢谢!我知道日志记录 API。对于这个小项目,拥有 1 个日志更容易,而 IIS 日志是一个完美的地方。我会看看另一个案例,然后告诉你结果如何!

以上是关于在 .Net Core 2.2 Api 中扩展 IIS 日志的主要内容,如果未能解决你的问题,请参考以下文章

将项目从 2.2 更新到 3.1(缺少程序集)或如何在 .NET Core 中使用 API POST 请求时,PostAsJsonAsync()在 .Net Core 3.1 中不起作用 [重复]

使用Http-Repl工具测试ASP.NET Core 2.2中的Web Api项目

.Net Core 2.2 项目部署到IIS

从 .NET Core 2.2 迁移到 3.1 后,EF Core 随机抓取 API 请求上的用户表

无法从 NET Core 2.2 Web API 连接到 docker sql server

在 .Net Core 2.2 中将 HttpResponseMessage 作为 IActionResult 返回的正确方法