Redesign and implement UsagePing classes and modules
Discussion from sync meeting (April 6, 2021) for #270966 (closed)
Should not raise the exceptions for the users and instance and tracking and counting errors for usage data. [Important]
Not infecting codebase with fallback values. Keep fallback logic to usage data. Design standard lib with exceptions and not fallback logic.
Redesign HLL Class, should have non-client-like calls. (Move only fallback logic back to usage data)
-> Split apart and implement unique events HLL class.
Raise errors for test and development and not in production for tracking individual events.
Ensure aggregate and merge Redis HLL keys, a single key failing should not taint other metrics. Be mindful about implementing this to avoid wrong computation for UsagePing.
We need to add some details about the required changes, iterate on the implementation, and groom this issue to break it into smaller deployable issues.