繁体   English   中英

Graphite summarise() 函数结果对于不同的“from”值不一致

[英]Graphite summarize() function results are inconsistent for different 'from' values

我正在使用 Graphite 记录用户登录信息。

当我运行以下命令时:

render?target=summarize(stats_counts.login.success,"1day")&format=json&from=-1days

我得到的结果:

[
  {
    "target": "summarize(stats_counts.login.success, \"1day\", \"sum\")",
    "datapoints": [
      [
        5,
        1435708800
      ],
      [
        21,
        1435795200
      ]
    ]
  }
]

但是对于以下查询:

render?target=summarize(stats_counts.login.success,"1day")&format=json&from=-7days

我得到的结果:

[
  {
    "target": "summarize(stats_counts.login.success, \"1day\", \"sum\")",
    "datapoints": [
      [
        0,
        1435190400
      ],
      [
        1,
        1435276800
      ],
      [
        0,
        1435363200
      ],
      [
        0,
        1435449600
      ],
      [
        5,
        1435536000
      ],
      [
        16,
        1435622400
      ],
      [
        6,
        1435708800
      ],
      [
        21,
        1435795200
      ]
    ]
  }
]

请注意两个结果中存储桶的值: 1435708800 第一个结果是: 5 ,第二个结果是: 6

在第一个查询中,我试图获取上周每天的用户登录数,在第二个查询中,我试图获取昨天和今天每天的用户登录数。

这种差异的原因是什么?

更新

石墨版本:0.9.10 保留设置:

[carbon]
pattern = ^carbon\.
retentions = 60:90d

[real_time]
priority = 200
pattern = ^stats.*
retentions = 1:34560000

[stats]
priority = 110
pattern = .*
retentions = 1s:24h,1m:7d,10m:1y

尝试将 allign 添加为 true,因为它会根据时间改变它在存储桶间隔上获得的数据点数量。

默认情况下,桶是通过四舍五入到最接近的间隔来计算的。 这适用于小于一天的间隔。 例如,当间隔=1 小时时,22:32 将在 22:00-23:00 桶中结束。

传递 alignToFrom=true 将改为从 from 时间开始创建桶。 在这种情况下,22:32 的存储桶取决于起始时间。 如果 from=6:30,那么 22:32 的 1 小时时段是 22:30-23:30。

“总结(ex.cpe.ex.xxx,'30s','avg',真)”

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM