Loading...

学习和积累有关asp.net, .net core, asp.net core的知识,在编程中找寻乐趣!

当前位置:首页DotNet

.net8.0 log4net在programe中记录全站的访问日志

发布时间:2024-08-04 19:45
.net8.0 log4net在programe中记录全站的访问日志

.net8.0 log4net在programe中记录全站的访问日志, 当然,也可以使用nginx的日志查看,不过,这里还是用asp.net本身来记录一下,可以记入数据库。方便后续分析

在.NET 8.0中使用log4net记录全站访问日志,你需要进行以下步骤:

dotnet add package log4net
  1. 配置log4net。在项目的appsettings.json中添加log4net的配置。

  2. 在程序的入口点(通常是Program.cs)配置log4net。

  3. 创建日志记录器,在需要记录日志的地方进行日志记录。

以下是具体的实现步骤和代码示例:

  1. 安装log4net。

  2. 配置log4net。在appsettings.json中添加如下配置:

{
"Logging": {
"Log4Net": {
"Level": "DEBUG",
"ConfigFile": "log4net.config"
}
}
}

创建一个log4net的配置文件log4net.config(通常放在项目根目录),并进行相关配置

<log4net>
<appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
<file value="logs/access.log" />
<appendToFile value="true" />
<rollingStyle value="Composite" />
<maxSizeRollBackups value="10" />
<maximumFileSize value="10MB" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="DEBUG" />
<appender-ref ref="RollingFile" />
</root>
</log4net>

在Program.cs中配置log4net并使用日志记录器。

using log4net;
using log4net.Config;
using Microsoft.Extensions.Logging;
using System;
using System.IO;
// ...
var builder = WebApplication.CreateBuilder(args);
// 加载log4net配置
XmlConfigurator.ConfigureAndWatch(new FileInfo("log4net.config"));
// 添加log4net日志记录
builder.Logging.AddLog4Net();
var app = builder.Build();
// 获取日志记录器
ILog log = LogManager.GetLogger(typeof(Program));
// 在这里使用日志记录器
app.Use(async (context, next) =>
{
log.Info($"{context.Request.Method} {context.Request.Path}");
//这里可以写入数据库,为了后续的分析方便
await next();
});
// ...
app.Run();

在上述代码中,首先配置并监视log4net的配置文件,然后将log4net添加到日志记录提供者中。在请求管道中,我们获取一个日志记录器并记录访问信息。这样,每当有请求通过ASP.NET Core应用程序时,就会记录相关的访问信息到指定的日志文件中。

NET8下的ILogger如何写入输出到文本 难道ILogger只能在控制台里输出日志吗

NET8下的ILogger如何写入输出到文本 难道ILogger只能在控制台里输出日志吗, 首先安装一个NLog.Extensions.Lo

python定期清理日志文件 防止日志文件无限制的增长

python定期清理日志文件 防止日志文件无限制的增长, python日志文件如果不定期清理 , 会无限制增长,从而占用服务器的磁盘空间,上

NET中如何使用NLog日志输出到文本中 Nlog日志如何捕获异常

NET中如何使用NLog日志输出到文本中 Nlog日志如何捕获异常, 一、因我是在.net8里测试的 , 故我安装的是 NLog.Web.A

提供免费的服务器维护、网站维护、宝塔面板的安装及运行。

网站编写代码分享

网站收录效果不好,自然会影响排名,网站优化首先第一步是要搞好网站收录

网络营销