如何将 Serilog 与 Amazons OpenSearch 一起使用?
How to use Serilog with Amazons OpenSearch?
我们可以将 Serilog 与 Amazons OpenSearch 一起使用吗?
我已经使用 ElasticSearch Sink 进行了尝试:
var log = new LoggerConfiguration()
.WriteTo.Console()
.WriteTo.Elasticsearch(new ElasticsearchSinkOptions(new Uri("http://url:9200"))
{
AutoRegisterTemplate = true,
FailureCallback = FailureCallback,
EmitEventFailure = EmitEventFailureHandling.RaiseCallback | EmitEventFailureHandling.ThrowException
})
.CreateLogger();
log.Information("Hello, Serilog!");
Log.CloseAndFlush();
这似乎不起作用。
FailureCallback 上的异常为空,所以我什至没有收到真正的错误消息。
已尝试 Serilog.Sinks.Elasticsearch 使用完全相同的配置,它适用于我。
您是否在 opensearch 日志中收到错误?
您为接收器使用的最低日志级别是多少?您的日志转到信息,但我相信 serilog 的默认设置是警告
我看到您正在尝试使用 HTTP 协议进行连接,因此我假设您正在尝试 运行 对本地环境进行一些测试,但是您是否禁用了 OpenSearch 安全插件(它需要您使用 SSL 并授权自己)?
如果不是,你必须先这样做:https://opensearch.org/docs/latest/security-plugin/configuration/disable/
请记住,禁用安全性绝对不能用于生产环境。
我们可以将 Serilog 与 Amazons OpenSearch 一起使用吗?
我已经使用 ElasticSearch Sink 进行了尝试:
var log = new LoggerConfiguration()
.WriteTo.Console()
.WriteTo.Elasticsearch(new ElasticsearchSinkOptions(new Uri("http://url:9200"))
{
AutoRegisterTemplate = true,
FailureCallback = FailureCallback,
EmitEventFailure = EmitEventFailureHandling.RaiseCallback | EmitEventFailureHandling.ThrowException
})
.CreateLogger();
log.Information("Hello, Serilog!");
Log.CloseAndFlush();
这似乎不起作用。 FailureCallback 上的异常为空,所以我什至没有收到真正的错误消息。
已尝试 Serilog.Sinks.Elasticsearch 使用完全相同的配置,它适用于我。
您是否在 opensearch 日志中收到错误? 您为接收器使用的最低日志级别是多少?您的日志转到信息,但我相信 serilog 的默认设置是警告
我看到您正在尝试使用 HTTP 协议进行连接,因此我假设您正在尝试 运行 对本地环境进行一些测试,但是您是否禁用了 OpenSearch 安全插件(它需要您使用 SSL 并授权自己)? 如果不是,你必须先这样做:https://opensearch.org/docs/latest/security-plugin/configuration/disable/
请记住,禁用安全性绝对不能用于生产环境。