close
Skip to main content
Image

r/rrweb


How to properly add session replays to the OpenTelemetry format (frontend & mobile)
How to properly add session replays to the OpenTelemetry format (frontend & mobile)
How to properly add session replays to the OpenTelemetry format (frontend & mobile)

Hi,

This is a legit question and I'm not promoting anything, won't even mention the name of the thing I'm working on.

I've built an observability tool, for the backend integrations I've used OpenTelemetry as the protocol (so that any otel collector can just be pointed to it and it works). My question is about the frontend/mobile side. Basically I'm working on a Sentry replacement for the frontend/mobile where it captures exceptions and their screen recordings, logs, networking calls, etc.. but I've done it with a custom protocol.

My question is how do I fit this into the open telemetry standard protocol?

I am planing on having a top level span with attributes describing the device/browser, the logs would also be trivial w otel, but what about session replays and page navigations? Those could either be spans or attributes, I guess the session replay could be an attribute (a huge json?) and then each "action" like a page navigation as maybe a span... is this how you'd do this?

upvotes comments


Built an open-source session recording tool with rrweb and Django
Built an open-source session recording tool with rrweb and Django

I wanted to share a project I built on top of rrweb: Hymetry.

It started as a hosted session recording tool, but I realized many companies are understandably cautious about sending replay data to a newer third-party service, especially when the product is still small and growing. Because of that, I decided to make it open source.

At the moment, Hymetry is mainly focused on session recording for SaaS products:

  • record and replay user sessions

  • review how people move through the product

  • self-host it if you do not want session data in an external service

Tech-wise, it is primarily Django + rrweb.

A few practical things it already provides:

  • self-hosted deployment

  • deploy options for Render, Heroku, or Docker

If anyone wants to try it, repo is here:
https://github.com/Hymetry/Hymetry

Install-wise, the easiest paths are:

  • Render if you want a managed deployment

  • Heroku if you still use it

  • Docker Compose if you want to run it on your own server/VM