Serilog 输出到控制台(使用 ToString() 数据)和 seq(使用结构化数据)

Serilog outputting to console (with ToString() data) and seq (with structured data)

我将记录的数据输出到 ConsoleSeq 接收器。效果很好。

当我将 POCO 记录到:

现在,有没有一种方法可以使当我们将值输出到控制台接收器时,它可能会使用 POCO 的 ToString() 方法(而不是 -all- 属性),而对于 Seq 它正是它所需要的是,现在?

我现在只是在试验 - 一些 classes 没有覆盖 ToString() 所以这意味着我将在那里获得 class 名称。

这可能吗?

Serilog 仅捕获每个事件 属性 一次,然后选择 ToString() 或结构化表示。

只有在日志记录管道的后期,事件才会到达 ConsoleSeq 等接收器,因此单个接收器(或接收器的配置)无法影响特定 属性 值被捕获。