zoukankan      html  css  js  c++  java
  • .net core控制台使用log4net

    第一步,Nuget log4net包

    第二步,在项目中添加一个config文件,用于log4net的配置

    <?xml version="1.0" encoding="utf-8" ?>
    <log4net>
      <!-- Define some output appenders -->
      <appender name="rollingAppender" type="log4net.Appender.RollingFileAppender">
        <file value="loglog.txt" />
    
        <!--追加日志内容-->
        <appendToFile value="true" />
    
        <!--防止多线程时不能写Log,官方说线程非安全-->
        <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
    
        <!--可以为:Once|Size|Date|Composite-->
        <!--Composite为Size和Date的组合-->
        <rollingStyle value="Composite" />
    
        <!--当备份文件时,为文件名加的后缀-->
        <datePattern value="yyyyMMdd.TXT" />
    
        <!--日志最大个数,都是最新的-->
        <!--rollingStyle节点为Size时,只能有value个日志-->
        <!--rollingStyle节点为Composite时,每天有value个日志-->
        <maxSizeRollBackups value="20" />
    
        <!--可用的单位:KB|MB|GB-->
        <maximumFileSize value="3MB" />
    
        <!--置为true,当前最新日志文件名永远为file节中的名字-->
        <staticLogFileName value="true" />
    
        <!--输出级别在INFO和ERROR之间的日志-->
        <filter type="log4net.Filter.LevelRangeFilter">
          <param name="LevelMin" value="ALL" />
          <param name="LevelMax" value="FATAL" />
        </filter>
    
        <!--必须结合起来用,第一个只过滤出WARN,第二个拒绝其它其它日志输出-->
        <!--
    <filter type="log4net.Filter.LevelMatchFilter">
    <param name="LevelToMatch" value="WARN" />
    </filter>
    <filter type="log4net.Filter.DenyAllFilter" />-->
    
        <layout type="log4net.Layout.PatternLayout">
          <conversionPattern value="%date [%thread] %-5level %logger - %message%newline"/>
        </layout>
      </appender>
    
    
      <!-- levels: OFF > FATAL > ERROR > WARN > INFO > DEBUG > ALL -->
      <root>
        <priority value="ALL"/>
        <level value="ALL"/>
        <appender-ref ref="rollingAppender" />
      </root>
    </log4net>

    并且把配置文件的属性设置未始终复制

     第三步,代码中创建lo4net日志记录实例

    在main中初始化一个log实例,用于记录日志操作

    ILoggerRepository repository = LogManager.CreateRepository("xxx");
    XmlConfigurator.Configure(repository, new FileInfo("log4net.Config"));
    ILog log = LogManager.GetLogger(repository.Name, "xxx");

    然后接下来,你就可以使用 info , error ,debug等方法,输出日志信息了

  • 相关阅读:
    go语言的垮平台编译
    vscode使用技巧
    集合
    泛型
    异常
    Java垃圾回收机制
    java学习笔记9.20
    java变量类型
    目前的学习计划
    离第一篇博客三天
  • 原文地址:https://www.cnblogs.com/shapman/p/12268141.html
Copyright © 2011-2022 走看看