天道酬勤,学无止境

graphite

Deleted/Empty Graphite Whisper Files Automatically Re-Generating

I am trying to delete some old graphite test whisper metrics without any success. I can delete the metrics by removing the files. (See: How to cleanup the graphite whisper's data? ) But, within a few seconds of blowing away the files they regenerate (they are empty of metrics and stay that way since nothing is creating new metrics in those files). I've tried stopping carbon (carbon-cache.py stop) before deleting the files, but when I restart carbon (carbon-cache.py --debug start &) they just come back. How do I permanently delete these files/metics so they never come back?

2021-11-28 09:35:35    分类:问答    graphite   statsd

Getting accurate graphite stats_counts

We have etsy/statsd node application running that flushes stats to carbon/whisper every 10 seconds. If you send 100 increments (counts), in the first 10 seconds, graphite displays them properly, like: localhost:3000/render?from=-20min&target=stats_counts.test.count&format=json [{"target": "stats_counts.test.count", "datapoints": [ [0.0, 1372951380], [0.0, 1372951440], ... [0.0, 1372952460], [100.0, 1372952520]]}] However, 10 seconds later, and this number falls to 0, null and or 33.3. Eventually it settles at a value 1/6th of the initial number of increments, in this case 16.6. /opt/graphite

2021-11-27 16:11:49    分类:问答    graphite   statsd

Graphite Graph - 我们更新图表的速度有多快?(Graphite Graph - how fast can we update the graph?)

问题 我们正在尝试将 Graphite 用于(近)实时图形网络系统。 然而,我们似乎无法将石墨加速到 1 秒以上的更新率。 最终我们希望有 100 毫秒的更新 通过阅读常见问题解答,它听起来像石墨很快 - 但这要么非常具有误导性,要么我不了解如何加速石墨 耳语的计时信息似乎使用 UNIX 时间戳 Graphite 的可扩展性如何? 从 CPU 的角度来看,Graphite 在前端和后端都可以水平扩展,这意味着您可以简单地向组合中添加更多机器以获得更多吞吐量。 从某种意义上说,它也是容错的,丢失后端机器将导致最小量的数据丢失(无论该机器在内存中缓存了什么),并且如果您有足够的剩余容量来处理负载,则不会中断系统。 从 I/O 的角度来看,在负载下 Graphite 非常快速地对许多不同的文件执行许多微小的 I/O 操作。 这是因为发送到 Graphite 的每个不同的指标都存储在其自己的数据库文件中,类似于构建在 RRD 工作之上的工具(drraw、Cacti、Centreon 等)的数量。 事实上,Graphite 最初确实使用 RRD 进行存储,直到出现需要新存储引擎的基本限制。 高容量(每分钟更新几千个不同的指标)几乎需要一个好的 RAID 阵列。 如果磁盘跟不上发生的大量小写操作(每个数据点只有几个字节,但大多数磁盘每秒不能做超过几千个 I/O 操作,即使它们很小)。

2021-11-27 07:09:14    分类:技术分享    graph   graphite   graphite-carbon   wwwhisper

how to get least possible count on graphite graph

require 'statsd' statsd = Statsd.new('localhost', 8125).tap{|sd| sd.namespace = 'account'} 1.times do statsd.increment 'hitcount4' end sleep 5 5.times do statsd.increment 'hitcount4' end sleep 10 10.times do statsd.increment 'hitcount4' end i am using ruby gem statsd-ruby i ran the above script it executes successfully, and the graph appears but i can just see the a line over the x-axis and nothing (no value for y-axis), how to get the graph for above script? i want to record each increment call. contents of /opt/graphite/statsd/local.js { graphitePort: 2003 , graphiteHost: "127.0.0.1" , port

2021-11-24 09:59:20    分类:问答    ruby   graphite   statsd

Graphite Graph - how fast can we update the graph?

We are trying to use Graphite for a (near) real-time graphing web system. However we cannot seem to speed graphite faster than 1 second update rates. Ultimately we would like to have 100ms updates From reading the FAQ it makes it sound like graphite is fast - but this is either very misleading or I am not understanding how to speed up graphite the timing information for whisper appears to use UNIX time stamps How scalable is Graphite? From a CPU perspective, Graphite scales horizontally on both the frontend and the backend, meaning you can simply add more machines to the mix to get more

2021-11-23 17:17:37    分类:问答    graph   graphite   graphite-carbon   wwwhisper

Graphite/Carbon how to get per-second metrics

I've dockerized graphite and am working with this library to get metrics from an Apache Storm topology. I'm getting metrics data, but no matter what I do I can only get data per minute where I really need the points to be per second. As per this SO post I've set the retention policy to grab data every second. I've also set conf.put("topology.builtin.metrics.bucket.size.secs", 1); and void initMetrics(TopologyContext context) { messageCountMetric = new CountMetric(); context.registerMetric("digest_count", messageCountMetric, 1); } in the class that's setting up the topology and the bolt itself

2021-11-23 06:43:28    分类:问答    java   apache-storm   metrics   graphite

你如何将石墨指向内存缓存(how do you point graphite to memcache)

问题 我有一个石墨实例,我想使用 memcache 服务器从缓存中读取。 我做了这些: 在 192.168.101.1 上安装了 memcached 在服务器 192.168.101.2 上安装了石墨和 python-memcached 我验证了石墨网络应用程序使用 opentsdb 作为后端存储工作。 这是我的 local_settings.py 看起来像: SECRET_KEY = 'pass123' TIME_ZONE = 'America/New_York' DEBUG = True MEMCACHE_HOSTS = ['192.168.101.2:11211'] DATABASES = { 'default': { 'NAME': '/opt/graphite/storage/graphite.db', 'ENGINE': 'django.db.backends.sqlite3', 'USER': '', 'PASSWORD': '', 'HOST': '', 'PORT': '' } } # STORAGE_FINDERS = ( 'graphite_opentsdb.finder.OpenTSDBFinder', ) OPENTSDB_URI = 'http://192.168.101.17:4242/api/v1/' OPENTSDB_TREE = 1 CACHES

2021-11-20 05:11:48    分类:技术分享    django   memcached   graphite

石墨:时间每点精度(Graphite: time per point precision)

问题 是否可以以毫秒精度存储每个点的时间? 由于 Graphite 基于 Whisper,因此我查看了whisper.py 文件。 它包含了: UnitMultipliers = { 's' : 1, 'm' : 60, 'h' : 60 * 60, 'd' : 60 * 60 * 24, 'y' : 60 * 60 * 24 * 365, } 所以似乎可以记录最大精度为 1s 的事件。 我如何应对每 10 毫秒产生一个事件的系统? 回答1 您可以将数据发送到 carbon-aggregator 守护进程或 Statsd。 它们都是聚合器,因此它们会聚合毫秒数据并将其写入每秒值。 对于 carbon-aggregator,您必须根据您希望收集数据的方式配置聚合器:sum、avg 等。对于 Statsd,api 调用确定使用的聚合,因此您不必预先配置它。 回答2 鉴于 Graphite 无法以 10 毫秒的间隔存储指标,您可以尝试将数据发送到 statsD 系统。 然后将指标从 statsD 刷新到石墨。 您可以在 github.com 上找到 statsD 代码 codeascraft.etsy.com 上的 statsD 简介

2021-11-15 14:54:11    分类:技术分享    python   graphite

Graphite(耳语)指标可以别名吗?(Can Graphite (whisper) metrics be aliased?)

问题 有一个名为别名的函数,我尝试如下 http://myhost:80/render?target=alias(my.src.metrics.endTime,"my.target.metrics.success_endTime") 但是,我想创建my.target.metrics.success_endTime石墨持久my.src.metrics.endTime 。 这样my.src...下的新值也可以通过my.target... 。 回答1 但是,您不能在 Graphite 的 UI (webapp) 中配置持久别名,您可以在文件系统上创建符号链接,其行为类似于别名 ./graphite/whisper/my$ ll drwxr-xr-x 6 graphite graphite 4096 Dec 28 2016 src/ ./graphite/whisper/my$ ln -s src target ./graphite/whisper/my$ ll drwxr-xr-x 6 graphite graphite 4096 Dec 28 2016 src/ lrwxrwxrwx 1 root root 4 Dec 28 2016 target -> src/ 路径my.target.*将是可找到的。 其他解决方案是使用不同的前端/仪表板 UI,如 Grafana 并使用变量 -

2021-11-12 20:08:12    分类:技术分享    alias   graphite   whisper

运行 manage.py migrate 但没有在graphite.db中创建account相关表(Run manage.py migrate but no accout related tables created in graphite.db)

问题 我正在 Ubuntu Server 16.04 LTS 上安装石墨 0.9.15。 在配置步骤期间 cd /opt/graphite/webapp/graphite sudo cp local_settings.py.example local_settings.py 然后使用官方安装说明中的命令: 须藤 PYTHONPATH=/opt/graphite/webapp/ python manage.py migrate --settings=local_settings 提供资料 要执行的操作: 应用所有迁移:(无) 运行迁移: 无需迁移。 然后我去查了graphite.db sqlite3石墨.db SELECT name FROM sqlite_master WHERE type='table'; 只创建了两个表,django_migrations 和 sqlite_sequence,没有账户相关的表。 在 apache 错误日志中,/opt/graphite/storage/log/webapp/error.log, OperationalError: no such talbe: auth_user.log 这是因为缺少那些帐户表。 一些信息:ubuntu 16.04 LTS python2.7.11 Django 1.9.6 Django 标记 0.4.3 耳语,碳

2021-11-12 15:03:20    分类:技术分享    django   graphite   migrate   manage.py