var settings = new ElasticsearchClientSettings(new Uri("IP Address"))
.DefaultIndex("index_name")
.CertificateFingerprint("certificate_fingerprint")
.Authentication(new BasicAuthentication("username", "password"));
Audit.Core.Configuration.Setup()
.UseElasticsearch(config => config
.Client(new ElasticsearchClient(settings)));
任何帮助都将不胜感激
该问题是由Elasticsearch的
动态场映射引起的。
NewValue
object
,这意味着Elasticsearch根据第一个索引文档确定其类型。如果第一个索引文档包含DateTime
OriginalValue
。因此,如果随后的文档包含不同的数据类型,则索引将由于类型不匹配而失败。要避免此问题,您有几个选择:1。使用自定义索引模板(仅适用于新索引)您可以将索引模板定义为明确将字段映射为
date
,从而确保所有索引文档中的数据类型一致:OriginalValue
但是,这种方法仅适用于新创建的索引。2。将对象值转换为JSON字符串在线,您可以在索引之前覆盖对象值并将其转换为JSON字符串。这样可以确保Elasticsearch将所有值视为字符串数据,防止类型冲突:
TextProperty
,
499,504
和591
.
。