我在我的MVC项目中实现了NLog,它记录到了Db。 有建议使用NLog队列。 找到了一些信息here
示例配置显示NLog将如何处理对象的数量:
<?xml version="1.0" ?>
nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<targets>
<!-- Log in a separate thread, possibly queueing up to
5000 messages. When the queue overflows, discard any
extra messages-->
<target name="file" xsi:type="AsyncWrapper" queueLimit="5000" overflowAction="Discard">
<target xsi:type="File" fileName="${basedir}/logs/${level}.txt" />
</target>
</targets>
<rules>
<logger name="*" minlevel="Debug" writeTo="file" />
</rules>
</nlog>
所以我的问题是NLog默认使用MSMQ吗?
答案 0 :(得分:0)
NLog不使用MSMQ。队列在内存中,限制定义队列的最大大小,以避免耗尽整个内存。
溢出操作定义了队列满时应该执行的操作。