# LogNet6 **Repository Path**: catzhou/lognet6 ## Basic Information - **Project Name**: LogNet6 - **Description**: ASP.NET6自定义日志 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-07-27 - **Last Updated**: 2022-09-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # LogNet6 #### 介绍 ASP.Net6.0的日志 #### 安装教程 1. Visual Studio程序包管理器控制台输入:install-package LogNet6 2. NuGet包管理器中搜索“LogNet6” #### 使用说明 在Program.cs文件添加如下代码 ``` builder.Services.AddSingleton(ii => new LoggerProcessor())); builder.Host.ConfigureLogging(loggingBuilder => loggingBuilder.ClearProviders() .AddNet6Logger() .AddNet6LoggerFilter(builder.Configuration.GetSection("Logging:LogLevel")) ); ``` 1. LoggerProcessor是您需要实现的保存日志类,您可以保存到文本文件或者数据库 1. 在appSetting.json文件设置Logging:LogLevel的内容,如: ``` "Logging": { "LogLevel": { "Default": "Information", "Microsoft.AspNetCore": "Warning", "你的日志分类名称":"日志等级" } } ``` #### SqlServer日志 1. 表结构 ``` /****** Object: Table [dbo].[Logs] Script Date: 2022/7/27 11:54:29 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[Logs]( [Id] [bigint] IDENTITY(1,1) NOT NULL, [ProjectName] [nvarchar](50) NOT NULL, [Name] [nvarchar](256) NOT NULL, [LogLevel] [nvarchar](16) NOT NULL, [Msg] [nvarchar](max) NOT NULL, [Dt] [datetime] NOT NULL, CONSTRAINT [PK_Logs] PRIMARY KEY CLUSTERED ( [Id] DESC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] GO ``` 2. 调用 ``` builder.Services.AddSqlServerLogger(builder.Configuration.GetConnectionString("LogConnection"), "Demo"); builder.Logging.AddNet6LoggerFilter(builder.Configuration.GetSection("Logging:LogLevel")); ``` 3. 配置 ``` "ConnectionStrings": { "LogConnection": "Server=服务器;Database=数据库名称;User id=用户名;Password=密码;Trust Server Certificate = true" } ``` #### Sqlite日志 1. 调用 ``` builder.Services.AddSqliteLogger(builder.Configuration.GetConnectionString("LogConnection")); builder.Logging.AddNet6LoggerFilter(builder.Configuration.GetSection("Logging:LogLevel")); ``` 2. 配置 ``` "ConnectionStrings": { "LogConnection": "Data Source=Log.db" } ```