Guest User

Untitled

a guest
Dec 11th, 2017
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.67 KB | None | 0 0
  1. using Serilog;
  2. using Serilog.Events;
  3. using Serilog.Formatting.Json;
  4. using Serilog.Sinks.RollingFileAlternate;
  5.  
  6. namespace TestCoreWebApp.Configuration.Logger
  7. {
  8. public class ApplicationLoggerConfig
  9. {
  10. public ILogger GetApplicationLogger()
  11. {
  12. #if DEBUG
  13. return GetMongoDbLogger();
  14. #else
  15. return GetMongoDbLogger()
  16. #endif
  17. }
  18.  
  19. private ILogger GetMongoDbLogger()
  20. {
  21. var logger = new LoggerConfiguration()
  22. .MinimumLevel.Debug()
  23. .MinimumLevel.Override("Microsoft", LogEventLevel.Warning)
  24. .WriteTo.MongoDB($"mongodb://{LoggerSettings.mongoDbUser}:{LoggerSettings.mongoDbPassword}@ds113906.mlab.com:13906/bugetto", collectionName: LoggerSettings.mongoDbCollection)
  25. .CreateLogger();
  26.  
  27. return logger;
  28. }
  29.  
  30. private ILogger GetDebugLogger()
  31. {
  32. var logger = new LoggerConfiguration()
  33. .MinimumLevel.Debug()
  34. .MinimumLevel.Override("Microsoft", LogEventLevel.Warning)
  35. .Enrich.FromLogContext()
  36. .WriteTo.Debug(new JsonFormatter())
  37. .CreateLogger();
  38.  
  39. return logger;
  40. }
  41.  
  42. private ILogger GetRollingFilesLogger()
  43. {
  44. var logger = new LoggerConfiguration()
  45. .MinimumLevel.Debug()
  46. .MinimumLevel.Override("Microsoft", LogEventLevel.Warning)
  47. .Enrich.FromLogContext()
  48. .WriteTo.RollingFileAlternate(new JsonFormatter(), ".\\logs", fileSizeLimitBytes: 1024 * 1024)
  49. .CreateLogger();
  50.  
  51. return logger;
  52. }
  53. }
  54. }
Add Comment
Please, Sign In to add comment