zoukankan      html  css  js  c++  java
  • VB.NET使用Log4Net

    1.提前使用NuGet程序包导入Log4Net.dll

    2.在AssemblyInfo.vb文件中,写入如下配置(注意如果是放到文件夹内,需要加入文件路径地址)。

    如果无法打印信息,看log4net.config文件是否在Debug文件夹内

    <Assembly: log4net.Config.XmlConfiguratorAttribute(ConfigFile:="log4net.config", Watch:=True)> 

    3.配置log4net.config文件

     1 <?xml version="1.0" encoding="utf-8" ?>
     2 <configuration>
     3     <configSections>
     4         <section name="log4net" type="System.Configuration.IgnoreSectionHandler" />
     5     </configSections>
     6     <!--log4net配置文件-->
     7     <log4net>
     8         <root>
     9             <level value="ALL"/>
    10             <appender-ref ref="InfoAppender"/>
    11             <appender-ref ref="ErrorAppender"/>
    12             <!--<appender-ref ref="ConsoleAppender"/>-->
    13         </root>
    14         <!--运行状态信息-->
    15         <appender name="InfoAppender" type="log4net.Appender.RollingFileAppender">
    16             <!--日志路径-->
    17             <File value="log/log_info.txt"/>
    18             <!--是否是向文件中追加日志-->
    19             <AppendToFile value="true"/>
    20             <!--创建新文件的方式-->
    21             <RollingStyle value="Size"/>
    22             <!--log文件大小-->
    23             <MaximumFileSize value="5M"/>
    24             <!--备份日志数目-->
    25             <MaxSizeRollBackups value="30"/>
    26             <!--日志文件名是否是固定不变的-->
    27             <StaticLogFileName value="true"/>
    28             <lockingModel type="log4net.Appender.RollingFileAppender+MinimalLock" />
    29             <!--输出格式-->
    30             <layout type="log4net.Layout.PatternLayout">
    31                 <!--日期 [级别]-->
    32                 <conversionPattern value="%d [%-5p] [%t%] -%m%n"/>
    33             </layout>
    34             <!--控制器,只记录级别在INFO-INFO之间的信息-->
    35             <filter type="log4net.Filter.LevelRangeFilter">
    36                 <levelMin value="INFO" />
    37                 <levelMax value="INFO" />
    38             </filter>
    39         </appender>
    40         <!--运行错误信息-->
    41         <appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender">
    42             <!--日志路径-->
    43             <File value="log/log_error.txt"/>
    44             <!--是否是向文件中追加日志-->
    45             <AppendToFile value="true"/>
    46             <!--创建新文件的方式-->
    47             <RollingStyle value="Size"/>
    48             <!--log文件大小-->
    49             <MaximumFileSize value="5M"/>
    50             <!--备份日志数目-->
    51             <MaxSizeRollBackups value="30"/>
    52             <!--日志文件名是否是固定不变的-->
    53             <StaticLogFileName value="true"/>
    54             <lockingModel type="log4net.Appender.RollingFileAppender+MinimalLock" />
    55             <!--输出格式-->
    56             <layout type="log4net.Layout.PatternLayout">
    57                 <!--输出格式-->
    58                 <conversionPattern value="%d [%-5p] [%t%] -%m%n"/>
    59             </layout>
    60             <!--控制器,只记录级别在WARN-FATAL之间的信息-->
    61             <filter type="log4net.Filter.LevelRangeFilter">
    62                 <levelMin value="WARN" />
    63                 <levelMax value="FATAL" />
    64             </filter>
    65         </appender>
    66     </log4net>
    67 </configuration>

    3.配置LogHelper.vb

     1 Public Class LogHelper
     2 
     3     Shared log As log4net.ILog = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType)
     4 
     5     ''' <summary>
     6     ''' 程序运行的过程中的,一般信息可以调用此方法记录日记
     7     ''' </summary>
     8     ''' <param name="info"></param>
     9     Public Shared Sub Info(info As String)
    10         If log.IsInfoEnabled = True Then
    11             log.Info(info)
    12         End If
    13     End Sub
    14     ''' <summary>
    15     ''' 程序出现错误的时候调用此方法记录日记(一般用在出现了异常以后) 
    16     ''' </summary>
    17     ''' <param name="info"></param>
    18     Public Shared Sub Errors(info As String)
    19         If log.IsErrorEnabled = True Then
    20             log.Info(info)
    21         End If
    22     End Sub
    23     ''' <summary>
    24     ''' 程序出现错误的时候调用此方法记录日记(一般用在出现了异常以后) 
    25     ''' </summary>
    26     ''' <param name="info"></param>
    27     ''' <param name="ex"></param>
    28     Public Shared Sub Errors(info As String, ex As Exception)
    29         If log.IsErrorEnabled = True Then
    30             log.Info(info, ex)
    31         End If
    32     End Sub
    33     ''' <summary>
    34     ''' 程序出现错误的时候调用此方法记录日记(一般用在出现了异常以后) 
    35     ''' </summary>
    36     ''' <param name="ex"></param>
    37     Public Shared Sub Errors(ex As Exception)
    38         If log.IsErrorEnabled = True Then
    39             log.Info(ex)
    40         End If
    41     End Sub
    42 End Class

    4.调用方法:

    LogHelper.Errors("异常",ex)
    

      

    本文来自博客园,作者:云辰,转载请注明原文链接:https://www.cnblogs.com/yunchen/p/13753280.html

  • 相关阅读:
    10丨应该如何理解请求方法?
    采用镜像的方法安装python第三方库
    09丨HTTP报文是什么样子的?
    Fiddler——Https抓包(十二)
    三基础篇(7讲)08丨键入网址再按下回车,后面究竟发生了什么?
    fiddler-弱网测试(十一)
    python中a+=a与a=a+a的区别
    07 | 自己动手,搭建HTTP实验环境
    Fiddler——断点应用(十)
    【HGOI】物品选取
  • 原文地址:https://www.cnblogs.com/yunchen/p/13753280.html
Copyright © 2011-2022 走看看