elasticsearch - NEST查询未返回Elasticsearch中保存的Metricbeat字段的数据

标签 elasticsearch nest metricbeat

我正在尝试查询elasticsearch中保存的metricbeat数据,并且正在寻找两个字段:hostsystem.cpu.total.pct。两者都包含在我的类(class)中:

public string Host { get; set; }
[Number(NumberType.ScaledFloat, Name = "system.cpu.total.pct")]
public float Cpu_pct { get; set; }

这是我的查询:
var searchResponse = client.Search<System>(s => s
            .Query(q => q
                .Bool(b => b
                    .Filter(bf => bf
                        .Range(r => r
                            .Field(f => f.Cpu_pct)
                            .GreaterThan(0)
                        )
                    )
                )
            )
        );

索引中包含文档的数据,其system.cpu.total.pct高于0,但是当我打印出响应文档时,Cpu_pct仅输出0,而host提供正确的主机名。

为什么我不能返回system.cpu.total.pct中的值?

最佳答案

更新System类型以匹配JSON源中内部对象的层次结构

public class System
{
    public Cpu Cpu { get; set; }
}

public class Cpu
{
    public Total Total { get; set; }
}

public class Total
{
    public float Pct { get; set; }
}

现在,在反序列化之后,将为Source.Cpu.Total.Pct属性设置值。

关于elasticsearch - NEST查询未返回Elasticsearch中保存的Metricbeat字段的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49428242/

相关文章:

elasticsearch - 连接filebeat到elasticsearch

ruby-on-rails - ElasticSearch-与AND/OR的多重匹配

c# - NEST 2.3.1 (Elastic Search) 创建索引出错

kubernetes - Metricbeat kubernetes 模块无法连接到 kubelet

sql - Elasticsearch,查询字符串,需要匹配字符串

elasticsearch - 带过滤器的函数评分 elasticsearch

elasticsearch - 使用嵌套 Elasticsearch 客户端生成带有命名字段的 QueryString

elasticsearch - 在 ElasticSearch Nest 客户端中创建自定义分析器

elasticsearch - 具有Metricbeat的卷使用的Kubernetes百分比

kubernetes - 如何在我的kubelet服务中启用监听10255