Приложение записывало исключения в текстовый файл. Но мы решили использовать базу данных для регистрации, потому что файл может скоро стать громоздким. Я не знаю, как войти в БД. поэтому я следовал учебнику https://www.programmingwithwolfgang.com/asp-net-core-logging-to-a-database-with-nlog/ онлайн, все прошло нормально, пока я не запустил приложение, затем я получил эту ошибку HTTP Error 500.30 - ANCM In-Process Start Failure
Каждый раз, когда я удаляю файл nlog.config, приложение начнется нормально. Когда я верну его обратно, ошибка вернется. Эта ошибка похожа на кошмарный
файл 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"
throwConfigExceptions="true"
internalLogLevel="info"
internalLogFile="c:\temp\internal-nlog.txt">
<extensions>
<add assembly="NLog.Web.AspNetCore"/>
</extensions>
<targets>
<target name="database" xsi:type="Database" connectionString="${appsettings:name=ConnectionStrings.DefaultConnection}">
<commandText>
insert into dbo.WebLog (
Application, Logged, Level, Message,
Logger, CallSite, Exception
) values (
@Application, @Logged, @Level, @Message,
@Logger, @Callsite, @Exception
);
</commandText>
<parameter name="@application" layout="AspNetCoreNlog" />
<parameter name="@logged" layout="${date}" />
<parameter name="@level" layout="${level}" />
<parameter name="@message" layout="${message}" />
<parameter name="@logger" layout="${logger}" />
<parameter name="@callSite" layout="${callsite:filename=true}" />
<parameter name="@exception" layout="${exception:tostring}" />
</target>
</targets>
<rules>
<logger name="*" minlevel="Info" writeTo="database" />
</rules>
</nlog>