Log4Net.AspNetCore 配置

本文详细介绍如何在ASP.NET Core项目中引入并配置Log4Net日志框架,包括修改Program.cs和Startup.cs文件,以及创建log4net配置文件来实现警告级别以上的日志记录,并使用滚动文件Appender保存日志。

 1.引用 Microsoft.Extensions.Logging.Log4Net.AspNetCore

 2.增加配置Program.cs

 public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
            WebHost.CreateDefaultBuilder(args)
             .ConfigureLogging((hostingContext, logging) =>
             {
                 logging.AddFilter("System", LogLevel.Warning);
                 logging.AddFilter("Microsoft", LogLevel.Warning);
                 logging.AddLog4Net();
             })
            .UseStartup<Startup>();
    }

3.增加配置Startup.cs

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
      loggerFactory.AddLog4Net();
}

4.增加配置文件

<?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= "10"/>
    <!--每个文件最大1M-->
    <param name="maximumFileSize" value="1MB" />
    <!--日志根据日期滚动-->
    <param name="RollingStyle" value="Date" />
    <!--日志文件名格式为:logs_20080831.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>

 

转载于:https://www.cnblogs.com/prolion/p/11328101.html

.net8 .netcore dbug: Microsoft.AspNetCore.Mvc.Razor.Compilation.DefaultViewCompiler[4] Initializing Razor view compiler with no compiled views. dbug: Microsoft.AspNetCore.Mvc.ModelBinding.ModelBinderFactory[12] Registered model binder providers, in the following order: Microsoft.AspNetCore.Mvc.ModelBinding.Binders.BinderTypeModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.ServicesModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.BodyModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.HeaderModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.FloatingPointTypeModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.EnumTypeModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.DateTimeModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.SimpleTypeModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.TryParseModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.CancellationTokenModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.ByteArrayModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.FormFileModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.FormCollectionModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.KeyValuePairModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.DictionaryModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.ArrayModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.CollectionModelBinderProvider, Microsoft.AspNetCore.Mvc.ModelBinding.Binders.ComplexObjectModelBinderProvider info: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[63] User profile is available. Using 'C:\Users\Administrator\AppData\Local\ASP.NET\DataProtection-Keys' as key repository and Windows DPAPI to encrypt keys at rest. dbug: Microsoft.Extensions.Hosting.Internal.Host[1] Hosting starting dbug: Microsoft.AspNetCore.DataProtection.Repositories.FileSystemXmlRepository[37] Reading data from file 'C:\Users\Administrator\AppData\Local\ASP.NET\DataProtection-Keys\key-3112a98c-0ea6-4bbd-b81a-7371dd2684ac.xml'. dbug: Microsoft.AspNetCore.DataProtection.Repositories.FileSystemXmlRepository[37] Reading data from file 'C:\Users\Administrator\AppData\Local\ASP.NET\DataProtection-Keys\key-7973feae-6c2e-433e-b462-385567895847.xml'. dbug: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[18] Found key {3112a98c-0ea6-4bbd-b81a-7371dd2684ac}. dbug: Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager[18] Found key {7973feae-6c2e-433e-b462-385567895847}. dbug: Microsoft.AspNetCore.DataProtection.KeyManagement.DefaultKeyResolver[13] Considering key {7973feae-6c2e-433e-b462-385567895847} with expiration date 2025-11-16 04:16:46Z as default key. dbug: Microsoft.AspNetCore.DataProtection.TypeForwardingActivator[0] Forwarded activator type request from Microsoft.AspNetCore.DataProtection.XmlEncryption.DpapiXmlDecryptor, Microsoft.AspNetCore.DataProtection, Version=9.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60 to Microsoft.AspNetCore.DataProtection.XmlEncryption.DpapiXmlDecryptor, Microsoft.AspNetCore.DataProtection, Culture=neutral, PublicKeyToken=adb9793829ddae60 dbug: Microsoft.AspNetCore.DataProtection.XmlEncryption.DpapiXmlDecryptor[51] Decrypting secret element using Windows DPAPI. dbug: Microsoft.AspNetCore.DataProtection.TypeForwardingActivator[0] Forwarded activator type request from Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.ConfigurationModel.AuthenticatedEncryptorDescriptorDeserializer, Microsoft.AspNetCore.DataProtection, Version=9.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60 to Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.ConfigurationModel.AuthenticatedEncryptorDescriptorDeserializer, Microsoft.AspNetCore.DataProtection, Culture=neutral, PublicKeyToken=adb9793829ddae60 dbug: Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.CngCbcAuthenticatedEncryptorFactory[4] Opening CNG algorithm 'AES' from provider '(null)' with chaining mode CBC. dbug: Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.CngCbcAuthenticatedEncryptorFactory[3] Opening CNG algorithm 'SHA256' from provider '(null)' with HMAC. dbug: Microsoft.AspNetCore.DataProtection.KeyManagement.KeyRingProvider[2] Using key {7973feae-6c2e-433e-b462-385567895847} as the default key. dbug: Microsoft.AspNetCore.DataProtection.Internal.DataProtectionHostedService[65] Key ring with default key {7973feae-6c2e-433e-b462-385567895847} was loaded during application startup. dbug: Microsoft.AspNetCore.Watch.BrowserRefresh.BlazorWasmHotReloadMiddleware[0] Middleware loaded dbug: Microsoft.AspNetCore.Watch.BrowserRefresh.BrowserScriptMiddleware[0] Middleware loaded. Script /_framework/aspnetcore-browser-refresh.js (16493 B). dbug: Microsoft.AspNetCore.Watch.BrowserRefresh.BrowserScriptMiddleware[0] Middleware loaded. Script /_framework/blazor-hotreload.js (799 B). dbug: Microsoft.AspNetCore.Watch.BrowserRefresh.BrowserRefreshMiddleware[0] Middleware loaded: DOTNET_MODIFIABLE_ASSEMBLIES=debug, __ASPNETCORE_BROWSER_TOOLS=true info: Microsoft.Hosting.Lifetime[14] Now listening on: http://localhost:5080 dbug: Microsoft.AspNetCore.Hosting.Diagnostics[13] Loaded hosting startup assembly Site dbug: Microsoft.AspNetCore.Hosting.Diagnostics[13] Loaded hosting startup assembly Microsoft.WebTools.ApiEndpointDiscovery dbug: Microsoft.AspNetCore.Hosting.Diagnostics[13] Loaded hosting startup assembly Microsoft.AspNetCore.Watch.BrowserRefresh dbug: Microsoft.AspNetCore.Hosting.Diagnostics[13] Loaded hosting startup assembly Microsoft.WebTools.BrowserLink.Net info: Microsoft.Hosting.Lifetime[0] Application started. Press Ctrl+C to shut down. info: Microsoft.Hosting.Lifetime[0] Hosting environment: Development info: Microsoft.Hosting.Lifetime[0] Content root path: C:\Users\Administrator\Desktop\BaseSiteLib\Site dbug: Microsoft.Extensions.Hosting.Internal.Host[2] Hosting started 运行时打印出这些是有什么问题吗
最新发布
11-15
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值