- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个应用程序,它通过statsd向 Graphite 发布许多统计信息。每当服务接收到一条消息时,其中一个统计信息就会简单地向statsd发送一个统计增量。我需要显示一个图表,显示此统计信息随时间推移的相对流量。一般而言,我应该能够显示一个图表,该图表每隔10秒刷新一次,并显示这10秒内收到的邮件数量以及给定时间段内的历史记录。但是,无论我如何格式化API查询,我似乎都无法获得准确的数据。我已经阅读了许多文章,其中包括:
http://code.hootsuite.com/accurate-counting-with-graphite-and-statsd/
这似乎可以提供一些很好的见解,但仍然不能完全满足我的需求。这是我关闭的时间:
积分(hitcount(stats.receiveved,“10seconds”))
但是,我不喜欢这样做的累加结果,当我运行它时,我得到的统计数据与我收到的消息的日志中所看到的相差甚远。我可以接受一些数据包丢失,但我们谈论的是数量级。我知道我做错了。只是希望有人可以给我一些见识。
最佳答案
要检查/尝试的几件事:
为Statsd配置 Graphite
检查并确保您已使用Graphite中的retention schema和aggregation设置,这些设置与Statsd发送数据的方式匹配(即,每10秒刷新间隔发送一个数据点)。
运行单个Statsd聚合器
确保只运行一个Statsd实例,因为运行多个statsd守护程序会导致指标下降(因为Graphite将配置为仅存储一个数据点,因为10s:6h
的精度最高)
将UI或URL API中的时间范围限制为少于6小时
当显示的数据超过6小时阈值(例如,从现在到7小时之前)的图形时,您将开始看到所显示图形的值(value)1分钟的汇总计数数据(如果您已使用retentions = 10s:6h,1min:7d,10min:5y
为statsd配置了Graphite)。汇总将基于时间范围内最早的数据点发生(例如,直到7天以上=您将获得10分钟的汇总)。
如果发送稀疏或“突发”数据并显示旧时间范围(触发聚合)
确认您的xFilesFactor足够低,以至于即使产生很高的空值率,聚合也会产生非空值。例如,在前10秒钟内有100个请求,而在一分钟内剩余的50秒钟内没有一个请求,将导致存储100, null, null, null, null, null
,如果XFilesFactor高于1/6,则在数据老化时,其合计为null。使用statsd推荐的 Graphite 配置可以解决此问题,但是很高兴知道...,因为这样可能会导致丢失数据的情况出现。
保存架构或聚合更改
如果在存储任何度量后(以低语= Graphite 的存储)更改了 Graphite 模式或聚合设置,则需要删除该度量的.wsp文件( Graphite 将重新创建它们)或运行whisper-resize.py
。
验证设置
您可以通过在.wsp文件上运行whisper-info.py来针对某些耳语数据验证设置。在/graphite/storage/whisper/中找到其中一个指标的.wsp文件
运行:whisper-info.py my_metric_data.wsp
。 whisper-info.py的输出应该告诉您有关存储设置如何工作的更多信息。
TLDR;
您应确保将Graphite设置为每10秒间隔为来自StatsD的指标存储一个数据点。您应确保Graphite对来自Statsd的计数数据求和(而不是求平均值)。可以使用推荐的Statsd configuration settings处理这两种情况。不要运行多个Statsd聚合器。使用UI时,将返回的数据限制为少于6小时,或者在查看超过保留阈值的数据时了解正在查看的汇总。最后,确保设置正确(如果您已经在发送指标)。
关于graphite - 难以从 Graphite 中获取准确的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18476140/
有没有办法简单地显示选定时间段内值的变化?我感兴趣的是最后一个值与初始值相比的偏移量。在一段时间内,这些值可能会高于和低于这些值,这并不是真正相关的(并且在我的情况下是异常(exception))。
我目前正在使用 Ganglia 收集监控指标,我想使用 Graphite 显示包含该数据的图表。我知道这样的集成是可能的,我找到了 article描述应该如何做。我不太确定这种集成是如何工作的,尤其是
我已经在专用的 Ubuntu 服务器上安装了 Graphite,它正确地收集了自己的系统性能数据,例如cpu 使用率 和 load_avg 并将其发送到 Carbon,然后我可以在 Graphite
我们需要收集多个服务器和业务流程上的时间序列信息,并考虑使用 Graphite 。如果我们想显示原始数据似乎很好。但是,如果我们想对这些数据进行 BI 并运行自定义查询怎么办? Graphite 是否
让我们想象一下我在 Graphite 中有这个查询: level1.level2.*.level4.count 我希望我的别名是level is: level3 但我找不到路。 看完graphite
假设我有一个名为 a.b.c.count 的指标.我正在尝试编写一个 python 脚本来读取度量的最新值 a.b.c.count在 Graphite 中。 我浏览了文档并发现我们可以使用 curl
我有一个应用程序,它通过statsd向 Graphite 发布许多统计信息。每当服务接收到一条消息时,其中一个统计信息就会简单地向statsd发送一个统计增量。我需要显示一个图表,显示此统计信息随时间
前段时间我用 nginx 部署了 Graphite ,有厨师,但没有卡住要安装的版本。因此,现在,尝试使用相同的配方进行安装时,由于缺少与版本相关的内容而出现错误。 我需要找到我在其他 CentOS
我们运行 etsy/statsd 节点应用程序,它每 10 秒将统计信息刷新到 carbon/whisper。如果您发送 100 个增量(计数),在前 10 秒内,graphite 会正确显示它们,例
如何将我的指标保存在根级别。当前已保存在统计层次结构下(请参阅 graphite )想要保存在顶层(Graphite)下 最佳答案 将这些设置添加到您的 statsd 配置文件中(可能类似于 /etc
我有一个计数器指标,我将其称为a.metric.count 正常绘制时,这将是一条不断增加的向上线,这没有多大用处。我想要的是显示每小时发生的事件数。 最佳答案 使用derivative函数,如下所述
我想删除 Graphite 的存储耳语数据,但 Graphite 文档中没有任何内容。 我所做的一种方法是手动删除 /opt/graphite...../whispers/stats... 中的文件。
我在网上搜索过,但找不到任何漂亮的 Graphite 模板,这些模板可以放置在 graphtemplates.conf 中,并通过在查询字符串中添加 ?template=[name] 来在图表中使用。
我正在开始检测 Web 应用程序,并使用 StatsD 收集尽可能多的相关指标。例如,以下是我当前使用的高级指标名称的一些示例: http.responseTime http.status.4xx h
在设置 Graphite 时,我不小心将保留期设置为 1800 天而不是 180 天。 '10s:6h,10min:1800d' 据我了解,现在更改保留不会清除旧数据。我不确定如何在不破坏我们拥有的所
我正在使用 Graphite 和 Collectd 来监控我的服务器。特别是,我正在使用 tail插件来计算失败的 SSH 登录。我正在为这个指标使用一个计数器,所以希望看到 1、2、3、0 等...
我正在准备重构一些Graphite指标名称,并希望能够保留历史数据。 .wsp文件是否可以重命名(如果更高级别的组件发生更改,则可以将其移动到新目录中)吗? 示例:group.subgroup1.me
我正在遵循这些说明(https://www.digitalocean.com/community/tutorials/how-to-install-and-use-graphite-on-an-ubu
每次用户连接到我的网站时,我都会发送一条消息。 使用这种格式: "user_login 1 13xxxxxxx" (key value timestamp) 我的问题是 Graphite 给我一个图
我正在玩grafana,我想创建一个面板,在其中比较一台应用服务器的数据与其他服务器的平均值。就像是: apps.machine1.someMetric averageSeries(apps.*.no
我是一名优秀的程序员,十分优秀!