You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
RP should emit statsd metrics (compatibility with geneva).
We have 2 ways to achieve this goal:
export all metrics using statsd
export all metrics using prometheus and convert to statsd using same way as we did inV3
Prometheus pros:
1. Wider adoption
2. Easier orchestration
3. RH stack compatibility
4. Easier future integration
Prom cons:
1. Percentiles computation may not give an overall picture as percentiles are calculated at each instance level, not at global level.
2. More memory is used as the metrics are locally stored in application memory.
Statsd pros:
1. Aggregation at the server level
2. Easy to implement (straight forward-protocol)
3. Percentiles and histograms are calculated on server-side relatively less overhead in the client application.
Statsd cons:
1. Compatibility
2. Local testing will be harder (with Prometheus we can run an instance of Prometheus and scrape and test/validate or just curl /metrics). With statsd we will need to send metrics to "sink" for testing `nc -u -w0 127.0.0.1 8125`
RP should emit statsd metrics (compatibility with geneva).
We have 2 ways to achieve this goal:
StatsD client example: https://github.com/statsd/statsd/blob/master/examples/go/statsd.go
https://godoc.org/github.com/etsy/statsd/examples/go
The proposal would be to create subpackage
pkg/metrics
with methods to record different metrics with configured dimensions/tags.By initiating RP some dimensions would need to be provided. Like
region
,name
,location
.Metrics recording would be recorded as statsD as example below:
Examle metrics:
Proposed metrics:
Where we use dymensions to add metadata like:
rp_ame
,location
,region
,environement
@jim-minter @m1kola @asalkeld WDYT?
The text was updated successfully, but these errors were encountered: