使用NLog填充SQLDB中预先存在的日志表

时间:2018-07-26 23:09:22

标签: nlog

我一直在进行大量搜索,结果空白。我的研究表明,我可以使用NLog将日志记录到DB,但这始终涉及使用特定列和存储过程创建新表。

我大约有10个不同的系统,每个系统都有自己的自定义生成日志功能和数据库表。我想要做的是用NLog替换我们当前的自定义生成日志记录逻辑。但是我需要NLog,然后使用现有的表和架构存储日志。我无法以任何方式修改日志表,因为它们已紧密绑定到我此时可以更改的其他功能。因此,我需要NLog使其符合我的日志表架构。

使用NLog甚至可以做到吗?

任何细节将不胜感激。

1 个答案:

答案 0 :(得分:1)

https://github.com/nlog/NLog/wiki/Database-target

您的配置如下所示:

result = [a for s in [[contact for contact in contacts if user['username'] == contact['username']] or [user] for user in users] for a in s]

<target name="db" xsi:type="Database" connectionStringName="NLogConn" commandText="INSERT INTO MyExistingTable (FieldA, FieldB, FieldC) VALUES (@a, @b, @c)"> <parameter name="@a" layout="${machinename}" /> <parameter name="@b" layout="${date}" /> <parameter name="@c" layout="${exception:tostring}" /> </target> https://github.com/nlog/nlog/wiki/Layout-Renderers中的任何内容或其组合。您还可以通过添加具有不同名称的不同目标来定义多个架构。