nlog 相关问题

NLog是.NET的免费日志记录平台

升级到NLog 5,两个目标无法记录到同一个文件

NLog 5 有没有办法让两个 NLog 目标写入同一个日志文件?在 NLog 4.6.8 下是可能的,但在将我的应用程序升级到 NLog 5 后,我发现它不再起作用,至少在...

回答 1 投票 0

删除 NLog.Config 并升级到 NLog 5 后,两个目标无法登录到同一文件

NLog 5 有没有办法让两个 NLog 目标写入同一个日志文件?在 NLog 4.6.8 下是可能的,但在将我的应用程序升级到 NLog 5 后,我发现它不再起作用,至少在...

回答 1 投票 0

nlog .net core 中实际上不是控制器时如何捕获控制器名称?

NLog 可以使用 {aspnet-mvc-controller} 和 {aspnet-mvc-action} 配置选项捕获控制器名称和操作,效果很好。 就我而言,有一个不使用控制器的操作

回答 1 投票 0

Prism Unity 将 NLog 注册为 Microsoft.Extension.Logging.ILogger<T>

我的后端和前端(WPF)之间有一个共享代码,其中后端当前使用与 Microsoft.Extensions.Logging.ILogger 兼容的 NReco.Logging.File。 但在前端,我...

回答 1 投票 0

使用 DI 并使用 appsettings.json 将 Nlog 日志记录到数据库 .NET 5.0

我一直在尝试让 Nlog 将日志记录发送到数据库,但我发现的示例都返回内部 nlog 错误。我在 .NET 5.0 的控制台应用程序中使用依赖项注入...: 信息

回答 2 投票 0

如何在没有事件属性的情况下记录消息

我正在使用 Nlog v4.6.7 并使用以下布局渲染消息(在 Nlog.config 中)。 我正在使用 Nlog v4.6.7 并使用以下布局渲染消息(在 Nlog.config 中)。 <layout xsi:type="JsonLayout" includeAllProperties="true"> <attribute name="timestamp" layout="${date:universalTime=true:format=yyyy-MM-dd HH\:mm\:ss,fff}" /> <attribute name="level" layout="${level}"/> <attribute name="message" layout="${message}" /> </layout> 典型的日志记录是 _logger.Info("Start {job} with {@data}", job, new {a,b,c}); 我使用 includeAllProperties 选项,因为每条消息可能定义不同的属性,并且我无法将它们一一预先包含为布局中的属性。 上面打印的内容类似于: { "timestamp": "2019-09-06 13:13:40,386", "level": "Info", "message": "Start \"SomeJobType\" with {\"a\":\"aa\", \"b\":\"bb\", \"c\":\"cc\"}", "job": "SomeJobType", "data": { "a": "aa", "b": "bb", "c": "cc" } } 有没有办法从事件属性中分离打印的消息?因此, 实现类似 的目标 { "timestamp": "2019-09-06 13:13:40,386", "level": "Info", "message": "Start action", "job": "SomeJobType", "data": { "a": "aa", "b": "bb", "c": "cc" } } ${message:raw=true}没有帮助,因为它打印像这样的占位符 { "timestamp": "2019-09-06 13:13:40,386", "level": "Info", "message": "Start {job} with {@data}", "job": "SomeJobType", "data": { "a": "aa", "b": "bb", "c": "cc" } } 您始终可以这样做: var logger = NLog.LogManager.GetCurrentClassLogger(); var theEvent = new NLog.LogEventInfo(NLog.LogLevel.Info, null, "Start action"); theEvent.Properties["job"] = job; theEvent.Properties["data"] = new {a,b,c}; logger.Log(theEvent); 然后在JsonLayout上配置MaxRecursionLimit=1: <layout xsi:type="JsonLayout" includeAllProperties="true" maxRecursionLimit="1"> <attribute name="timestamp" layout="${date:universalTime=true:format=yyyy-MM-dd HH\:mm\:ss,fff}" /> <attribute name="level" layout="${level}"/> <attribute name="message" layout="${message}" /> </layout> 另请参阅:https://github.com/NLog/NLog/wiki/EventProperties-Layout-Renderer 从您的 nlog.config 文件中删除以下行: <attribute name="message" layout="${message}" /> 然后你可以打印任何你想要的对象,就像这样: _logger.LogInformation("{@myAnonymous}{@myOtherObject}", new { prop1 = "abc", prop2 = 123, nested = { nestedProp = true } }, myAnyTypeOfObject); 您的日志输出将如下所示(JSON 美化视图): { "myAnonymous": { "prop1 ": "abc", "prop2": 123, "nested": { "nestedProp": true } }, "myOtherObject": /*JSON representation of myAnyTypeOfObject object.*/ } 希望这有帮助。

回答 2 投票 0

如何防止在 .NET 6 中使用 NLog 记录某些命名空间

我在 .NET 6 中使用 NLog,它生成日志文件。我希望 NLog 跳过某些日志。例如,我的文件中有这样一行。 2023-08-17 14:00:44 Microsoft.Extensions.Hosting.Int...

回答 1 投票 0

如何覆盖 NLog ≥ v5.0 中内置的 JSON 格式化程序/JSON 转换器?

在我们的项目中,我们有一些类属性需要在记录时进行审查。每个要审查的属性都具有自定义属性;我们称之为 CensorMeAtt...

回答 1 投票 0

无法读取带有点的appsettings.json键

我正在尝试将 appsettings.json 属性访问到 NLog.Config 文件中。我正在 nlog 中编写规则,并使用 configsetting 布局渲染器从 appsettings 访问日志级别。 工作正常...

回答 1 投票 0

如何将 NLog 目标与 Microsoft ILogger 过滤器结合起来?

我们在 .net 5.0 Web API 中使用 NLog,感觉日志级别是在多个位置设置的。有没有一种方法可以配置 nLog 以使用应用程序设置并忽略 nLog.config 日志级别? nlog.c...

回答 1 投票 0

NLog UDP 组播(或广播)

我可以将 NLog 目标设置为具有组播或广播的 UDP 网络吗?如何? 我试图在NLog网站上找到方法,但找不到。 NLog站点 我期望它可以通过目标属性来具体化,例如...

回答 0 投票 0

NLog 生成太多档案

我正在使用这样配置的 NLog: var logfile = new NLog.Targets.FileTarget("logfile") {FileName = Path.Combine(_logDirectory, "myApp.log"), Layout = "${date} [${level}] ${

回答 0 投票 0

如何为 MicrosoftConsoleLayout 配置 TimestampFormat

我正在开发一个 C# 应用程序,使用 NLog 进行日志记录。 我已将 NLog.config 文件添加到我的应用程序中,其中包含控制台日志的以下布局定义: 我正在开发一个 C# 应用程序,使用 NLog 进行日志记录。 我已向我的应用程序添加了一个 NLog.config 文件,其中包含控制台日志的以下布局定义: <target xsi:type="Console" name="lifetimeConsole" layout="${MicrosoftConsoleLayout}" /> 这没问题,但我想添加一个时间戳。 根据此网页,可以向此布局添加时间戳(默认情况下,该参数为null,如同一网页上所述)。 如何修改NLog.config中的目标定义以添加TimestampFormat(最好是${longdate}?(我根本不知道语法) 正如评论中提到的,有 nlog-project.org 这是一个非常好的参考。 例如作为我的配置之一的示例,请参阅 <?xml version="1.0" encoding="utf-8" ?> <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Variable name = "UsedLogLevel" Value = "Info"/> <Variable name = "Logfile" Value = "Logfile"/> <Variable name = "LogfileFolder" Value = "${basedir}"/> <Variable name = "daylyLogging" Value = "1"/> <targets> <target name="logfile" xsi:type="File" fileName="${var:LogfileFolder}/${when:when='${var:daylyLogging}'==1:inner=${shortdate}_}${var:Logfile}.txt" layout="${when:when='${var:daylyLogging}'==1:inner=${time}:else=${date}}|${windows-identity}|${level}|${replace:searchFor=de.inFLOWmation.paperCMD.:replaceWith=:inner=${callsite}}|${message}"/> <target name="logconsole" xsi:type="Console" /> </targets> <rules> <logger name="de.inFLOWmation.paperCMD.*" minlevel="${var:UsedLogLevel}" writeTo="logconsole" /> <logger name="de.inFLOWmation.paperCMD.*" minlevel="${var:UsedLogLevel}" writeTo="logfile" /> </rules> </nlog> 你可以像这样通过c#设置顶部的变量 NLog.LogManager.Configuration.Variables["LogfileFolder"] = @"D:\someFolder; NLog.LogManager.Configuration.Variables["UsedLogLevel"] = "Debug"; NLog.LogManager.ReconfigExistingLoggers(); TimestampFormat MicrosoftConsoleLayout 可以是 DateTime.ToString(format) 接受的任何格式。前任。 ${MicrosoftConsoleLayout:TimestampFormat=o}。 另请参阅:https://learn.microsoft.com/en-us/dotnet/standard/base-types/standard-date-and-time-format-strings

回答 2 投票 0

当我将 nlog 添加到项目中时,VSCode 调试器无法运行 asp.net core 7

当我将nlog配置添加到program.cs文件时,我有一个asp.net core 7项目 项目已运行,但没有任何显示且未打开浏览器! 我不知道我的调试器是否有这个错误 我测试我的

回答 0 投票 0

自定义 NLog AspNetLayoutRenderersBase 无法在 .NET Framework ASP.NET MVC 上运行

背景: 我正在构建由 NLog 支持的日志记录类库。想法是在我们的应用程序中使用这个类库来满足我们的日志记录需求。作为该库的一部分,我们编写了自定义

回答 0 投票 0

NLog - 缩进/漂亮格式的 JSON

我很惊讶我无法找到这个问题的答案,但是我如何让 NLog 以漂亮的格式而不是默认的单行版本编写 JSON 格式的消息? 有没有简单的...

回答 1 投票 0

从 NLog 上传“防弹”日志,具有持久缓冲区

我正在考虑如何完成以下日志系统,仅使用 nlog 和最少的自定义代码: 日志的最终目的地应该是 Azure 存储表。有一个 准备好的目标。 乙...

回答 1 投票 0

如何在asp.net core中设置linux nlog文件夹

我在我的 asp.net core 2.0 应用程序中使用 NLog,我想将它部署到 Ubuntu。我可以找到很多线程和文章,但它们都部署在 Windows 中。 我的 nlog.config 片段看起来像 b...

回答 2 投票 0

Nlog是否支持.NET Framework 6.0?

System.IO.FileNotFoundException HResult=0x80070002 消息=无法加载文件或程序集“NLog,版本=4.0.0.0,文化=中性,PublicKeyToken=5120e14c03d0593c”。系统找不到文件

回答 0 投票 0

创建 Json 对象时反射的性能影响

我有下面的代码来准备 logEventInfo 对象来记录数据。我正在使用 Nlog。我发现使用反射动态添加名称和值很方便。但我知道有一个很大的

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.