.NetCore 使用log4net日志

.NetCore 使用log4net日志

 

 

NuGet

 

Program.cs

  .ConfigureLogging(LoggingBuilder => {

                LoggingBuilder.AddLog4Net();

            })

Startup.cs

public static ILoggerRepository repository { get; set; }

 

 

            repository = LogManager.CreateRepository("NetCoreApp"); //我的项目名称叫NetCoreApp

                                                                    //指定配置文件

            XmlConfigurator.Configure(repository, new FileInfo(env.ContentRootPath+"\\log4net.config"));

 

配置文件:log4net.config

<?xml version="1.0" encoding="utf-8" ?>

<log4net>

    <appender name="DebugAppender" type="log4net.Appender.DebugAppender" >

        <layout type="log4net.Layout.PatternLayout">

            <conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />

        </layout>

    </appender>

    <!--指定日记记录方式,以滚动文件的方式(文件记录)-->

    <appender name="RollingFile" type="log4net.Appender.RollingFileAppender">

        <!--日志路径-->

        <file value="Log/" />

        <!--是否是向文件中追加日志-->

        <appendToFile value="true" />

        <!--log保留天数-->

        <param name= "MaxSizeRollBackups" value= "100"/>

        <!--每个文件最大1M-->

        <param name="maximumFileSize" value="30MB" />

        <!--日志根据日期滚动-->

        <param name="RollingStyle" value="Date" />

        <!--日志文件名格式为:logs_20200831.log-->

        <param name="DatePattern" value="&quot;logs_&quot;yyyyMMdd&quot;.log&quot;" />

        <!--日志文件名是否是固定不变的-->

        <param name="StaticLogFileName" value="false" />

        <!--布局-->

        <layout type="log4net.Layout.PatternLayout">

            <conversionPattern value="%date %5level %logger.%method [%line] - MESSAGE: %message%newline %exception" />

        </layout>

    </appender>

    <root>

        <level value="ALL"/>

        <appender-ref ref="DebugAppender" />

        <appender-ref ref="RollingFile" />

    </root>

</log4net>