使用 serilog 从 ASP.Net 核心身份记录事件
Logging events from ASP.Net core identity with serilog
也许有人已经回答了类似的问题,但我找不到它 - 如果是这样我会很高兴link。
我正在使用带有 ASP.Net 核心的 serilog 来记录各种事件,当涉及到我的服务时,它非常简单,我只需将记录器注入服务并在那里使用它,但我也想记录用户登录、用户注销、用户注册等事件。所有这些都使用 serilog 进行归档,但我什至不知道如何制作。 Asp identity 使用 razor pages 并且没有用于登录的控制器。我发现用户管理器中有 logger https://docs.microsoft.com/pl-pl/dotnet/api/microsoft.aspnetcore.identity.usermanager-1.logger?view=aspnetcore-2.2 但没有关于它的描述,而且可能不是。有人知道如何将 serilog 与 ASP.Net Core identity 一起使用吗?我无法为其配置它。
我假设您使用的是 ASP.NET 核心身份附带的默认身份 UI。你说得对,这个 UI(默认情况下)使用 Razor Pages,而 Razor Pages 不使用控制器。
但是,您仍然可以将依赖项注入 Razor Pages,只需为 PageModel 添加构造函数即可:
public class ExamplePageModel : PageModel
{
private readonly ILogger<ExamplePageModel> _logger;
public ExamplePageModel(ILogger<ExamplePageModel> logger)
{
_logger = logger;
}
public async Task OnPostAsync()
{
_logger.LogInformation("Doing something");
// …
}
}
当然,这意味着您现在必须对默认身份 UI 进行相当大的调整。
也许有人已经回答了类似的问题,但我找不到它 - 如果是这样我会很高兴link。
我正在使用带有 ASP.Net 核心的 serilog 来记录各种事件,当涉及到我的服务时,它非常简单,我只需将记录器注入服务并在那里使用它,但我也想记录用户登录、用户注销、用户注册等事件。所有这些都使用 serilog 进行归档,但我什至不知道如何制作。 Asp identity 使用 razor pages 并且没有用于登录的控制器。我发现用户管理器中有 logger https://docs.microsoft.com/pl-pl/dotnet/api/microsoft.aspnetcore.identity.usermanager-1.logger?view=aspnetcore-2.2 但没有关于它的描述,而且可能不是。有人知道如何将 serilog 与 ASP.Net Core identity 一起使用吗?我无法为其配置它。
我假设您使用的是 ASP.NET 核心身份附带的默认身份 UI。你说得对,这个 UI(默认情况下)使用 Razor Pages,而 Razor Pages 不使用控制器。
但是,您仍然可以将依赖项注入 Razor Pages,只需为 PageModel 添加构造函数即可:
public class ExamplePageModel : PageModel
{
private readonly ILogger<ExamplePageModel> _logger;
public ExamplePageModel(ILogger<ExamplePageModel> logger)
{
_logger = logger;
}
public async Task OnPostAsync()
{
_logger.LogInformation("Doing something");
// …
}
}
当然,这意味着您现在必须对默认身份 UI 进行相当大的调整。