Search code examples
prometheusstatsd

counter and timer with the same pattern do not work (Prometheus)


I've faced with a problem that I'm using counters and timers with the same metric name:

my.controller.action:305|ms
my.controller.action:2|c

Created a mapping like this:

mappings:
- match: "my.*.*"
  name: "my_timers"
  observer_type: summary
  labels:
    controller: "$1"
    action: "$2"
- match: "my.*.*"
  name: "my_counters"
  labels:
    controller: "$1"
    action: "$2"

But this mapping works only for timers - the first matching mask.

statsd-exporter I use for moving from Graphite to Prometheus.
But Gpaphite backend for Statsd works fine, it differs counters and timers.
Is there any way to do the same in statsd-exporter without changing metric strings?


Solution

  • In case someone will face the same issue the solution is pretty simple:

    add in mapping.config the following line for counters match_metric_type: counter, for timers match_metric_type: observer.