seastar icon indicating copy to clipboard operation
seastar copied to clipboard

Dynamic metric aggregation

Open nvartolomei opened this issue 1 year ago • 0 comments

In Seastar, metrics can be defined with implicit aggregation by specific labels, which occurs at query time. This feature is useful, for instance to define metrics per shard or even more finely grained per an application-defined entity while reporting them in a more aggregated manner, such as sum or histogram per server.

However, there are times when it is necessary to inspect the fine-grained metrics. I'm sending a PR to allow disabling this aggregation and get the "raw" metrics by adding __aggregate__=false to the query string. https://github.com/scylladb/seastar/pull/2219


Separately, what do we think about adding dynamic aggregation capabilities.

E.g.

  • aggregate[query_latency]=false to disable aggregation just for query_latency metric
  • aggregate[query_latency]=-table to remove table label from aggregation; i.e. report metric per database table
  • etc.

Thoughts?

@amnonh @StephanDollberg

nvartolomei avatar May 04 '24 21:05 nvartolomei