如何通过 Scrapy 将指标发送到 Prometheus?
How to send Metrics via Scrapy to Prometheus?
我是 Prometheus 的新手。
我也需要将抓取的项目数量发送到 Prometheus 并在 Grafana 中的图表上显示它们。
我安装了Prometheus, Scrapy-Prometheus, and 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的设置我是这样配置的
在Documentation中我们有
stat foo: 67 whill produce metric
scrapy_prometheus_foo{instance="...",job="scrapy",spider="..."} 67
我的问题是如何将抓取的项目数量作为指标发送给 Prometheus?
从阅读文档看来 scrapy-prometheus
只是将所有统计数据发送到:
<prefix><stats name with / replaced by _>
默认前缀为 scrapy_prometheus
,您正在寻找已抓取物品的统计数据为 item_scraped_count
,因此您应该寻找 scrapy_prometheus_item_scraped_count
stat,它应该默认发送。
我是 Prometheus 的新手。
我也需要将抓取的项目数量发送到 Prometheus 并在 Grafana 中的图表上显示它们。
我安装了Prometheus, Scrapy-Prometheus, and 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的设置我是这样配置的
在Documentation中我们有
stat foo: 67 whill produce metric
scrapy_prometheus_foo{instance="...",job="scrapy",spider="..."} 67
我的问题是如何将抓取的项目数量作为指标发送给 Prometheus?
从阅读文档看来 scrapy-prometheus
只是将所有统计数据发送到:
<prefix><stats name with / replaced by _>
默认前缀为 scrapy_prometheus
,您正在寻找已抓取物品的统计数据为 item_scraped_count
,因此您应该寻找 scrapy_prometheus_item_scraped_count
stat,它应该默认发送。