zoukankan      html  css  js  c++  java
  • log4net保存到数据库系列三、代码中xml配置log4net

    园子里面有很多关于log4net保存到数据库的帖子,但是要动手操作还是比较不易,从头开始学习log4net数据库日志一、WebConfig中配置log4net

    下面先一点一点来学习如果进行配置

    1.下载,2.数据库脚本,请参考log4net保存到数据库系列一:WebConfig中配置log4net

    3.配置文件

    #region 配置参数
    string XmlValue = @"
    <log4net>
    <appender name=""AdoNetAppender"" type=""log4net.Appender.AdoNetAppender"">
        <bufferSize value=""-1"" />
        <connectionType value=""System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"" />
        <connectionString value=""data source=[服务器地址];initial catalog=[数据库];persist security info=True;user id=[账号];password=[密码];MultipleActiveResultSets=True;"" />
        <commandText value=""INSERT INTO Log ([Date],[Thread],[Level],[Logger],[Message],[Exception]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception)"" />
        <parameter>
        <parameterName value=""@log_date""  />
        <dbType value=""DateTime"" />
        <layout type=""log4net.Layout.RawTimeStampLayout"" />
        </parameter>
        <parameter>
        <parameterName value=""@thread"" />
        <dbType value=""String"" />
        <size value=""255"" />
        <layout type=""log4net.Layout.PatternLayout"">
            <conversionPattern value=""%thread"" />
        </layout>
        </parameter>
        <parameter>
        <parameterName value=""@log_level"" />
        <dbType value=""String"" />
        <size value=""50"" />
        <layout type=""log4net.Layout.PatternLayout"">
            <conversionPattern value=""%level"" />
        </layout>
        </parameter>
        <parameter>
        <parameterName value=""@logger"" />
        <dbType value=""String"" />
        <size value=""255"" />
        <layout type=""log4net.Layout.PatternLayout"">
            <conversionPattern value=""%logger"" />
        </layout>
        </parameter>
        <parameter>
        <parameterName value=""@message"" />
        <dbType value=""String"" />
        <size value=""4000"" />
        <layout type=""log4net.Layout.PatternLayout"">
            <conversionPattern value=""%message"" />
        </layout>
        </parameter>
        <parameter>
        <parameterName value=""@exception"" />
        <dbType value=""String"" />
        <size value=""2000"" />
        <layout type=""log4net.Layout.ExceptionLayout"" />
        </parameter>   
    </appender>
    <root>
        <level value=""ALL"" />
        <appender-ref ref=""AdoNetAppender"" />
      </root>  
    </log4net>";
    #endregion
    配置文件

    4.读取参数生成日志对象

    XmlDocument log4netConfig = new XmlDocument();
    log4netConfig.LoadXml(XmlValue);//读取配置文件
    
    ILoggerRepository rep = LogManager.CreateRepository(Guid.NewGuid().ToString());
    XmlConfigurator.Configure(rep, log4netConfig["log4net"]);

     5.测试代码

    ILog log = LogManager.GetLogger(rep.Name, "test");
    log.Debug("Message")
    log.Info("log4net测试");

     6.测试成功

     

  • 相关阅读:
    使用缓冲流和byte数组,拷贝文件
    java-类名的正确使用
    java-if语句调试
    java-if...else if...else语句调试
    java-打印101-200之间的素数(PrimeNumber),并统计个数,并每5行输出
    java-打印101-200之间的素数(PrimeNumber)
    冒泡排序-while实现
    冒泡排序-java实现
    java-求一组整数中的最大值
    python学习笔记之集合
  • 原文地址:https://www.cnblogs.com/jmoney/p/5682676.html
Copyright © 2011-2022 走看看