feat: 添加日志组件

This commit is contained in:
陈淳
2023-12-12 14:33:32 +08:00
parent aa49398c29
commit 8921b319c8
11 changed files with 2896 additions and 31 deletions

View File

@@ -222,7 +222,7 @@ namespace Yi.Framework.SqlSugarCore
{ {
if (Options.EnabledSqlLog) if (Options.EnabledSqlLog)
{ {
Logger.CreateLogger<SqlSugarDbContext>().LogDebug(UtilMethods.GetSqlString(DbType.SqlServer, sql, pars)); Logger.CreateLogger<SqlSugarDbContext>().LogDebug("SQL执行:"+UtilMethods.GetSqlString(DbType.SqlServer, sql, pars));
} }
} }

View File

@@ -3,15 +3,24 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using Microsoft.Extensions.Logging;
using Volo.Abp.Auditing; using Volo.Abp.Auditing;
using Volo.Abp.DependencyInjection; using Volo.Abp.DependencyInjection;
using Yi.Framework.Core.Helper;
using Yi.Framework.SqlSugarCore.Abstractions;
namespace Yi.Framework.SqlSugarCore namespace Yi.Framework.SqlSugarCore
{ {
public class SqlSugarLogAuditingStore : IAuditingStore, ISingletonDependency public class SqlSugarLogAuditingStore : IAuditingStore, ISingletonDependency
{ {
private readonly ILogger<SqlSugarLogAuditingStore> _logger;
public SqlSugarLogAuditingStore(ILogger<SqlSugarLogAuditingStore> logger, ISqlSugarDbContext sqlSugarDbContext)
{
_logger= logger;
}
public Task SaveAsync(AuditLogInfo auditInfo) public Task SaveAsync(AuditLogInfo auditInfo)
{ {
_logger.LogDebug(JsonHelper.ObjToStr(auditInfo, "yyyy-MM-dd HH:mm:ss"));
//Console.WriteLine(auditInfo.ExecutionTime); //Console.WriteLine(auditInfo.ExecutionTime);
return Task.CompletedTask; return Task.CompletedTask;
} }

View File

@@ -3,17 +3,17 @@ using Volo.Abp.BackgroundWorkers.Quartz;
namespace Yi.Framework.Rbac.Application.Jobs namespace Yi.Framework.Rbac.Application.Jobs
{ {
public class TestJob : QuartzBackgroundWorkerBase //public class TestJob : QuartzBackgroundWorkerBase
{ //{
public TestJob() // public TestJob()
{ // {
JobDetail = JobBuilder.Create<TestJob>().WithIdentity(nameof(TestJob)).Build(); // JobDetail = JobBuilder.Create<TestJob>().WithIdentity(nameof(TestJob)).Build();
Trigger = TriggerBuilder.Create().WithIdentity(nameof(TestJob)).WithCronSchedule("* * * * * ? *").Build(); // Trigger = TriggerBuilder.Create().WithIdentity(nameof(TestJob)).WithCronSchedule("* * * * * ? *").Build();
} // }
public override Task Execute(IJobExecutionContext context) // public override Task Execute(IJobExecutionContext context)
{ // {
Console.WriteLine("你好,世界"); // Console.WriteLine("你好,世界");
return Task.CompletedTask; // return Task.CompletedTask;
} // }
} //}
} }

View File

@@ -29,7 +29,6 @@ namespace Yi.Framework.Rbac.Application
public async override Task OnApplicationInitializationAsync(ApplicationInitializationContext context) public async override Task OnApplicationInitializationAsync(ApplicationInitializationContext context)
{ {
//await context.AddBackgroundWorkerAsync<TestJob>();
} }
} }
} }

View File

@@ -28,11 +28,7 @@ namespace Yi.Abp.SqlSugarCore
protected override void OnLogExecuting(string sql, SugarParameter[] pars) protected override void OnLogExecuting(string sql, SugarParameter[] pars)
{ {
//获取原生SQL推荐 5.1.4.63 性能OK base.OnLogExecuting(sql, pars);
//UtilMethods.GetNativeSql(sql,pars)
//获取无参数化SQL 影响性能只适合调试
this.Logger.CreateLogger<YiDbContext>().LogInformation(UtilMethods.GetSqlString(DbType.SqlServer, sql, pars));
} }
protected override void OnLogExecuted(string sql, SugarParameter[] pars) protected override void OnLogExecuted(string sql, SugarParameter[] pars)

File diff suppressed because it is too large Load Diff

View File

@@ -1,9 +1,30 @@
using Serilog;
using Yi.Abp.Web; using Yi.Abp.Web;
var builder = WebApplication.CreateBuilder(args); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>־
builder.WebHost.UseUrls(builder.Configuration["App:SelfUrl"]); Log.Logger = new LoggerConfiguration()
builder.Host.UseAutofac(); .WriteTo.Async(c => c.File("Logs/logs.txt", rollingInterval: RollingInterval.Day))
await builder.Services.AddApplicationAsync<YiAbpWebModule>(); .WriteTo.Async(c => c.Console())
var app = builder.Build(); .CreateLogger();
await app.InitializeApplicationAsync();
await app.RunAsync(); try
{
Log.Information("Yi<59><69><EFBFBD><EFBFBD>-Abp.vNext<78><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
var builder = WebApplication.CreateBuilder(args);
builder.WebHost.UseUrls(builder.Configuration["App:SelfUrl"]);
builder.Host.UseAutofac();
builder.Host.UseSerilog();
await builder.Services.AddApplicationAsync<YiAbpWebModule>();
var app = builder.Build();
await app.InitializeApplicationAsync();
await app.RunAsync();
}
catch (Exception ex)
{
Log.Fatal(ex, "Yi<59><69><EFBFBD><EFBFBD>-Abp.vNext<78><74><EFBFBD><EFBFBD>ը<EFBFBD><D5A8>");
}
finally
{
Log.CloseAndFlush();
}

View File

@@ -10,6 +10,8 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="7.0.14" /> <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="7.0.14" />
<PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="7.0.12" /> <PackageReference Include="Microsoft.AspNetCore.OpenApi" Version="7.0.12" />
<PackageReference Include="Serilog.AspNetCore" Version="7.0.0" />
<PackageReference Include="Serilog.Sinks.Async" Version="1.5.0" />
<PackageReference Include="Volo.Abp.AspNetCore.Authentication.JwtBearer" Version="7.4.2" /> <PackageReference Include="Volo.Abp.AspNetCore.Authentication.JwtBearer" Version="7.4.2" />
<PackageReference Include="Volo.Abp.AspNetCore.Mvc" Version="7.4.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Mvc" Version="7.4.1" />
<PackageReference Include="Volo.Abp.AspNetCore.Serilog" Version="7.4.1" /> <PackageReference Include="Volo.Abp.AspNetCore.Serilog" Version="7.4.1" />

View File

@@ -65,10 +65,7 @@ namespace Yi.Abp.Web
{ {
options.SerializerSettings.DateFormatString = "yyyy-MM-dd HH:mm:ss"; options.SerializerSettings.DateFormatString = "yyyy-MM-dd HH:mm:ss";
}); });
Configure<AbpJsonOptions>(options =>
{
options.OutputDateTimeFormat = "yyyy-MM-dd HH:mm:ss";
});
Configure<AbpAntiForgeryOptions>(options => Configure<AbpAntiForgeryOptions>(options =>
{ {
options.AutoValidate = false; options.AutoValidate = false;

1160
Yi.Bbs.Vue3/yarn.lock Normal file

File diff suppressed because it is too large Load Diff