Reputation: 11
Basically what i'm trying to do is include the logger name in my database write:
<rules><logger name="**LogEntry**" minlevel="Trace" writeTo="apiLog" final="true" /></rules>
this is the code i'm using to call my SPROC to write to the database:
<!-- database target -->
<target name="apiLog"
xsi:type="Database"
connectionStringName="NLog"
commandText="exec dbo.InsertApiLog
@level,
@name,
@callSite,
@type,
@message,
@stackTrace,
@innerException,
@additionalInfo">
<parameter name="@level" layout="${level}" />
<parameter name="@name" layout="${DisplayName}" />
<parameter name="@callSite" layout="${callsite}" />
<parameter name="@type" layout="${exception:format=type}" />
<parameter name="@message" layout="${exception:format=message}" />
<parameter name="@stackTrace" layout="${exception:format=stackTrace}" />
<parameter name="@innerException"
layout="${exception:format=:innerFormat=ShortType,Message,Method:MaxInnerExceptionLevel=1:InnerExceptionSeparator=}" />
<parameter name="@additionalInfo" layout="${message}" />
</target>
How can i adjust the @name parameter to pull the logger Name property from my rules member?
Additionally, is there a good source that lists out all the parameter layouts available to me for error storage? I'm referring to this part of my data store ref:
<parameter name="@type" **layout="${exception:format=type}**" />
Many thanks in advance!
Upvotes: 0
Views: 93
Reputation: 36750
For the logger name you could use ${logger}
All layout renderer are listed here: https://nlog-project.org/config/?tab=layout-renderers. You can click on the layout renderer there for their options.
Upvotes: 1