В моем приложении есть Serilog.Он записывает некоторую информацию в текстовый файл, когда приложение работает.В приложении также есть форма электронной почты.Я хочу прикрепить к сообщению последние файлы журнала, но не могу, потому что эти файлы используются процессом.
Я попытался установить для флага SHARED значение true, но это не помогло.
Кроме того, у меня была идея приостановить запись в журнал методом CloseAndFlush () при подключении.Но я не знаю, как его перезапустить.
private static LoggerConfiguration Logger = new LoggerConfiguration()
.MinimumLevel.Information()
.WriteTo.File(Path.Combine(MailHelper.SerilogPath, $"{Program.CurrentUser.Login}_actions_log_.txt"),
rollingInterval: RollingInterval.Hour, shared: true,
retainedFileCountLimit: 10);
public static void CreateLogger()
{
Log.Logger = Logger.CreateLogger();
}
public static void PauseLogging()
{
Log.CloseAndFlush();
}
Основная идея - легко прикрепить лог-файл к сообщению.Ведение журнала должно работать до и после него.
Но знайте, что оно заблокировано процессом.