My code uses @mixpanel.append almost exclusively for tracking events (with persist = true), so that they always fire client-side. It works great until either too many append's get called in a row or somehow the client gets stuck and their queue never clears. This eventually leads to their cookie filling up, and then they get a ActionDispatch::Cookies::CookieOverflow from too many Mixpanel events stored in the session. Unfortunately the user can't get out of this issue unless they clear their session.
I think the queue that stores client-side events should have an option to limit it's size, since the session cookies those queue'd events get stored in have a size limit.
My code uses @mixpanel.append almost exclusively for tracking events (with persist = true), so that they always fire client-side. It works great until either too many append's get called in a row or somehow the client gets stuck and their queue never clears. This eventually leads to their cookie filling up, and then they get a ActionDispatch::Cookies::CookieOverflow from too many Mixpanel events stored in the session. Unfortunately the user can't get out of this issue unless they clear their session.
I think the queue that stores client-side events should have an option to limit it's size, since the session cookies those queue'd events get stored in have a size limit.