IStartupLogger.cs 975 B

12345678910111213141516171819202122232425
  1. using System;
  2. using Morestachio.Helper.Logging;
  3. using ILogger = Microsoft.Extensions.Logging.ILogger;
  4. namespace Jellyfin.Server.ServerSetupApp;
  5. /// <summary>
  6. /// Defines the Startup Logger. This logger acts an an aggregate logger that will push though all log messages to both the attached logger as well as the startup UI.
  7. /// </summary>
  8. public interface IStartupLogger : ILogger
  9. {
  10. /// <summary>
  11. /// Adds another logger instance to this logger for combined logging.
  12. /// </summary>
  13. /// <param name="logger">Other logger to rely messages to.</param>
  14. /// <returns>A combined logger.</returns>
  15. IStartupLogger With(ILogger logger);
  16. /// <summary>
  17. /// Opens a new Group logger within the parent logger.
  18. /// </summary>
  19. /// <param name="logEntry">Defines the log message that introduces the new group.</param>
  20. /// <returns>A new logger that can write to the group.</returns>
  21. IStartupLogger BeginGroup(FormattableString logEntry);
  22. }