SimpleLogAuditingStore.cs 869 B

12345678910111213141516171819202122232425262728
  1. using Microsoft.Extensions.DependencyInjection;
  2. using Microsoft.Extensions.Logging;
  3. using Microsoft.Extensions.Logging.Abstractions;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Text;
  7. using System.Threading.Tasks;
  8. namespace Edge.Core.UniversalApi.Auditing
  9. {
  10. internal class SimpleLogAuditingStore : IAuditingStore
  11. {
  12. private ILogger logger;
  13. internal SimpleLogAuditingStore(IServiceProvider services)
  14. {
  15. var loggerFactory = services.GetRequiredService<ILoggerFactory>();
  16. this.logger = loggerFactory.CreateLogger("UniversalApiAuditing");
  17. }
  18. public Task SaveAsync(AuditLogInfo auditInfo)
  19. {
  20. if (this.logger.IsEnabled(LogLevel.Information))
  21. this.logger.LogInformation(auditInfo.ToString());
  22. return Task.FromResult(0);
  23. }
  24. }
  25. }