feat(store) Add option to transition post_process to cache keys (#20487)
feat(store) Add option to transition post_process to cache keys (#20487)

The store post_process task currently takes the entire event as
a parameter to the task. This puts a lot of weight into RabbitMQ
messages. The other steps of processing pass a cache key around and
fetch the actual data out of the eventprocessing store backed by redis.

This option will be used to cutover to only sending the cache_key
instead of sending both the cache_key and the event in the celery task
parameters. Stages of this transition would be:

1. Add cache_key parameter to post_process task. The value would be None.
2. Pass both the cache_key and event parameter to post_process. If the
   event is None, fetch the event from the processing store, if the
   cache key had expired we could fallback to nodestore so that
   post_process doesn't fail.
3. When the option is enabled, the event parameter would no longer
   be sent to post_process and only the cache path would be used based
   on the 'dice roll'.
4. Once the option is at 1.0 we would remove the event parameter an
   option checking path entirely.

Related to https://www.notion.so/sentry/Sending-Events-to-Redis-for-Post-Processing-96ab185cf3084a5ab3a7b90c94669ced
beeftornado/sentry,beeftornado/sentry,beeftornado/sentry