Базово работает

gRPC на отдельном порту
This commit is contained in:
2026-06-01 18:02:48 +03:00
parent 3af9cb1912
commit 50626c6ac6
38 changed files with 833 additions and 164 deletions

View File

@@ -0,0 +1,52 @@
namespace ConsoleApp.Logging;
internal sealed class TeeTextWriter(TextWriter consoleWriter, TextWriter logWriter) : TextWriter
{
public override System.Text.Encoding Encoding => consoleWriter.Encoding;
public override void Write(char value)
{
consoleWriter.Write(value);
logWriter.Write(value);
}
public override void Write(string? value)
{
consoleWriter.Write(value);
logWriter.Write(value);
}
public override void WriteLine(string? value)
{
consoleWriter.WriteLine(value);
logWriter.WriteLine(value);
}
public override void Flush()
{
consoleWriter.Flush();
logWriter.Flush();
}
protected override void Dispose(bool disposing)
{
if (disposing)
{
logWriter.Dispose();
}
base.Dispose(disposing);
}
}
internal static class ConsoleLog
{
public static IDisposable Configure()
{
var logPath = $"test-sms-console-app-{DateTime.Now:yyyyMMdd}.log";
var logWriter = new StreamWriter(logPath, append: true) { AutoFlush = true };
var tee = new TeeTextWriter(global::System.Console.Out, logWriter);
global::System.Console.SetOut(tee);
return logWriter;
}
}