文章目录
- 安装日志相关的程序包
- [Program.cs 配置文件](#Program.cs 配置文件)
- 测试效果
- 控制器的调用加日志
- 运行效果

安装日志相关的程序包

Program.cs 配置文件
json
#region 配置SeriLog
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug() //内部系统事件,这些事件并不一定能够从外部观测到。
.MinimumLevel.Override("Default", LogEventLevel.Information)
.MinimumLevel.Override("Microsoft", LogEventLevel.Error)
.MinimumLevel.Override("Microsoft.Hosting.Lifetime", LogEventLevel.Error)
.Enrich.FromLogContext()
.WriteTo.Console(theme: Serilog.Sinks.SystemConsole.Themes.AnsiConsoleTheme.Code) //将日志写进控制台
.WriteTo.File($"{AppContext.BaseDirectory}Logs/Marketing.log", //将日志写进特定的文件中
rollingInterval: RollingInterval.Day,
outputTemplate: "{Timestamp:HH:mm:ss.fff zzz} ||{Level}||{SourceContext:1}||{Message}||{Exception}||end {NewLine}")
.CreateLogger();
#endregion


csharp
//添加LogDashBoard
builder.Services.AddLogDashboard();
//使用LogDashBoard
app.UseLogDashboard();
测试效果

控制器的调用加日志

csharp
private readonly ILogger<UserController> _logger;
public UserController(ILogger<UserController> logger)
{
_logger = logger;
}

csharp
//日志
private readonly ILogger<UserController> _logger;
public UserController(ILogger<UserController> logger)
{
_logger = logger;
}
///<summary>
///用户登录
///</summary>
[HttpPost("login")]
public string Login([FromBody]dynamic obj)
{
string return_json;
ReturnData returnData = new ReturnData();
try
{
dynamic o = JsonConvert.DeserializeObject(Convert.ToString(obj));
UserModel user = new UserModel();
user.Emp_Num = Convert.ToString(o.emp_Num);
user.Pw = HashHelper.ComputeMD5(Convert.ToString(o.pw));
return_json = UserBLL.Login(user);
}
catch (Exception ex)
{
returnData.code = "E";
returnData.msg = ex.Message;
return_json = JsonConvert.SerializeObject(returnData);
_logger.LogError(ex.Message);
}
_logger.LogInformation(return_json);
return return_json;
}
运行效果
