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等方法,输出日志信息了

  • 相关阅读:
    BadUSB 利用
    java 将函数作为参数传递
    odoo12 修行提升篇之 常用的高阶函数 (二)
    odoo12 修行提升篇之 异步定时任务 (一)
    odoo12 修行基础篇之 利用kanban做分析 点击跳转分析模型列表 (九)
    odoo12 修行基础篇之 kanban (八)
    odoo12 修行基础篇之 记录批处理 (七)
    odoo12 修行基础篇之 列表的筛选和分组 (六)
    odoo12 修行基础篇之 添加记录编码 (五)
    odoo12 修行基础篇之 添加工作流和操作记录 (四)
  • 原文地址:https://www.cnblogs.com/shapman/p/12268141.html
Copyright © 2011-2022 走看看