zoukankan      html  css  js  c++  java
  • log4net在.NET Core项目中使用案例

    1、新建一个 .NET Core 项目,选择控制台应用程序,名称TestNetCore。

    2、使用Nuget程序管理器,添加log4net

    3、添加log4net.config,内容如下

    <?xml version="1.0" encoding="utf-8"?>
    <!--注意:如果是在aspnetcore中使用的话,在log4net.config就不需要添加configuration标签了,可以参考TestNetCore的AddLog4Net-->
    <configuration>
      <log4net>
        <appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
          <layout type="log4net.Layout.PatternLayout" value="%date [%thread] %-5level %logger - %message%newline" />
        </appender>
        <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
          <param name="File" value="LogLog.txt" />
          <param name="AppendToFile" value="true" />
          <param name="MaxSizeRollBackups" value="100" />
          <param name="MaximumFileSize" value="2MB" />
          <param name="RollingStyle" value="Size" />
          <param name="StaticLogFileName" value="true" />
          <layout type="log4net.Layout.PatternLayout">
            <param name="ConversionPattern" value="%-15p %d [%c] %m%n" />
          </layout>
        </appender>
        <root>
          <!--<level value="off" />-->
          <!--<level value="Fatal" />-->
          <!--<level value="error" />-->
          <!--<level value="Warn" />-->
          <!--<level value="Info" />-->
          <level value="Debug" />
          <!--<level value="all" />-->
          <appender-ref ref="ConsoleAppender" />
          <appender-ref ref="RollingLogFileAppender" />
        </root>
      </log4net>  
    </configuration>

    注意:要把log4net.config属性设置成复制到输出目录

    4、Program中添加如下

    using Microsoft.EntityFrameworkCore;
    using Microsoft.EntityFrameworkCore.Metadata.Builders;
    using System;
    using Microsoft.Extensions.Logging;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text.RegularExpressions;
    using System.Globalization;
    using System.Reflection;
    using log4net;
    using System.IO;
    using log4net.Repository;
    using log4net.Config;
    
    namespace TestNetCore
    {
        internal class Program
        {
            //public static log4net.ILog Log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
            static void Main(string[] args)
            {
                ILoggerRepository loggerRepository = LogManager.CreateRepository("TestNetCore");
                //默认配置,这个只输出到控制台,并且这个不需要log4net.config文件
                //BasicConfigurator.Configure(loggerRepository);
                //指定配置文件
                XmlConfigurator.Configure(loggerRepository, new FileInfo("log4net.config"));
    
                ILog Log = LogManager.GetLogger(loggerRepository.Name, typeof(Program));
                Log.Fatal("Fatal");
                Log.Error("Error");
                Log.Warn("Warn");
                Log.Info("Info");
                Log.Debug("Debug");
                Console.ReadLine();
            }
       }
    }

    5、运行效果

  • 相关阅读:
    java swing学习
    JCheckBox相关知识点
    【python 第五日】 函数闭包与装饰器
    【python第四日】 文件处理 生成器 迭代器
    【Python3 第三日】%和format格式化输出 函数
    【python第二日】运算符 数据类型(数字 字符串 列表 元组 字典 集合) 重新定义比较大小
    怎么设置博客园样式
    【python】第一日 python2和python3区别 命名方式 三种结构
    mybatis-generator.xml
    SpringBoot集成mybatis和mybatis generator
  • 原文地址:https://www.cnblogs.com/1175429393wljblog/p/12690987.html
Copyright © 2011-2022 走看看