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
    
            }
        }
    
    }
  • 相关阅读:
    2020-2021:时间戳
    全链路压测落地和演进之路
    Socket粘包问题的3种解决方案,最后一种最完美!
    MySQL为Null会导致5个问题,个个致命!
    Maven中pom.xml的packaging类型
    mysql 二进制数据查询
    编写 Dockerfile 生成自定义镜像
    Python自动提取生成博客园年度报告
    [C#] 使用 Excel 和 Math.Net 进行曲线拟合和数据预测
    干货!亲子教育的6个阶段,不妨对照看看,你正处在哪一个阶段?
  • 原文地址:https://www.cnblogs.com/wangyinlon/p/14260556.html
Copyright © 2011-2022 走看看