3using Microsoft.Extensions.Logging;
5using Newtonsoft.Json.Converters;
20 public const string Section =
"FileLogging";
61 ArgumentNullException.ThrowIfNull(ioManager);
62 ArgumentNullException.ThrowIfNull(assemblyInformationProvider);
63 ArgumentNullException.ThrowIfNull(platformIdentifier);
68 return platformIdentifier.IsWindows
70 Environment.GetFolderPath(
71 Environment.SpecialFolder.CommonApplicationData,
72 Environment.SpecialFolderOption.DoNotVerify),
File logging configuration options.
string? Directory
Where log files are stored.
LogLevel MicrosoftLogLevel
The minimum Microsoft.Extensions.Logging.LogLevel to display in logs for Microsoft library sources.
string GetFullLogDirectory(IIOManager ioManager, IAssemblyInformationProvider assemblyInformationProvider, IPlatformIdentifier platformIdentifier)
Gets the evaluated log Directory.
LogLevel LogLevel
The minimum Microsoft.Extensions.Logging.LogLevel to display in logs.
const string Section
The key for the Microsoft.Extensions.Configuration.IConfigurationSection the FileLoggingConfiguration...
bool ProviderNetworkDebug
If Chat Providers should log their network traffic. Normally disabled because it is too noisy.
bool Disable
If file logging is disabled.
Interface for using filesystems.
string ConcatPath(params string[] paths)
Combines an array of strings into a path.