记录自己常用在kibana中用的DSL查询语句,以后方便参考

在查询elasticsearch中的数据的时候,经常用kibana中的DEV工具来查询,一般来说,这个工具会缓存你用过的dsl语句,但有时候不小心清理了浏览器缓存或者在另外一台机登录kibana,这些DSL就没有了,所以干脆记录在这里,也方便以后参考,特别是用 elasticsearch low level api的时候,就更有用了,因为就是原生的dsl查询语句。

GET _search
{
  "query": {
    "match_all": {}
  }
}

##时间用法,@timestamp, 可以用来查询距离现在多求前,或者时间段,可以是分钟(m),小时(h),天数(d), 就如同下面这样.
##另外加入了排序
GET /gateway_log/_search
{
  "sort":[
    {
    "@timestamp":{"order":"desc"}
    }
  ],
  "query":{
    "range":{
      "@timestamp": {
        "gte": "now-10h",
        "lte": "now+20h"
      }
    }
  }
}

##最近一小时的数据
GET /gateway_log/_search
{
  "query":{
    "range":{
      "@timestamp": {
        "gte": "now-1h"
      }
    }
  }
}

## 指定特定的时间段,很精确的时间段查询
GET /gateway_log/_search
{
  "query":{
    "range":{
      "@timestamp": {
        "gt": "2019-08-29T01:00:00",
        "lt": "2019-08-29T03:59:59"
      }
    }
  }
}

## bool方式查询加过滤
GET /gateway_log/_search
{
  "from":0,
  "size":20,
  "query":{
    "bool":{
       "must":[
        {"match":{"eventType": "WAN_ONOFF"}}
        ],
      "filter":[
        {"range":{"count":{"gte":8}}}
        ]
    }
  }
 
}

## match 查询
GET /gateway_log/_search
{
  "query":{
    "match":{
      "eventType":"CPU_TEMPERATURE"
    }
  }
}

## 聚合查询的使用例子
GET /gateway_log/_search
{
  "size":0,
  "query":{
    "match":{
      "eventType":"CPU_TEMPERATURE"
    }
  },
  "aggs":{
    "max_count": {
        "max":{
            "field": "count"
        }
      }
  }
}

## 分页查询的例子
GET /gateway_log/_search
{
  "from":5,
  "size":5,
  "query":{
    "bool":{
       "must":[
        {"match":{"eventType": "CPU_TEMPERATURE"}}
        ],
      "filter":[
        {"range":{"count":{"gte":8}}}
        ]
    }
  }
 
}

上一篇: Agile Data Science 2.0书中代码.
下一篇: django-uuslug汉字转拼音出现的小问题,可能是BUG.

Avatar

more 评论于: 2020-01-30

Hello mates, how is the whole thing, and what you want to say regarding this piece of writing, in my view its actually amazing in favor of me.
 评论 ( What Do You Think )
名称
邮箱
网址
评论
验证
   
 

 


  • 微信公众号

  • 我的微信

站点声明:

1、一号门博客CMS,由Python, MySQL, Nginx, Wsgi 强力驱动

2、部分文章来源于互联网, 若有侵权, 联系邮箱:summer@yihaomen.com, 同时欢迎大家注册用户,主动发布文章.

3、鄂ICP备14001754号-3, 鄂公网安备 42280202422812号