如何为Elastic.Serilog.Sinks提供索引

问题描述 投票:0回答:1

由于 Serilog.Sinks.Elasticsearch 已过时,我正在尝试让 Elastic.Serilog.Sings 工作。

所以我这样做:

  var uris = new List<Uri>() { new Uri("http://a-good-url:9200") };
  var loggerConfig = new LoggerConfiguration()
  .ReadFrom.Configuration(configuration, options)
  .WriteTo.Elasticsearch(uris, o =>
  {
      o.ChannelDiagnosticsCallback = l => { SelfLog.WriteLine($"Failure={l.PublishSuccess}, Message={l}, Exception={l.ObservedException}"); };
      o.BootstrapMethod = BootstrapMethod.Failure;
      o.MinimumLevel = LogEventLevel.Information;
      o.ConfigureChannel = channel =>
      {
          channel.ExportResponseCallback = (response, buffer) => SelfLog.WriteLine($"Written {buffer.Count} logs to Elasticsearch: {response.ApiCallDetails.HttpStatusCode}");
      };
  });

Log.Logger = loggerConfig.CreateLogger();

但我收到此错误:

“通过通道发布失败:EcsDataStreamChannel`1。 导出缓冲区:0 出口商品: 0 导出响应:0 导出重试:0 出口排放:0 导出退回的项目以重试:False 入站缓冲区读取循环已启动:True 入站缓冲区发布:0 入站缓冲区发布失败:0 出站缓冲区读取循环已启动:True 出站缓冲区读取循环已退出:False 出站缓冲区发布:0 出站缓冲区发布失败:0 例外:无 ”

另外,我不知道如何告诉它使用特定索引,例如:“my-log-{0:yyyy.MM}”。我该怎么做?

elasticsearch serilog
1个回答
0
投票

我有你的确切错误...你成功了吗?

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.