NLog数据库参数+ .NET Core:JSON中的所有事件属性?

问题描述

我正在使用数据库目标,并试图找到一种方法来发送all-event-properties作为JSON格式的参数;我看到该参数包含“格式”的属性,但是当我执行format="json"时,不会产生预期的效果

这是我的nlog.config文件中的内容

<target name="database">
    <parameter name="@properties" layout="${all-event-properties}" format="json" />
</target>

不幸的是,我的属性仍以以下格式记录

property1=property1,property2=property2,property3=property3

我希望看到的是

{
    "property1": "property1","property2": "property2","property3": "property3"
}

请告知。谢谢!

解决方法

您可以这样做:

<target name="database" type="database">
    <parameter name="@properties">
        <layout type="JsonLayout" includeAllProperties="true" maxRecursionLimit="1" escapeForwardSlash="false" />
    </parameter>
</target>

另请参阅:https://github.com/nlog/nlog/wiki/JsonLayout

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...