50 lines
1.3 KiB
Go
50 lines
1.3 KiB
Go
package metrics
|
|
|
|
import (
|
|
"github.com/prometheus/client_golang/prometheus"
|
|
"github.com/prometheus/client_golang/prometheus/promauto"
|
|
)
|
|
|
|
var metricsBuckets = []float64{5, 10, 20, 50, 100, 250, 500, 1000, 2500, 5000, 10000, 20000, 30000, 60000}
|
|
|
|
var ApiRequestCounter = promauto.NewCounterVec(
|
|
prometheus.CounterOpts{
|
|
Name: "cybertron_api_request_total",
|
|
Help: "api request counter",
|
|
},
|
|
[]string{"url", "response_code"},
|
|
)
|
|
|
|
var ErrorConsumerCounter = promauto.NewCounterVec(
|
|
prometheus.CounterOpts{
|
|
Name: "cybertron_error_consumption_counter_total",
|
|
Help: "counter for number of error consumed by cybertron",
|
|
},
|
|
[]string{"project_id"},
|
|
)
|
|
var ApiRequestLatencyHistogram = promauto.NewHistogramVec(
|
|
prometheus.HistogramOpts{
|
|
Name: "cybertron_api_request_latency_histogram",
|
|
Help: "api latency histogram",
|
|
Buckets: metricsBuckets,
|
|
},
|
|
[]string{"url", "response_code"},
|
|
)
|
|
|
|
var HttpCallRequestCounter = promauto.NewCounterVec(
|
|
prometheus.CounterOpts{
|
|
Name: "cybertron_http_call_request_total",
|
|
Help: "http call request counter",
|
|
},
|
|
[]string{"url", "response_code"},
|
|
)
|
|
|
|
var HttpCallRequestLatencyHistogram = promauto.NewHistogramVec(
|
|
prometheus.HistogramOpts{
|
|
Name: "cybertron_http_call_request_latency_histogram",
|
|
Help: "http call latency histogram",
|
|
Buckets: metricsBuckets,
|
|
},
|
|
[]string{"url", "response_code"},
|
|
)
|