现在的位置: 首页 > 综合 > 正文

log4net 配置

2013年12月05日 ⁄ 综合 ⁄ 共 7129字 ⁄ 字号 评论关闭

第一步,配置文件名: log4net.config
第二步,在AssemblyInfo.cs中添加 [assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]
第三步:表现层应用
        log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);

        protected void Page_Load(object sender, EventArgs e)
        {
            logger.Info("dfadfa");
        }


<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <configSections>
        <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
    </configSections>

    <log4net>

        <!--写到sqlserver的配置:-->
        <appender name="ADONetAppender_SqlServer" type="log4net.Appender.AdoNetAppender">
            <!--<bufferSize value="10" />-->
            <connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
            <connectionString value="Server=192.168.10.9;UID=sa;PWD=111111;DataBase=Test;Max Pool Size=1000"/>
            <commandText value="INSERT INTO Log ([Date],[Thread],[Level],[Logger],[Message]) VALUES (@log_date, @thread, @log_level, @logger, @message)"/>
            <parameter>
                <parameterName value="@log_date"/>
                <dbType value="DateTime"/>
                <!--
                <layout type="log4net.Layout.PatternLayout">
                    <conversionPattern value="%date{yyyy'-'MM'-'dd HH':'mm':'ss'.'fff}" />
                </layout>
                -->
                <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>
        </appender>

        <!--写到access配置:-->

        <!--<appender name="AdoNetAppender_Access" type="log4net.Appender.AdoNetAppender">
        <bufferSize value="1" />
        <connectionString value="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\log4net.mdb;User Id=;Password=;" />
        <commandText value="INSERT INTO Log ([Date],[Thread],[Level],[Logger],[Message]) VALUES (@log_date, @thread, @log_level, @logger, @message)" />
        <parameter>
            <parameterName value="@log_date" />
            <dbType value="String" />
            <size value="255" />
            <layout type="log4net.Layout.PatternLayout">
                <conversionPattern value="%date" />
            </layout>
        </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="1024" />
            <layout type="log4net.Layout.PatternLayout">
                <conversionPattern value="%message" />
            </layout>
        </parameter>
    </appender>
    <appender name="ColoredConsoleAppender" type="log4net.Appender.ColoredConsoleAppender">
        <mapping>
            <level value="ALL" />
            <foreColor value="White" />
            <backColor value="Red, HighIntensity" />
        </mapping>
        <layout type="log4net.Layout.PatternLayout">
            <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
        </layout>
    </appender>-->
        <!--写入到文件,是累加,不生成新的文件-->
        <appender name="FileAppender" type="log4net.Appender.FileAppender">
            <!--日志写入路径-->
            <file value="log\log-file.txt" />
            <!--overwritten/appended to default =true 默认是追加-->
            <appendToFile value="true" />
            <layout type="log4net.Layout.PatternLayout">
                <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
            </layout>
        </appender>

        <!--写入到操作系统-->
        <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender">
            <ApplicationName value="msg"></ApplicationName>
            <LogName value="测试"></LogName>
            <MachineName value="zhangqi"></MachineName>
            <layout type="log4net.Layout.PatternLayout">
                <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
            </layout>
        </appender>

        <!--写入到文件-->
        <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
            <!--<file value="log\log.txt"/>-->
            <!--<file name="Client.Logging" value="log\log" />-->
            <file value="log\log" />
            <!--是否覆盖,默认是追加true-->
            <appendToFile value="true"/>
            <DatePattern value="yyyyMMdd &quot;.txt&quot;"></DatePattern>
            <!--设置无限备份=-1 ,最大备份数为1000-->
            <maxSizeRollBackups value="1000"/>
            <!--每个文件的最大20k-->
            <maximumFileSize value="20"/>
            <!--名称是否可以更改为false为可以更改-->
            <param name="StaticLogFileName" value="false" />
            <!--文件名称-->
            <!--<param name="DatePattern" value="yyyyMMdd&quot;.txt&quot;" />-->
            <param name="RollingStyle" value="Composite" />
            <!--<param name="RollingStyle" value="Composite" />-->
            <layout type="log4net.Layout.PatternLayout">
                <param name="ConversionPattern" value="%d [%r] [%t] %-5p %c  - %m%n%n" />
            </layout>
        </appender>

        <!--写入到文件,是累加,不生成新的文件-->
        <appender name="FileAppender" type="log4net.Appender.FileAppender">
            <!--日志写入路径-->
            <file value="log\log-file.txt" />
            <!--overwritten/appended to default =true 默认是追加-->
            <appendToFile value="true" />
            <layout type="log4net.Layout.PatternLayout">
                <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
            </layout>
        </appender>

        <root>
            <level value="ALL"/>
            <appender-ref ref="ADONetAppender_SqlServer"/>
            <appender-ref ref="RollingLogFileAppender"/>
            <appender-ref ref="EventLogAppender"></appender-ref>
            <appender-ref ref="AdoNetAppender_Access"></appender-ref>
            <appender-ref ref="ColoredConsoleAppender"></appender-ref>
            <appender-ref ref="FileAppender"></appender-ref>
        </root>

        <logger name="ConsoleApp.LoggingExample">
            --><!--<appender-ref ref="B" />--><!--
      <level value="All"/>
      <appender-ref ref="ADONetAppender_SqlServer"/>
      <appender-ref ref="RollingLogFileAppender"/>
    </logger>
    <logger name="LoggingExample">
      --><!--<appender-ref ref="B" />--><!--
      <level v

抱歉!评论已关闭.