Comment forcer nlog à lancer une exception lorsque la connexion à la base de données échoue?
Lorsque je prendre vers le bas de la base de données que le dos nlog, rien ne peut se connecté et il semble NLog avale le problème. Est-il possible de le configurer afin de sensibiliser et d'exception ou tout au moins de journal dans un fichier texte que l'enregistrement a échoué?
Voici ce que ma configuration est:
<?xml version="1.0" ?>
<nlog autoReload="true" throwExceptions="true" internalLogFile="${basedir}/App_Data/nlog.txt" internalLogLevel="Debug"
internalLogToConsole="true">
<targets>
<!--Useful for debugging-->
<target name="consolelog" type="ColoredConsole"
layout="${date:format=HH\:mm\:ss}|${level}|${stacktrace}|${message}" />
<target name="databaselog" type="Database">
<dbProvider>System.Data.SqlClient</dbProvider>
<!-- database connection parameters -->
<!-- alternatively you could provide a single 'connectionstring' parameter -->
<connectionString>Data Source=.\SQLEXPRESSZ;Initial Catalog=aspnetdb;Integrated Security=SSPI</connectionString>
<commandText>
insert into NLog_Error ([time_stamp],[level],[host],[type],[source],[logger],[message],[stacktrace],[allxml]) values(@time_stamp,@level,@host,@type,@source,@logger,@message,@stacktrace,@allxml);
</commandText>
<parameter name="@time_stamp" layout="${utc_date}" />
<parameter name="@level" layout="${level}" />
<parameter name="@host" layout="${machinename}" />
<parameter name="@type" layout="${exception:format=type}" />
<parameter name="@source" layout="${callsite:className=true:fileName=false:includeSourcePath=false:methodName=false}" />
<parameter name="@logger" layout="${logger}" />
<parameter name="@message" layout="${message}" />
<parameter name="@stacktrace" layout="${exception:stacktrace}" />
<parameter name="@allxml" layout="${web_variables}" />
</target>
</targets>
<rules>
<logger name="*" minlevel="Info" writeTo="databaselog" />
</rules>
</nlog>
source d'informationauteur m0s
Vous devez vous connecter pour publier un commentaire.
Vous pouvez forcer Nlog à jeter l'exception lorsque sql server n'est pas atteint par la suite
Plus d'info ici,
http://nlog-project.org/2010/09/05/new-exception-handling-rules-in-nlog-2-0.html
C'est une nouvelle fonctionnalité dans la v2.0 de sorte que vous besoin de v2.0.
Il ne fonctionnera pas dans les versions antérieures.
Également la caisse de configuration suivantes info
https://github.com/NLog/NLog/wiki/Logging-Troubleshooting
qui permet Nlog connecter ses propres exceptions dans un fichier spécifié.