如何更改发布到 Elastic Search 的 Serilog 字段名称

How to change Serilog field name posted to Elastic Search

我的 serilog elastic search sink 已经开始工作了。我现在的问题是,当日志发布到弹性搜索时,我正在寻找一种方法来覆盖或删除默认的开箱即用字段命名约定。

我的代码中的示例。

Log.Information("{sTest} {sName} , "This is test.", "This is my name");

将要创建的那个会有类似 fields.sTestfields.sName

有没有办法省略“字段”。前缀并仅使用 sTestsName? 谢谢。

您需要将 InlineFields 属性 设置为 true

var loggerConfig = new LoggerConfiguration()
    .WriteTo.Elasticsearch(new ElasticsearchSinkOptions(new Uri("http://localhost:9200"))
    {
        InlineFields = true,
        ...
    });