1

我正在开发一项服务,该服务必须将每个日志条目转储为单独的 json 文件。然后,所有这些转储的日志文件将被导入到 ElasticSearch。我知道 ElasticSearch 接收器,但想法是在 ElasticSearch 不可用时不丢失日志。

一种解决方法是:

  1. 将 TextWriter 接收器与 StringWriter 一起使用;
  2. 将 StringWriter 内容转储到 json 文件;
  3. 并在每次调用后清除底层 StringBuilder。

还有其他解决方案吗?

4

1 回答 1

0

为此需要ILogEventSink添加自定义。WriteTo.Sink(...)我认为 Serilog 附带的JsonFormatter类可以很快实现。

于 2015-11-11T22:30:06.507 回答