You've had an opportunity to review our development phases for this priority, as well as review greater design detail. Let us know if you think we're on the right track.
One possible improvement to support event sequencing is to include milliseconds in the event time. That would be a useful improvement. An additional improvement that might support more precise sequencing would be to include an identifier of the previous event. Personally, I'm primarily interested the sequence of navigation events, and it would be a helpful feature to include something that could be interpreted as something like a "NavigatedFrom" field.
Including client_ip would be a great improvement, which might allow us to estimate a user's local time. But this would require us to maintain IP-to-geoLocation and geoLocation-to-timeZone lookup tables, which would be a pretty difficult effort. I wonder whether it would be possible to just include the user's local time zone in the event structure? It would be optimal if Canvas were able to record the user's local system time directly from the browser. (And while I'm asking: could the browser also return geolocation data for the user that could be included in the event?)
Retrieving data ...