Изменён файл логов
This commit is contained in:
@@ -48,7 +48,7 @@ dotnet run --project src/Sms.TaskTwo.Avalonia/Sms.TaskTwo.Avalonia.csproj
|
|||||||
|
|
||||||
Класс `Sms.TaskTwo.Core.Logging.ConsoleLog` — дублирует записи в консоль и файл.
|
Класс `Sms.TaskTwo.Core.Logging.ConsoleLog` — дублирует записи в консоль и файл.
|
||||||
|
|
||||||
По умолчанию для GUI: `logs/test-sms-wpf-app-yyyyMMdd.log`. При вызове `ConsoleLog.Open()` без имени — `test-sms-console-app-yyyyMMdd_HHmmss.log`.
|
По умолчанию для GUI: `logs/test-sms-wpf-app-yyyyMMdd-hh:mm:ss.log` (на Windows двоеточия во времени заменяются на `-`). При вызове `ConsoleLog.Open()` без имени — `test-sms-console-app-yyyyMMdd_HHmmss.log`.
|
||||||
|
|
||||||
Пример строки:
|
Пример строки:
|
||||||
|
|
||||||
|
|||||||
@@ -28,9 +28,13 @@ public static class ServiceCollectionExtensions
|
|||||||
{
|
{
|
||||||
var options = serviceProvider.GetRequiredService<IOptions<LoggingOptions>>().Value;
|
var options = serviceProvider.GetRequiredService<IOptions<LoggingOptions>>().Value;
|
||||||
Directory.CreateDirectory(options.LogDirectory);
|
Directory.CreateDirectory(options.LogDirectory);
|
||||||
var fileName = Path.Combine(
|
var timestamp = DateTime.Now.ToString("yyyyMMdd-hh:mm:ss");
|
||||||
options.LogDirectory,
|
var logFileName = SanitizeFileName($"test-sms-wpf-app-{timestamp}.log");
|
||||||
$"test-sms-wpf-app-{DateTime.Now:yyyyMMdd}.log");
|
var fileName = Path.Combine(options.LogDirectory, logFileName);
|
||||||
return ConsoleLog.Open(fileName);
|
return ConsoleLog.Open(fileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static string SanitizeFileName(string fileName) =>
|
||||||
|
string.Concat(fileName.Select(static c =>
|
||||||
|
Path.GetInvalidFileNameChars().Contains(c) ? '-' : c));
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user