1

たとえば、 function がありますdoSomething(string a, string b, string c)。そして、関数の実行をログに記録したいと思います。私はこのようなことをしたい:

Logger.Debug("Method doSomething executed", a, b, c)

文字列が非常に長くなる可能性があるため、メッセージにパラメーターを書き込まないようにします。この機能は に似てい.Enrich.WithProperty("PropertyName", Value)ます。しかし、Logger コンストラクターでこれを行うことはできません。への書き込みをログに記録しSEQます。

4

1 に答える 1

1

ForContext()これを行うことができます:

var enriched = Log.ForContext("A", a)
                  .ForContext("B", b)
                  .ForContext("C", c);

enriched.Debug("Method doSomething executed");

ログに記録されたすべてのイベントenrichedには、プロパティABあり、C添付されています。

于 2015-11-25T19:43:38.310 に答える