ssv icon indicating copy to clipboard operation
ssv copied to clipboard

Rethink the bucket size for duties

Open selfuryon opened this issue 1 year ago • 0 comments

Is your feature request related to a problem? Please describe. The current bucket size for ssv/ethereum duties is unproportional and doesn't fit Ethereum duties very well. For example, ssv_validator_duty_full_flow_duration_seconds metric has bucket list {0.02, 0.05, 0.1, 0.2, 0.5, 1, 5} and I have around 30-40% of all items in the bucket [1-5].

The problems:

  • If attestation is later than 4s, it's too late, I don't think it's good to count it together with valid attestations
  • the big interval [1-5] influences quantiles (moves them to the right edge) because of linear distribution assumption
  • attestation duties perform in [0-4] interval, and the metrics cover [0-1] interval (25% of the interval) by 5 buckets, but the last one (75% of the interval) is covered by only one bucket.

This bucket sizes should be done in the same way for all duties I think, not only for attestations.

Describe the solution you'd like To use the same step in buckets which will cover the whole interval in a proportional way like this, but maybe make [4-5] interval less populated.

Describe alternatives you've considered Leave as is and don't care about everything more than 1s.

Additional context I tried to analyze ssv_validator_duty_full_flow_duration_seconds metrics, but I realized I had 30-40% of all items in the [1-5] bucket which influences accuracy significantly.

selfuryon avatar Jun 03 '24 21:06 selfuryon