我根据使用这两个软件包的https://github.com/NLog/NLog.Web/wiki/Getting-started-with-ASP.NET-Core-2实现了带有.NET Core 2的NLog:
日志记录工作正常,但现在我想添加Event Properties,Log()函数不接受LogEventInfo作为参数。
任何想法都会有所帮助。提前谢谢。
答案 0 :(得分:0)
使用ASP.NET Core时,有两个使用NLog的选项。
您可以使用Microsoft.Extensions.Logging(MEL),Microsoft引入了日志记录抽象。然后,您将无法使用NLog类型,例如LogEventInfo
,因为日志记录抽象不知道NLog。
为此,您需要包装NLog.Web.AspNetCore。查看设置:Use NLog in ASP.NET Core application
另一种选择是直接使用NLog,因此可以使用NLog中的LogManager
。然后,您可以使用LogEventInfo
。
另请参阅Microsoft.Extensions.Logging Vs. NLog
您还可以使用MEL-ILoggerProvider添加自定义LogEvent属性(不直接使用NLog LogEventInfo):