DiceDB / dice

DiceDB is a redis-compliant, reactive, scalable, highly-available, unified cache optimized for modern hardware.
https://dicedb.io/
Other
6.83k stars 1.08k forks source link

Design latency monitoring for DiceDB #1135

Open JyotinderSingh opened 1 month ago

JyotinderSingh commented 1 month ago

We need to support the different LATENCY commands which redis supports. This requires quite a few changes to the codebase.

Your task as a part of this issue would be to design a latency monitoring approach for dicedb, the approach should allow us to serve all the different latency commands:

JyotinderSingh commented 1 month ago

@swarajrb7 would you be interested in taking this up?

swarajrb7 commented 1 month ago

Yes

JyotinderSingh commented 1 month ago

Hey, it may be good to discuss the design before you begin working on the implementation. We need to ensure this does not introduce any performance regressions on the critical path. Feel free to let us know on discord if you'd like to discuss this in a larger group.

swarajrb7 commented 1 month ago

I am researching on how this is implemented in Redis. I do have some questions about it. I will let you know as soon as possible. @JyotinderSingh

swarajrb7 commented 4 weeks ago

@JyotinderSingh can we discuss this today? i have send a message on discord channel

swarajrb7 commented 3 weeks ago

I am attaching a file in which i have written down my observation and my queries. Please take a look and give me suggestions/improvement to make. Latency Monitoring in DiceDB.md @apoorvyadav1111 @JyotinderSingh @AshwinKul28 @lucifercr07

gauravsarma1992 commented 5 days ago

@swarajrb7 Can you also take a look at Opentelemetry SDK for Golang? https://opentelemetry.io/docs/languages/go/instrumentation/#metrics Being able to support Opentelemetry would allow us to be compatible with a lot of vendors out of the box and has support for common use cases like histograms, medians, percentiles, etc.

swarajrb7 commented 3 days ago

@gauravsarma1992 okay