У меня есть следующая цель в файле nlog.config
<?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" autoReload="true">
<extensions>
<add assembly="NLog.Web.AspNetCore"/>
</extensions>
<targets>
<target name="dbTarget"
xsi:type="Database"
connectionString="Server=SERVER;Database=Log;Trusted_Connection=True;"
commandText="INSERT INTO Logs(LogTime, LogLevel, Message) VALUES (@LogTime, @LogLevel, @Message);">
<!-- Parameters to log -->
<parameter name="@LogTime" layout="${longdate}"/>
<parameter name="@LogLevel" layout="${level}"/>
<parameter name="@Message" layout="${message}"/>
</target>
</targets>
<rules>
<logger name="dbLogger" minlevel="Trace" writeTo="dbTarget" />
</rules>
</nlog>
В коде я получаю свой логгер вот так.
var logger = NLogBuilder.ConfigureNLog("nlog.config").GetLogger("dbLogger");
Но это не работает.Если я добавляю правило файла, оно записывается в файл, поэтому я предполагаю, что моя конфигурация dbTarget неверна.