【发布时间】:2021-10-28 15:22:01
【问题描述】:
我设置了一个 Elastic Cloud 来卸载我的本地 elasticsearch 配置(就像我所做的那样),但由于我不知道的原因,我无法让它在 Elastic Cloud 中显示任何日志,尽管它在本地运行良好。
我得到的代码:(出于隐私原因修改)
//var uri = new Uri("http://localhost:9200"); // old one
var uri = new Uri("https://my-server.kb.eastus2.azure.elastic-cloud.com:9243");
var sinkOptions = new ElasticsearchSinkOptions(uri)
{
AutoRegisterTemplate = true,
ModifyConnectionSettings = x => x.BasicAuthentication("elastic", "the password I was given"),
IndexFormat = $"test-logs-{env.EnvironmentName?.ToLower().Replace('.', '-')}-{DateTime.Now:yyyy-MM}",
};
Log.Logger = new LoggerConfiguration()
.ReadFrom.Configuration(config)
.Enrich.FromLogContext()
.Enrich.WithMachineName()
.WriteTo.Console()
.WriteTo.Elasticsearch(sinkOptions)
.Enrich.WithProperty("Environment", env.EnvironmentName)
.CreateLogger();
我能想到的有两个可能的原因可能是这不起作用的原因:
- 凭据错误
- Uri 错误
到目前为止,我得到的每个解决方案都以这种方式提供了数据,但它没有说明我应该使用的 URI 是什么样的。
我没有收到任何错误。
我没有收到任何警告。
我没有得到任何日志。
我在这里做错了什么?
【问题讨论】:
标签: elasticsearch .net-core serilog serilog-sinks-elasticsearch