Skip to main content

Session data

Each session carries a lightweight snapshot of the device it ran on.

You're viewing the Web docs. Other platforms →   iOS  Android  React Native  Flutter 

What's included​

Every session sent to Shake includes:

  • Device type
  • Browser name and version
  • OS name and version
  • Locale
  • Timezone
  • App version
  • Device orientation
  • Screen width and height
  • Network type

Since web apps don't have a built-in versioning system, App version comes from the optional second argument to Shake.start() — it defaults to "1.0.0" if you don't pass one.

If you've set any custom key-value data with Shake.setMetadata, it's included as well.

note

This is a lighter snapshot than the one attached to bug reports — some device details are only collected when a user actually submits a ticket.

Crash detection​

If your app crashes, or an unhandled JavaScript error occurs, Shake records that the session ended in a crash. This happens automatically — it's used purely to mark the session's end reason, not to generate a crash report.

Because crashes tend to happen moments after launch, a session that ended in a crash is reported even when it was shorter than the 5-second minimum that normally applies.