Prometheus
A Prometheus sink Firehose (SINK_TYPE=prometheus) requires the following variables to be set along with Generic ones.
SINK_PROM_SERVICE_URL
Defines the HTTP/Cortex endpoint of the service to which this consumer should POST data.
- Example value:
http://localhost:9009/api/prom/push - Type:
required
SINK_PROM_REQUEST_TIMEOUT_MS
Defines the connection timeout for the request in millis.
- Example value:
10000 - Type:
required - Default value:
10000
SINK_PROM_MAX_CONNECTIONS
Defines the maximum number of HTTP connections with Prometheus.
- Example value:
10 - Type:
optional - Default value:
default no more than 2 concurrent connections per given route and no more 20 connections
SINK_PROM_RETRY_STATUS_CODE_RANGES
Defines the range of HTTP status codes for which retry will be attempted.
- Example value:
400-600 - Type:
optional - Default value:
400-600
SINK_PROM_REQUEST_LOG_STATUS_CODE_RANGES
Defines the range of HTTP status codes for which the request will be logged.
- Example value:
400-499 - Type:
optional - Default value:
400-499
SINK_PROM_HEADERS
Defines the HTTP headers required to push the data to the above URL.
- Example value:
Authorization:auth_token, Accept:text/plain - Type:
optional
SINK_PROM_METRIC_NAME_PROTO_INDEX_MAPPING
The mapping of fields and the corresponding proto index which will be set as the metric name on Cortex. This is a JSON field.
- Example value:
{"2":"tip_amount","1":"feedback_ratings"}- Proto field value with index 2 will be stored as metric named
tip_amountin Cortex and so on
- Proto field value with index 2 will be stored as metric named
- Type:
required
SINK_PROM_LABEL_NAME_PROTO_INDEX_MAPPING
The mapping of proto fields to metric lables. This is a JSON field. Each metric defined in SINK_PROM_METRIC_NAME_PROTO_INDEX_MAPPING will have all the labels defined here.
- Example value:
{"6":"customer_id"} - Type:
optional
SINK_PROM_WITH_EVENT_TIMESTAMP
If set to true, metric timestamp will using event timestamp otherwise it will using timestamp when Firehose push to endpoint.
- Example value:
false - Type:
optional - Default value:
false
SINK_PROM_PROTO_EVENT_TIMESTAMP_INDEX
Defines the proto index of a field that can be used as the timestamp.
- Example value:
2 - Type:
required (if SINK_PROM_WITH_EVENT_TIMESTAMP=true)