Вы можете следить за внедрением Audit Trail с https://damienbod.com/2017/02/28/implementing-an-audit-trail-using-asp-net-core-and-elasticsearch-with-nest/
Или вы можете переопределить оригинальный ILogger в .NetCore.
Шаг 1: создайте класс, который наследует ILogger, затем переопределите метод public void Log<TState>(LogLevel logLevel, EventId eventId, TState state, Exception exception, Func<TState, Exception, string> formatter)
. ref: https://github.com/khainx127/ezStore-microservices/blob/master/source/01.Libraries/Microservice.Core.Logging/MicroserviceLogging.cs
Шаг 2. Создайте класс, унаследованный ILoggerProvider
, и верните экземпляр класса на шаге 1. ref: https://github.com/khainx127/ezStore-microservices/blob/master/source/01.Libraries/Microservice.Core.Logging/MicroserviceLoggerProvider.cs
Шаг 3: зарегистрируйте своего провайдера в Startup:
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory, IServiceProvider serviceProvider)
{
...
loggerFactory.AddProvider(new MicroserviceLoggerProvider(serviceProvider.GetService<IBusControl>(), Configuration));
...
}
Step4: вызов _logger.LogInformation("User logged in.");
в действии контроллера
Это идея, и я думаю, что вы можете изменить то, что хотите записать в Audit Trail