1- package metrics
1+ package aws
22
33import (
44 "github.com/prometheus/client_golang/prometheus"
55)
66
77const (
8- metricSubsystemAWS = "aws"
8+ metricSubSystem = "aws"
99
1010 metricAPICallsTotal = "api_calls_total"
1111 metricAPICallDurationSeconds = "api_call_duration_seconds"
@@ -31,55 +31,41 @@ type instruments struct {
3131}
3232
3333// newInstruments allocates and register new metrics to registerer
34- func newInstruments (registerer prometheus.Registerer ) ( * instruments , error ) {
34+ func newInstruments (registerer prometheus.Registerer ) * instruments {
3535 apiCallsTotal := prometheus .NewCounterVec (prometheus.CounterOpts {
36- Subsystem : metricSubsystemAWS ,
36+ Subsystem : metricSubSystem ,
3737 Name : metricAPICallsTotal ,
3838 Help : "Total number of SDK API calls from the customer's code to AWS services" ,
3939 }, []string {labelService , labelOperation , labelStatusCode , labelErrorCode })
4040 apiCallDurationSeconds := prometheus .NewHistogramVec (prometheus.HistogramOpts {
41- Subsystem : metricSubsystemAWS ,
41+ Subsystem : metricSubSystem ,
4242 Name : metricAPICallDurationSeconds ,
4343 Help : "Perceived latency from when your code makes an SDK call, includes retries" ,
4444 }, []string {labelService , labelOperation })
4545 apiCallRetries := prometheus .NewHistogramVec (prometheus.HistogramOpts {
46- Subsystem : metricSubsystemAWS ,
46+ Subsystem : metricSubSystem ,
4747 Name : metricAPICallRetries ,
4848 Help : "Number of times the SDK retried requests to AWS services for SDK API calls" ,
4949 Buckets : []float64 {0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 },
5050 }, []string {labelService , labelOperation })
5151
5252 apiRequestsTotal := prometheus .NewCounterVec (prometheus.CounterOpts {
53- Subsystem : metricSubsystemAWS ,
53+ Subsystem : metricSubSystem ,
5454 Name : metricAPIRequestsTotal ,
5555 Help : "Total number of HTTP requests that the SDK made" ,
5656 }, []string {labelService , labelOperation , labelStatusCode , labelErrorCode })
5757 apiRequestDurationSecond := prometheus .NewHistogramVec (prometheus.HistogramOpts {
58- Subsystem : metricSubsystemAWS ,
58+ Subsystem : metricSubSystem ,
5959 Name : metricAPIRequestDurationSeconds ,
6060 Help : "Latency of an individual HTTP request to the service endpoint" ,
6161 }, []string {labelService , labelOperation })
6262
63- if err := registerer .Register (apiCallsTotal ); err != nil {
64- return nil , err
65- }
66- if err := registerer .Register (apiCallDurationSeconds ); err != nil {
67- return nil , err
68- }
69- if err := registerer .Register (apiCallRetries ); err != nil {
70- return nil , err
71- }
72- if err := registerer .Register (apiRequestsTotal ); err != nil {
73- return nil , err
74- }
75- if err := registerer .Register (apiRequestDurationSecond ); err != nil {
76- return nil , err
77- }
63+ registerer .MustRegister (apiCallsTotal , apiCallDurationSeconds , apiCallRetries , apiRequestsTotal , apiRequestDurationSecond )
7864 return & instruments {
7965 apiCallsTotal : apiCallsTotal ,
8066 apiCallDurationSeconds : apiCallDurationSeconds ,
8167 apiCallRetries : apiCallRetries ,
8268 apiRequestsTotal : apiRequestsTotal ,
8369 apiRequestDurationSecond : apiRequestDurationSecond ,
84- }, nil
70+ }
8571}
0 commit comments