Observing real user activity
Up to this point, we have focused on the observability of our serverless backends. However, a significant portion of today’s application logic executes on the frontend within a user’s browser on their own devices. Leveraging the processing power of the user’s device allows us to spread out the load and dramatically improve the scalability of a system. However, it also makes it more difficult to monitor the behavior of the system, since we must capture information from many devices. To address this problem, we need Real User Monitoring (RUM) and synthetic transactions.
Real User Monitoring (RUM)
RUM encompasses the set of tools we use to observe the performance of the frontend application logic. This includes sampling page load performance metrics, capturing errors and console logs, and sending this information to the central monitoring system. Then we correlate the frontend metrics with the backend metrics to create a full...