Serilog ロギングと Seq シンク (ColoredConsole と RollingFile シンクに加えて) を使用してアプリケーションをセットアップしました。すべてがうまく機能していますが、Seq からの最小ログ レベルの切り替えです。
私のロギング レベル スイッチは、すべてが seq.
API キーの設定では、最小レベルが「デバッグ」に設定されており、seq はレベルが「デバッグ」以上のイベントのみを表示します。
ただし、アプリケーション側ではすべてがログに記録され、最小ログ レベルに変更はありません。コンソールに「Verbose」と表示され、seq シンクのローリング ログ ファイルと、セットアップした別のローリング ログ ファイルが表示されます。これは、seq によって取得される「デバッグ」レベルのイベントを送信しても、数分待っても変わりません。
これは私の設定です:
var levelSwitch = new LoggingLevelSwitch(LogEventLevel.Verbose);
Log.Logger = new LoggerConfiguration()
.MinimumLevel.ControlledBy(levelSwitch)
.Enrich.WithExceptionDetails()
.WriteTo.ColoredConsole()
.WriteTo.RollingFile(@".\log\log-{Date}.txt")
.WriteTo.Seq("http://localhost:5341", bufferBaseFilename: @".\temp\seqlog", apiKey: "...", controlLevelSwitch: levelSwitch)
.CreateLogger();
Log.Logger.Verbose("TEST!!!");