open-telemetry / opentelemetry-specification

Specifications for OpenTelemetry
https://opentelemetry.io
Apache License 2.0
3.73k stars 888 forks source link

Add support for redis list lengths #2877

Open hughesjj opened 2 years ago

hughesjj commented 2 years ago

What are you trying to achieve? It would be nice to support the LLen function in redis. To use a common language, supporting list lengths would increase our coverage of the "Saturation" golden observability signal in redis clusters.

I do not believe this metric should be turned "on" by default.

Additional context.

Of course, there's always a catch -- to get a list length, you need to specify a key. To specify a key, you need to know it ahead of time. This means one of two things

  1. A customer needs to manually specify every key
  2. We need to figure out what keys to check on the fly

To my understanding, we do not support "live re-loading" of configuration, so #1 could be fairly arduous if they wish to enforce some policy like "let's monitor any key with a prefix of prod- or fooservice-". Redis supports a way to grab keys matching a pattern on the fly, but if we decide to allow wildcarding in the configuration, we need to be careful w.r.t throughput and errors (the returned keys may not all be lists).

The list_lengths metric should not be enabled by default, given the only sane default would be to glob every key via * (and thus a likely significant load).

Note that this new configuration for tracking list lengths would take in a list.

rbailey7210 commented 2 years ago

We need experts to chime in. Please consider raising in the semantic convention group with @jsuereth