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"
      xsi:schemaLocation="http://www.nlog-project.org/schemas/NLog.xsd NLog.xsd"
      autoReload="true"
      throwExceptions="false"
      internalLogLevel="Off" internalLogFile="c:\temp\nlog-internal.log">

	<!-- optional, add some variables
  https://github.com/nlog/NLog/wiki/Configuration-file#variables
  -->
	<variable name="myvar" value="myvalue" />

	<!--
  See https://github.com/nlog/nlog/wiki/Configuration-file
  for information on customizing logging rules and outputs.
   -->
	<targets  async ="true">

		<!--
    add your targets here
    See https://github.com/nlog/NLog/wiki/Targets for possible targets.
    See https://github.com/nlog/NLog/wiki/Layout-Renderers for the possible layout renderers.
    -->

		<!--
    Write events to a file with the date in the filename.
    <target xsi:type="File" name="f" fileName="${basedir}/logs/${shortdate}.log"
            layout="${longdate} ${uppercase:${level}} ${message}" />
    -->

		<!--Type输出类型:
		Console        输出到控制台
		Debugger     输出到VS输出窗口
		File        输出到文件
		Mail        输出为邮件发送
		Network        输出到网络地址
		Database        输出到数据库-->
		<default-target-parameters xsi:type="File" createDirs="true" keepFileOpen="true" autoFlush="false" openFileFlushTimeout="10" openFileCacheTimeout="30" archiveAboveSize="10240"
								   archiveNumbering="Sequence" concurrentWrites="true" encoding="UTF-8" />
		<!-- 输出到文件,这个文件记录错误日志 -->
		<target xsi:type="File" name="Error" fileName="Log\Error\${shortdate}.htm"
				layout="&lt;HR COLOR=red&gt;
				【时间】:${date} &lt;BR&gt;
				【级别】:${level:uppercase=true} &lt;BR&gt;
				【程序集信息】:${callsite:className=True:fileName=True:includeSourcePath=False:methodName=True} &lt;BR&gt;
				【堆栈信息】:${stacktrace}&lt;BR&gt;
				【日志名称】:${logger}&lt;BR&gt;
				【异常信息】:${exception:format=ToString}&lt;BR&gt;
				【异常信息】:${exception}&lt;BR&gt;
				【内容】:${message}&lt;HR Size=1&gt;" />
		<!-- 输出到文件,这个文件记录警告日志 -->
		<target xsi:type="File" name="Warn" fileName="Log\Warn\${shortdate}.htm"
					layout="&lt;HR COLOR=red&gt;
				【时间】:${date} &lt;BR&gt;
				【级别】:${level:uppercase=true} &lt;BR&gt;
				【日志名称】:${logger}&lt;BR&gt;
				【程序集信息】:${callsite:className=True:fileName=True:includeSourcePath=False:methodName=True} &lt;BR&gt;
				【堆栈信息】:${stacktrace}&lt;BR&gt;
				【内容】:${message}&lt;HR Size=1&gt;" />
		<!-- 输出到文件,这个文件记录消息日志 -->
		<target xsi:type="File" name="Info" fileName="Log\Info\${shortdate}.htm"
						layout="&lt;HR COLOR=red&gt;
				【时间】:${date} &lt;BR&gt;
				【级别】:${level:uppercase=true} &lt;BR&gt;
				【日志名称】:${logger}&lt;BR&gt;
				【程序集信息】:${callsite:className=True:fileName=True:includeSourcePath=False:methodName=True} &lt;BR&gt;
				【堆栈信息】:${stacktrace}&lt;BR&gt;
				【内容】:${message}&lt;HR Size=1&gt;" />
		<!-- 输出到文件,这个文件记录操作日志 -->
		<target xsi:type="File" name="Trace" fileName="Log\Trace\${shortdate}.htm"
				layout="&lt;HR COLOR=red&gt;
				【时间】:${date} &lt;BR&gt;
				【级别】:${level:uppercase=true} &lt;BR&gt;
				【日志名称】:${logger}&lt;BR&gt;
				【程序集信息】:${callsite:className=True:fileName=True:includeSourcePath=False:methodName=True} &lt;BR&gt;
				【堆栈信息】:${stacktrace}&lt;BR&gt;
				【内容】:${message}&lt;HR Size=1&gt;" />
		<!--输出到控制台,并添加必要的输出布局(layout)-->
		<target  xsi:type="Debugger" name="Debugger" layout="● ${longdate}  ${level} ${logger} ${stacktrace}${message}" />
		<!--说明:layout指定输出文件内容的样式 ${longdate}是日期(具体到毫秒),${level}是日志的等级;${message}是具体要输出的内容。-->
<!--输出日志到CSV文件-->
		<target name="csv" xsi:type="File" fileName="Log\Csv\${shortdate}.csv">
			<layout xsi:type="CSVLayout">
				<column name="time" layout="${longdate}" />
				<column name="message" layout="${message}" />
				<column name="logger" layout="${logger}" />
				<column name="level" layout="${level}" />
			</layout>
		</target>
	</targets>
	<rules>
		<!-- add your logging rules here -->
		<!--
    Write all events with minimal level of Debug (So Debug, Info, Warn, Error and Fatal, but not Trace)  to "f"
    <logger name="*" minlevel="Debug" writeTo="f" />
    -->
		<!--NLog支持如下几种记录等级:
		1.Trace - 最常见的记录信息,一般用于普通输出
		2.Debug - 同样是记录信息,不过出现的频率要比Trace少一些,一般用来调试程序
		3.Info - 信息类型的消息
		4.Warn - 警告信息,一般用于比较重要的场合
		5.Error - 错误信息
		6.Fatal - 致命异常信息。一般来讲,发生致命异常之后程序将无法继续执行。-->
		<logger name="*" level="Error" writeTo="Error" />
		<logger name="*" level="Warn" writeTo="Warn" />
		<logger name="*" level="Info" writeTo="Info" />
		<logger name="*" level="Trace" writeTo="Trace" />
		<!--将所有记录的信息输出至控制台-->
		<logger name="*"  writeTo="Debugger" />
		<!--<logger name="*" minlevel="Debug" writeTo="Debugger" />
		此处增加了一个minlevel="Warn",规则就变成了将所有记录等级大于等于Warn的等级信息输出至控制台-->
	<logger name="*" minlevel="Debug" writeTo="csv" />
	</rules>
</nlog>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值