zoukankan      html  css  js  c++  java
  • Nlog

    using NLog;
    using NLog.Config;
    using NLog.Targets;
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace ShoppingTools
    {
        public class NlogConfig
        {
            public static void Config()
            {
                // Step 1. Create configuration object 
                var config = new LoggingConfiguration();
    
                var fileTarget = new FileTarget();
                config.AddTarget("file", fileTarget);
                fileTarget.FileName = "${basedir}/file.txt";
                fileTarget.Layout = "${message}";
    
                var fileTarget1 = new FileTarget();
                config.AddTarget("file", fileTarget1);
                fileTarget1.FileName = "${basedir}/Logs/${shortdate}/${shortdate}.txt";
                fileTarget1.Layout = "${longdate}|${event-properties:item=EventId_Id:whenEmpty=0}|${uppercase:${level}}|${logger}|${callsite}:${callsite-linenumber}|${message} ${onexception:${exception:format=message} ${newline} ${stacktrace} ${newline}";
                fileTarget1.ArchiveFileName = "${basedir}/Logs/archives/${shortdate}-{#####}.txt";
                fileTarget1.ArchiveAboveSize = 1024000;
                fileTarget1.ArchiveNumbering = ArchiveNumberingMode.Sequence;
    
                var fileTarget2 = new FileTarget();
                config.AddTarget("file", fileTarget2);
                fileTarget2.FileName = "${basedir}/Logs/${shortdate}/${shortdate}_weixin.txt";
                fileTarget2.Layout = "${longdate}|${event-properties:item=EventId_Id:whenEmpty=0}|${uppercase:${level}}|${logger}|${callsite}:${callsite-linenumber}|${message} ${onexception:${exception:format=message} ${newline} ${stacktrace} ${newline}";
                fileTarget2.ArchiveFileName = "${basedir}/Logs/archives/${shortdate}_weixin-{#####}.txt";
                fileTarget2.ArchiveAboveSize = 1024000;//字节
                fileTarget2.ArchiveNumbering = ArchiveNumberingMode.Sequence;
    
          
                config.LoggingRules.Add(new LoggingRule(NlogLogger.Common_File.ToString(), LogLevel.Debug, fileTarget));
    
                config.LoggingRules.Add(new LoggingRule(NlogLogger.Log.ToString(), LogLevel.Debug, fileTarget1));
    
                config.LoggingRules.Add(new LoggingRule(NlogLogger.WeiXin.ToString(), LogLevel.Debug, fileTarget2));
    
    
                LogManager.Configuration = config;
    
    
                NLog.LogManager.GetLogger(NlogLogger.Log.ToString()).Debug("Hello,Nlog~~~~");
                NLog.LogManager.GetLogger(NlogLogger.WeiXin.ToString()).Debug("Hello,Nlog~~~~");
            }
           public enum NlogLogger
            {
                Common_File,
                Log,
                WeiXin
    
            }
        }
    
    }
  • 相关阅读:
    php7 & lua 压测对比
    .NET CORE——Console中使用依赖注入
    EntityFramework Core 自动绑定模型映射
    月末总结与推书
    Dapper连接与事务的简单封装
    EntityFramework Core 学习扫盲
    从输入url到页面返回到底发生了什么
    [译]C#和.NET中的字符串
    利用C#迭代器的一个杨辉三角示例
    用 dotTrace 进行性能分析时,各种不同性能分析选项的含义和用途
  • 原文地址:https://www.cnblogs.com/wangyinlon/p/14260556.html
Copyright © 2011-2022 走看看