# Microsoft.Extensions.Logging.Console ``` diff { namespace Microsoft.Extensions.Logging { public static class ConsoleLoggerExtensions { - public static ILoggerFactory AddConsole(this ILoggerFactory factory); - public static ILoggerFactory AddConsole(this ILoggerFactory factory, IConfiguration configuration); - public static ILoggerFactory AddConsole(this ILoggerFactory factory, IConsoleLoggerSettings settings); - public static ILoggerFactory AddConsole(this ILoggerFactory factory, LogLevel minLevel); - public static ILoggerFactory AddConsole(this ILoggerFactory factory, LogLevel minLevel, bool includeScopes); - public static ILoggerFactory AddConsole(this ILoggerFactory factory, bool includeScopes); - public static ILoggerFactory AddConsole(this ILoggerFactory factory, Func filter); - public static ILoggerFactory AddConsole(this ILoggerFactory factory, Func filter, bool includeScopes); } } namespace Microsoft.Extensions.Logging.Console { - public class ConfigurationConsoleLoggerSettings : IConsoleLoggerSettings { { - public ConfigurationConsoleLoggerSettings(IConfiguration configuration); - public IChangeToken ChangeToken { get; private set; } - public bool IncludeScopes { get; } - public IConsoleLoggerSettings Reload(); - public bool TryGetSwitch(string name, out LogLevel level); - } - public class ConsoleLogger : ILogger { { - public ConsoleLogger(string name, Func filter, IExternalScopeProvider scopeProvider); - public ConsoleLogger(string name, Func filter, bool includeScopes); - public IConsole Console { get; set; } - public bool DisableColors { get; set; } - public Func Filter { get; set; } - public bool IncludeScopes { get; set; } - public string Name { get; } - public IDisposable BeginScope(TState state); - public bool IsEnabled(LogLevel logLevel); - public void Log(LogLevel logLevel, EventId eventId, TState state, Exception exception, Func formatter); - public virtual void WriteMessage(LogLevel logLevel, string logName, int eventId, string message, Exception exception); - } + public enum ConsoleLoggerFormat { + Default = 0, + Systemd = 1, + } public class ConsoleLoggerOptions { + public ConsoleLoggerFormat Format { get; set; } + public LogLevel LogToStandardErrorThreshold { get; set; } + public string TimestampFormat { get; set; } } public class ConsoleLoggerProvider : IDisposable, ILoggerProvider, ISupportExternalScope { - public ConsoleLoggerProvider(IConsoleLoggerSettings settings); - public ConsoleLoggerProvider(Func filter, bool includeScopes); - public ConsoleLoggerProvider(Func filter, bool includeScopes, bool disableColors); } - public class ConsoleLoggerSettings : IConsoleLoggerSettings { { - public ConsoleLoggerSettings(); - public IChangeToken ChangeToken { get; set; } - public bool DisableColors { get; set; } - public bool IncludeScopes { get; set; } - public IDictionary Switches { get; set; } - public IConsoleLoggerSettings Reload(); - public bool TryGetSwitch(string name, out LogLevel level); - } - public class ConsoleLogScope { { - public static ConsoleLogScope Current { get; set; } - public ConsoleLogScope Parent { get; private set; } - public static IDisposable Push(string name, object state); - public override string ToString(); - } - public interface IConsoleLoggerSettings { { - IChangeToken ChangeToken { get; } - bool IncludeScopes { get; } - IConsoleLoggerSettings Reload(); - bool TryGetSwitch(string name, out LogLevel level); - } } - namespace Microsoft.Extensions.Logging.Console.Internal { { - public class AnsiLogConsole : IConsole { { - public AnsiLogConsole(IAnsiSystemConsole systemConsole); - public void Flush(); - public void Write(string message, ConsoleColor? background, ConsoleColor? foreground); - public void WriteLine(string message, ConsoleColor? background, ConsoleColor? foreground); - } - public class ConsoleLoggerProcessor : IDisposable { { - public IConsole Console; - public ConsoleLoggerProcessor(); - public void Dispose(); - public virtual void EnqueueMessage(LogMessageEntry message); - } - public interface IAnsiSystemConsole { { - void Write(string message); - void WriteLine(string message); - } - public interface IConsole { { - void Flush(); - void Write(string message, ConsoleColor? background, ConsoleColor? foreground); - void WriteLine(string message, ConsoleColor? background, ConsoleColor? foreground); - } - public struct LogMessageEntry { { - public ConsoleColor? LevelBackground; - public ConsoleColor? LevelForeground; - public ConsoleColor? MessageColor; - public string LevelString; - public string Message; - } - public class WindowsLogConsole : IConsole { { - public WindowsLogConsole(); - public void Flush(); - public void Write(string message, ConsoleColor? background, ConsoleColor? foreground); - public void WriteLine(string message, ConsoleColor? background, ConsoleColor? foreground); - } - } } ```