私はSerilogを現在使用しています。クラスをロガーに渡して、テキストファイルに出力する前にカスタムフォーマットでログインできるようにしたいと考えています。 IFormatProviderと多少似ています。私はITextFormatter
も見つけましたが、それが実装するのが正しいかどうかはわかりません。カスタムシンクが必要ですか?クラスのカスタムフォーマット
2
A
答えて
3
プリミティブ型については、Serilog supports IFormatProvider
を直接ご使用ください。
しかし、ほとんどのユーザー定義参照型は、Serilogによってシンクに直接渡されません。これは、シンクが非同期で動作することが多く、Serilogは任意のユーザ定義型がスレッドセーフであると想定できないためです。どんな二次表現に
.Destructure.AsScalar<SomeClass>()
あるいは、あなたが「destructure」缶クラスあなたは:
あなたはこれを回避することができ、「スカラー」とタイプの値をキャプチャすることにより、IFormatProvider
を使用するために、伐採時に欲しい:オブジェクトがログに記録されたときに、このために
.Destructure.ByTransforming<SomeClass>(sc => Display(sc))
(ByTransforming()
)動作するように、あなたはオプトインする@
で必要があります。
Log.Information("Hello {@Something}", new SomeClass());
最も簡単なのは、クラス自体でToString()
を上書きすることもできます。
関連する問題
- 1. EXCELカスタムフォーマット
- 2. TinyMCEのカスタムフォーマット
- 3. ナチュラルナンバーのカスタムフォーマット
- 4. スプリングセキュリティOauth - OAuth2Exceptionsのカスタムフォーマット
- 5. カスタムフォーマットIDマッピング
- 6. Html.EditorForとカスタムフォーマット
- 7. カスタムフォーマットでサインオフ済み
- 8. ZonedDateTimeのJava日付カスタムフォーマット
- 9. 入力タイプの日付、カスタムフォーマット
- 10. Antは、カスタムフォーマットのディレクトリコンテンツをリストします
- 11. カスタムフォーマットの式をMathematicaからエクスポートする
- 12. カスタムフォーマットは適用されません
- 13. GoでJSONをカスタムフォーマットにアンマーシャリングする
- 14. WebStorm 2016カスタムフォーマットに基づく自動フォーマットコード
- 15. Q:ffmpeg drawtext "localtime"ビデオフィルタ - カスタムフォーマットで表示
- 16. Yii2フォーマッタ - カスタムフォーマットを作成する
- 17. Quill.js:カスタムリンクフォーマットの作成 - または - 同じタグ名のカスタムフォーマット
- 18. 通貨のカスタムフォーマットでExcel 2013 for excelを使用する
- 19. カスタムフォーマットのクリップボードデータをTMemoに貼り付けるには?
- 20. カスタムフォーマットの日付と時刻を検証する瞬間
- 21. Laravel carbonのカスタムフォーマット(時間内、曜日、年とも)
- 22. Powershellスクリプトの日付(カスタムフォーマット)をパラメータとして渡します
- 23. MySQLはカスタムフォーマットの日付を現在と比較します
- 24. JavaのgetDateTimeFormatを使用してカレンダーからカスタムフォーマットを取得
- 25. モーメントをmoment.jsのカスタムフォーマット文字列に変換する方法
- 26. EditTextデータを入力しているときのカスタムフォーマットandroid
- 27. SSRSで文字列をカスタムフォーマットする方法
- 28. gqコマンドを使ってVimでLaTeX(ビーマー)フレームをカスタムフォーマット
- 29. Morgan(node.js):カスタムフォーマットを使用しているときのステータスコード( 'dev'のように)
- 30. 剣道UI DatePickerのカルチャがカスタムフォーマットで正しく機能しない
フォローアップの質問。 destructionの例を使用するか、ToStringを上書きする場合は、log.Error( "{myObj}"、myObj)を使用してオブジェクトを自分のログに追加するだけです。私は期待した結果を見なければなりませんか? – Questioning
はい、そうです。 –