根据这个:https: //prometheus.io/docs/practices/instrumentation/#do-not-overuse-labels 我应该坚持每个指标不超过 10 个标签。
我正在尝试编写查询,该查询显示按其拥有的标签数量过滤的前 10 个指标。是否可以?
在Statsd客户端中,如何组合两个图形以将其显示为单个图形?

像这样?
我在编写用于绘制每日指标的聚合规则时遇到了问题。我有两台服务器正在发送度量名称作为
production.email.server_1.total_emails_sent.1h.sum production.email.server_2.total_emails_sent.1h.sum
他们每小时发送一次此指标。我可以通过添加聚合规则来找到这两个指标的总和,如下所示:
production.email.all.1h.sum (3600) = sum production.email.*.1h.sum
现在我必须使用相同的每小时指标来计算每天的总和。我想要一个名为的指标
production.email.server_1.total_emails_sent.1d.sum
我可以通过对production.email.server_1.total_emails_sent.1h.sum过去 24 小时的指标求和来找到。我怎样才能找到这个指标?
有没有办法让Graphite绘制图形req/s?
当您从nginx_status检索nginx请求时,您正在向石墨发送一个绝对值,所以我在想如果有什么方法可以获得每秒的速率?
我的理解是,derivative(series)会给你请求/分钟,但我真的可以使用requests/s.
干杯.
如何在根级别保存我的指标.目前已保存在统计信息层次结构下(参见graphite)想要保存在顶层(Graphite)
我构建了一个网络分析工具,并考虑使用Graphite.这是一个非常基本的工具,只有几个有趣的尺寸,但有一个与测量相关的维度.例如,当用户访问网站时,我想跟踪地理位置,浏览器等.度量标准名称可能是:
usa.chrome.windows8.organic...
Run Code Online (Sandbox Code Playgroud)
然后我可以使用通配符来进行有趣的查询.
是否滥用了度量标准名称(以及一般的Graphite),或者只要我只关心少量指标,这是一种好方法.
我需要向石墨查询具有几个不同目标的数据; 目前我为每个目标做一个http查询.例如:
http://graphite.example.com/render/?format=json&until=now&from=-1min&target=servers.srv231.solr.hits
http://graphite.example.com/render/?format=json&until=now&from=-1min&target=servers.srv325.solr.hits
Run Code Online (Sandbox Code Playgroud)
有没有办法在一个查询中获得两个结果?我可以这样做:
http://graphite.example.com/render/?format=json&until=now&from=-1min&target=servers.srv*.solr.hits
Run Code Online (Sandbox Code Playgroud)
但我会得到很多我不感兴趣的其他数据.
我尝试使用正则表达式,像这样,但它不起作用:
http://graphite.example.com/render/?format=json&until=now&from=-1min&target=servers.srv(231|325).solr.hits
Run Code Online (Sandbox Code Playgroud)
在文档中,他们没有提到正则表达式和通配符,但他们在示例中使用通配符. http://graphite.readthedocs.org/en/0.9.10/render_api.html
有没有办法实现我的目标?
我正在尝试使用以下代码将纯文本数据发送到石墨服务器:
try (
Socket socket = new Socket("companyHost", 2003);
Writer writer = new OutputStreamWriter(socket.getOutputStream());) {
Long timestamp = System.currentTimeMillis() / 1000;
System.out.println(timestamp);
String sentMessage = "graphite.carbon.local.test.showone 1 " + timestamp;
System.out.println(sentMessage);
writer.write(sentMessage);
writer.flush();
} catch (IOException e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
但是当我在我的网络浏览器中查看companyHost:port下的碳服务器时,我的数据不存在,在graphite.carbon.local下没有任何内容.我错过了什么吗?
我在控制台中的输出似乎没问题(没有错误/异常):
1409233165
graphite.carbon.local.test.showone 1 1409233165
Run Code Online (Sandbox Code Playgroud)
如果必要,我会尝试提供更多信息.
我正在尝试根据这个项目设置石墨与docker中的grafana一起工作:https://github.com/kamon-io/docker-grafana-graphite
当我运行我的dockerfile时,我得到了nginx的403 Forbidden错误.
我对nginx的配置几乎与项目的配置相同.我在服务器上运行dockerfiles并在我的Windows机器上测试它们.所以配置并不完全相同......例如我有:
server {
listen 80 default_server;
server_name _;
location / {
root /src/grafana/dist;
index index.html;
}
location /graphite/ {
proxy_pass http:/myserver:8000/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header Host $host;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
add_header Access-Control-Allow-Origin "*";
add_header Access-Control-Allow-Methods "GET, OPTIONS";
add_header Access-Control-Allow-Headers "origin, authorization, accept";
}
Run Code Online (Sandbox Code Playgroud)
但我仍然继续禁止403.检查nginx的错误日志说:
directory index …Run Code Online (Sandbox Code Playgroud) 我能够遵循这里几乎所有的指示
但是当我到达时
[idf@node1 graphite]$ cd /opt/graphite/webapp/graphite/
[idf@node1 graphite]$ sudo python manage.py syncdb
Could not import graphite.local_settings, using defaults!
/opt/graphite/webapp/graphite/settings.py:244: UserWarning: SECRET_KEY is set to an unsafe default. This should be set in local_settings.py for better security
warn('SECRET_KEY is set to an unsafe default. This should be set in local_settings.py for better security')
ImportError: No module named fields
[idf@node1 graphite]$
Run Code Online (Sandbox Code Playgroud)
不知道为什么我收到此错误?
我也试过这些说明,它大约挂在同一个地方
[idf@node1 graphite]$ sudo PYTHONPATH=/opt/graphite/webapp/ django-admin.py syncdb --settings=graphite.settings
/var/tmp/sclHwyLM6: line 8: PYTHONPATH=/opt/graphite/webapp/: No such file or directory …Run Code Online (Sandbox Code Playgroud)