zoukankan      html  css  js  c++  java
  • NLog的使用

    1、在Nuget上安装NLog

         

    2、新建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:	emp
    log-internal.log">
    
     
    
      <!-- optional, add some variables
    
      https://github.com/nlog/NLog/wiki/Configuration-file#variables
    
      -->
    
        <!--
    
      <variable name="myvar" value="myvalue"/>
    
        -->
    
        <variable name="fileFormat"
    
                value="
    
                ${newline}date: ${date}
    
                ${newline}level: ${level}
    
                ${newline}logger: ${logger}
    
                ${newline}machinename: ${machinename}
    
                ${newline}message: ${message}
    
                ${newline}appdomain: ${appdomain}
    
                ${newline}assembly-version: ${assembly-version}
    
                ${newline}basedir: ${basedir}
    
                ${newline}callsite: ${callsite}
    
                ${newline}counter: ${counter}
    
                ${newline}nlogdir: ${nlogdir}
    
                ${newline}processid: ${processid}
    
                ${newline}processname: ${processname}
    
                ${newline}specialfolder: ${specialfolder}
    
                ${newline}stacktrace: ${stacktrace}
    
                ${newline}------------------------------------------------------------" />
    
     
    
      <!--
    
      See https://github.com/nlog/nlog/wiki/Configuration-file
    
      for information on customizing logging rules and outputs.
    
       -->
    
      <targets>
    
     
    
        <!--
    
        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}" />
    
        -->
    
     
    
          <target name="file" xsi:type="File"
    
                fileName="${basedir}/Logs/${date:format=yyyy-MM}/${shortdate}.log"
    
                layout="${fileFormat}"
    
                maxArchiveFiles="5"
    
                archiveAboveSize="10240" />
    
         
    
      </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" />
    
        -->
    
     
    
        <!--
    
            Level    Example
    
            Fatal    Highest level: important stuff down
    
            Error    For example application crashes / exceptions.
    
            Warn    Incorrect behavior but the application can continue
    
            Info    Normal behavior like mail sent, user updated profile etc.
    
            Debug    Executed queries, user authenticated, session expired
    
            Trace    Begin method X, end method X etc
    
        -->
    
        <!--
    
            Logging 水平分为以下等级“Trace<<Debug<<Info<<Warn<<Error<<Fatal ”,如果我们选择Info值,则Trace和Debug等级的信息不会被输出。
    
        -->
    
         <logger name="*" minlevel="Trace" writeTo="file"/>
    
      </rules>
    
    </nlog>

    3、建立Log类

       

    public sealed class Log
    {
        private static NLog.Logger _logger = NLog.LogManager.GetCurrentClassLogger();
    
        private Log() { }
    
        public static void Trace(string strMsg)
        {
            _logger.Trace(strMsg);
        }
    
        public static void Debug(string strMsg)
        {
            _logger.Debug(strMsg);
        }
    
        public static void Info(string strMsg)
        {
            _logger.Info(strMsg);
        }
    
        public static void Warn(string strMsg)
        {
            _logger.Warn(strMsg);
        }
    
        public static void Error(string strMsg)
        {
            _logger.Error(strMsg);
        }
    
        public static void Fatal(string strMsg)
        {
            _logger.Fatal(strMsg);
        }
    
    }

    4、将NLog属性修改为始终复制

  • 相关阅读:
    asp.net基础开发中常用代码大全
    IPv6網絡開發范例
    [轉]现场:是谁在住救灾帐篷者?
    运送救灾物资路上的感人画面纪实
    DataGridView新特色、常用操作
    [ZT]定制自己的Windows CE 5.0 ARM中文模拟器
    LoadRunner参数化功能详解
    [轉]灾区那么大,王十为什么直奔遵道镇,不去别处?
    [理想?夢想?]ERP项目怎么管
    乞讨老人为地震灾区捐款105元(图)
  • 原文地址:https://www.cnblogs.com/wenghan/p/12573319.html
Copyright © 2011-2022 走看看