首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kapacitor采用了错误的时间格式

Kapacitor采用了错误的时间格式
EN

Stack Overflow用户
提问于 2016-02-15 13:29:51
回答 2查看 1.4K关注 0票数 1

我使用InfluxData堆栈来检测时间序列数据中的异常,使用InfluxDB和Kapacitor。

我收集了一些开源样本,并设置了以下代码来检测异常:

代码语言:javascript
复制
batch
    .query('select mean(value) from "nycTaxi"."default"."nycTaxi"')
        .period(1h)
        .every(2h)
        .groupBy(time(1h))
.mapReduce(influxql.percentile('mean', 90.0))
    .eval(lambda: sigma("percentile"))
        .as('sigma')
        .keep('percentile', 'sigma')
    .alert()
        .warn(lambda: "sigma" > 2.0)
        .log('/path/alerts.log')
        .crit(lambda: "sigma" > 3.0)
        .log('/path/alerts.log')

获取类似以下信息的警报:

代码语言:javascript
复制
 {"id":"nycTaxi:nil",
  "message":"nycTaxi:nil is WARNING",
  "time":"2016-09-13T14:43:21.892057062Z",
  "level":"WARNING",
  "data":{  
    "series":[  
      {  
        "name":"nycTaxi",
        "columns":[  
          "time",
          "percentile",
          "sigma"
        ],
        "values":[  
          [  
            "2016-09-13T14:43:21.892057062Z",
            1279,
            2.002345963142575
  ]]}]}}

要记录数据,我使用了这一行kapacitor record batch -start 2014-07-01T00:00:00Z -stop 2015-02-31T00:00:00Z -name nyc

出于某种原因,Kapacitor将时间解释为2016年的日期,而在DB中,最老的日期是2015-01-31。这一切为什么要发生?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-02-18 12:48:49

我发布了一个Kapacitor回购中的问题,解决我的问题的方法是使用下面的行来重放数据kapacitor replay -id RECORDING_ID -name nyc -fast -rec-time。这里的关键是解决问题的标志-rec-time

对解决这一问题的纳撒尼尔c敬佩不已。

票数 1
EN

Stack Overflow用户

发布于 2016-02-16 13:22:07

InfluxDb为Kapacitor提供实时数据(它实际上并不打算回顾所有历史数据,它是作为实时分析/警报工具使用的)。

您当前的查询基本上只查看最新的数据(1h),这就是您看到2016年的原因。那是故意的。如果您想要检查历史数据中的异常,您必须编写一个小程序(例如,使用您选择的语言的InfluxDb库),该程序将逐小时遍历所有旧的数据,并从中获取并分析它。您也可以为此使用回填

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35410643

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档