如何通过Scrapy将指标发送给Prometheus?

时间:2019-01-11 16:04:16

标签: python scrapy grafana metrics prometheus

我是普罗米修斯的新手。

我还需要将刮擦的物品的数量发送到普罗米修斯,并在 Grafana 的图表上显示它们。

我安装了PrometheusScrapy-Prometheus Grafana

在Scrapy设置中,我添加

STATS_CLASS = 'scrapy_prometheus.PrometheusStatsCollector'
# Prometheus pushgateway host
PROMETHEUS_PUSHGATEWAY = 'http://0.0.0.0:9090'   
# Metric name prefix
PROMETHEUS_METRIC_PREFIX = 'scrapy_prometheus'   
# Timeout for pushing metrics to pushgateway
PROMETHEUS_PUSH_TIMEOUT = 5  
# Method to use when pushing metrics
PROMETHEUS_PUSH_METHOD = 'POST'  # default
PROMETHEUS_SUPPRESS_TYPE_CHECK = False
# job label value, applied to all metrics.
PROMETHEUS_JOB = 'scrapy' 
PROMETHEUS_GROUPING_KEY = {'instance': 'localhost'}

我这样配置Grafana的设置

enter image description here

Documentation中,我们有

  

stat foo:产生67个指标

     

scrapy_prometheus_foo {instance =“ ...”,job =“ scrapy”,spider =“ ...”} 67

我的问题是如何将已刮擦物品的数量作为指标发送给Prometheus?

1 个答案:

答案 0 :(得分:1)

通过阅读文档,看来scrapy-prometheus只是将所有统计信息发送到:

<prefix><stats name with / replaced by _>

默认前缀为scrapy_prometheus,而您要查找被抓取的商品的统计信息为item_scraped_count,因此您应该在 scrapy_prometheus_item_scraped_count 统计信息中查找,默认发送。