我们使用NLog或Serilog来做记录。我们正忙于将一个系统从ASP.NET移植到ASP.NET Core,其中has logging built in。ASP.NET Core的内置日志记录是否会使NLog/Serilog/etc过时?
理想情况下,我们希望放弃NLog,因为它似乎不再需要它了。
但是,内置的日志记录等效于NLog吗?它是否缺少任何主要功能?有没有继续使用NLog(或类似Serilog等)的意义?
我们使用NLog或Serilog来做记录。我们正忙于将一个系统从ASP.NET移植到ASP.NET Core,其中has logging built in。ASP.NET Core的内置日志记录是否会使NLog/Serilog/etc过时?
理想情况下,我们希望放弃NLog,因为它似乎不再需要它了。
但是,内置的日志记录等效于NLog吗?它是否缺少任何主要功能?有没有继续使用NLog(或类似Serilog等)的意义?
asp.net日志记录是一种常见的(日志记录)接口和日志实现。
您可以将通用接口和第三方库(例如NLog)一起使用,因为基础结构已为此准备好了。
如果你把NLOG通过内置的日志实现你赢:
${processid}
但一如既往,如果你不需要这些功能,那么也许以下(库)为多。
我不会说ASP.NET Core的日志API会让NLog和其他提供程序过时。 ASP.NET Core提供的是一个很好的抽象,因此日志框架可以在不更改依赖于日志记录的代码的情况下进行切换。
Nlog仍然提供有用的configuration features,它们不在ASP.NET Core日志API中实现。
是NLog通过xml文件的配置很有用。尽管可以在ASP.NET Core配置框架中轻松完成。我想知道是否有足够的理由保留NLog。 – grokky
那么我想这完全取决于你的要求。如果ASP.NET日志API足够适用于您 - 请使用它。请记住,如果你想记录到文本文件,不仅要控制台,你将不得不使用一些日志记录提供程序。 Serilog具有将日志转发到文本文件的简单配置。 – Andrius
没有意识到它[不记录到磁盘](https://docs.microsoft.com/en-us/aspnet/core/fundamentals/logging#built-in-logging-providers)。这是一个主要的缺失功能! – grokky
从NLog或ASP.NET Core中缺少异步记录吗? – grokky
Aspnet核心。转述:) – Julian
关于“即时更改配置(运行应用程序时无需重新启动)” - >部分ASP。NET Core的记录器也支持这个功能!但是NLog总体来说绝对是更有魅力的! – Eilon