Kibana的时间戳比今天早上7点更大,比今天下午6点更小

q3qa4bjr  于 2023-08-01  发布在  Kibana
关注(0)|答案(1)|浏览(191)

我在Kibana中的过滤器的目的是获取今天从早上7点到下午6点发生的事件(相对数据)(因此在凌晨4点的事件将被省略)。
我唯一可以查询日期的字段是时间戳。我必须比今天早上7点更大,比今天下午6点更小。
类似于:

{
  "range": {
    "@timestamp": {
      "gte": "2023-07-14T09:01:24.075+02:00",
      "lt": "now"
    }
  }
}

字符串
一些不起作用的东西,因为它依赖于now时间戳:

{
  "range": {
    "@timestamp": {
      "gte": "now-10h",
      "lt": "now"
    }
  }
}


比如now-1d/d+18h
手册上说的是:

Assuming now is 2001-01-01 12:00:00, some examples are:

now+1h - now in milliseconds plus one hour. Resolves to: 2001-01-01 13:00:00

now-1h  - now in milliseconds minus one hour. Resolves to: 2001-01-01 11:00:00

now-1h/d - now in milliseconds minus one hour, rounded down to UTC 00:00. Resolves to: 2001-01-01 00:00:00

2001.02.01\|\|+1M/d - 2001-02-01 in milliseconds plus one month. Resolves to: 2001-03-01 00:00:00


有什么想法吗

yquaqz18

yquaqz181#

now对每个请求都更改一个以匹配当前时间是正确的,但是您可以使用/d将其锚定到当天,然后根据需要添加小时数。
如果now2023-07-17T10:12:23.456Z,那么now/d在一天中是常数。然后你可以添加7个小时,像这样:now/d+7h也将是常数2023-07-17T07:00:00.000Z。你只需要确保它按照你喜欢的方式工作,这取决于你的时区。
今天上午7点到下午6点之间选择文档的示例查询:

{
  "query": {
    "range": {
      "@timestamp": {
        "gte": "now/d+7h",
        "lte": "now/d+18h"
      }
    }
  }
}

字符串

相关问题