コンソールへのSerilog出力(ToString()データを使用)およびseq(構造化データを使用)
Aug 17 2020
ログに記録したデータを両方Console
とSeq
シンクに出力します。よく働く。
POCOを次の場所に記録すると:
Console
シンク、それはすべてのプロパティとデータとの長いテキスト行。Seq
それは/フィルター/などを検索するのは簡単ですので、シンク、それがうまく構造化されます。
さて、コンソールシンクに値を出力するときに、POCOのToString()メソッド(-all-プロパティの代わりに)を使用し、Seqにそれが正確にあるようにする方法はありますか?
私は今実験中です-一部のクラスにはオーバーライドされたToString()がないため、そこでクラス名を取得するだけです。
これは可能ですか?
回答
1 NicholasBlumhardt Aug 18 2020 at 04:45
Serilogは、各イベントプロパティを1回だけキャプチャし、その時点で、ToString()
または構造化された表現を選択します。
イベントがConsole
andのようなシンクに到達するのはロギングパイプラインの後半であるSeq
ため、個々のシンク(またはシンクの構成)が特定のプロパティ値のキャプチャ方法に影響を与える方法はありません。