heap
heap copied to clipboard
Asynchronous backend tracking
It looks like the backend event tracking is done synchronously and does not support grouping. Do you plan on supporting a queue?
Hi @karellm Thats a great suggestion. I currently don't have the time, but I'm happy to accept (and support) a pull request if you want to code this up.
When you talk about "grouping" do you mean batching multiple events into one API call? If so, is it even possible? (I ask, as can't see anything relating to this in Heap's API docs https://heapanalytics.com/docs/server-side)
I think the intention would be to be able to queue the server-side call (e.g. DelayedJob) and have a worker take care of it. Currently, if you implement a server side activity as a result of a http request, it will first finish the whole http request with heap, before returning a response to the final user.
Even though in most cases you would either go through the user, and have the server-side requests done by a worker. I'd like to add this to the gem, for those situations where someone feels the need to schedule a server-side request as a direct result of a user interaction.
Both would be nice. Both sending multiple events in a bulk and sending those bulks asynchronously. I would definitely say that asynchronous is the most important but is rather easy to overcome on a per app basis (we use sidekiq).