• Log4net 自定义字段到数据库


    今天要求做个log4net自定义字段到数据库,在网上找了好多例子,都运行不成功。最后找了个国外的,很简单的就解决了。
    
    log4net它已经定义的字段有
    
     <commandText value="INSERT INTO xiao_log(Date,Thread,Level,Logger,Message)VALUES(@log_date, @thread, @log_level, @logger, @message)"/>
    
    中的Date,Thread,Level,Logger,Message这个5个。
    现在自定义2个字段
    
     <commandText value="INSERT INTO xiao_log(Date,Thread,Level,Logger,Message,UserId,UserName)VALUES(@log_date, @thread, @log_level, @logger, @message,@userid,@username)"/>
    自定义字段参数声明和原有参数声明的区别
    <--原有字段-->
          <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="@userid"/>
            <dbType value="String" />
            <size value="255" />
            <layout type="log4net.Layout.PatternLayout">
              <conversionPattern value="%property{userid}" />
            </layout>
          </parameter>
          <parameter>
            <parameterName value="@username"/>
            <dbType value="String" />
            <size value="255" />
            <layout type="log4net.Layout.PatternLayout">
              <conversionPattern value="%property{username}" />
            </layout>
          </parameter>
    最后加上这两句话,把参数替换掉就好了
    
            log4net.GlobalContext.Properties["userid"] = "23";
                    log4net.GlobalContext.Properties["username"] = "dongsheng";
                    Log.Info(ex,"23434");
  • 相关阅读:
    使用weave管理docker网络
    为docker配置固定ip
    Building good docker images
    使用curl命令获取文件下载速度
    吐槽Java
    Kubernetes 中的服务发现与负载均衡(转)
    Kubernetes系列之介绍篇(转)
    top命令中的wa指标(转)
    uwsgi常用参数详解(转)
    Unix域套接字-Unix Domain Socket(转)
  • 原文地址:https://www.cnblogs.com/xiaoyaodijun/p/4685902.html
Copyright © 2020-2023  润新知