Web Performance Fundamentals, v2

Request Metrics Monitoring Tool

Todd Gardner

Todd Gardner

Request Metrics
Web Performance Fundamentals, v2

Check out a free preview of the full Web Performance Fundamentals, v2 course

The "Request Metrics Monitoring Tool" Lesson is part of the full, Web Performance Fundamentals, v2 course featured in this preview video. Here's what you'd learn in this lesson:

Todd discusses the benefits of using a RUM tool, specifically focusing on the features and capabilities of the tool called Request Metrics. He explains how RUM tools provide more detailed and actionable data compared to high-level views like CrUX. He demonstrates how RUM tools allow users to filter and analyze data based on specific criteria, such as geographical location and connection type.

Preview
Close

Transcript from the "Request Metrics Monitoring Tool" Lesson

[00:00:00]
>> Todd Gardner: So here is a rum tool, this is request metrics, and this is some data about requestmetrics.com over the last 72 hours. So, this kind of combines some of the high-level view, the kind of data you might get from CrUX, but more details more actionable. Because I could say, look at this data, which is here's my LCP and my CLS and my INP, here's my data over time, and it highlights what the P75 is and a full range of scores.

[00:00:32]
But being that I own this data, and I have every single data point, I can filter it, I could zoom in. I could say, but I only care about maybe the United States, and only tell me about people who are on fast broadband connections, and now I can filter all of my data down to that.

[00:00:53]
So, if my target customer, the person who I care about, in terms of, selling something to was in the United States on these kinds of connections, now I have this particular view of here's what their Core Web Vitals are. Or for example, if I wanna see what somebody has who maybe they're in the USA, but they're on a slow cellular connection, how bad does it get, now I'm filtered down to that point of view.

[00:01:19]
So, I can do all kinds of pivoting of this data when you control it, when you own the data, you can slice and dice it in a lot of more interesting ways. You can also dig in on it in ways that you can't do with CrUX, for example, if I wanna look into largest Contentful Paint, I can look at all of that data, and I can break it down by URL.

[00:01:44]
So, here's the LCP of the speed check tool, this is the URL of the speed check tool. I can drill in and say, show me everybody who goes to speed check and then what is the LCP element that most people run into? And so, I can troubleshoot in aggregate what a particular user is doing.

[00:02:03]
And we can drill all the way down to an individual request which is way more specific than what you'd ever be able to get with CrUX, because that's all anonymous, and you don't get those sorts of details. It's like having web page test for every single request of every user on your website.

[00:02:21]
Because now I can drill in and say, hey, this particular user who was measuring markmooning.com came in on Chrome Unix, Chrome on Linux from Kenya, and here was their timeline. Here's how long DNS time took, SSL, client time, here's every resource they asked for the CSS files. Here's where Largest Contentful Paint happened, what element it was, and we can even analyze it to say what's the element, what image was being requested, what are the headers on this image.

[00:02:56]
We can get all these very low-level details, when you have access to RUM data from your own website. Now this is an example from Request Metrics, which is the tool I build, but lots of other RUM tools will have similar capability. I think this is the best, but I am probably biased in my decision.

[00:03:21]
>> Todd Gardner: Yeah, that's all the stuff I wanted to talk about.
>> Speaker 2: Do you have any opinions around the enterprise tool with money no object which enterprise tool is the best?
>> Todd Gardner: I mean if money is no object, it's Akamai mPulse, so Akamai is the largest CDN in the world, right?

[00:03:44]
So, if you want your content to go super-fast, that's what all the biggest players do, like Amazon will use Akamai. mPulse is the company behind where kind of real user monitoring started a lot of the people involved in that are on the W3C and set the standards for what these things should be.

[00:04:08]
The agent that they wrote at Akamai is called Boomerang and its open source, and it's what everybody else uses. Not everybody, but Dynatrace and Datadog, they both just use Boomerang under the covers, so May as well use that one. For my money, again, if money's no option, if money's no object, that's where you go, questions?

[00:04:35]
>> Speaker 3: Yeah, so for the tool you just showed us, so setting that up, I would assume the app that you had that's public that you wanna record data with, I'm assuming you install some sort of package and then, all right. -
>> Todd Gardner: Yep, it doesn't even have to be public, this could be on your private Internet site.

[00:04:50]
Let's say you have a site that people have to log in to use, that's fine. As long as the end user, the people visiting your site have internet access to send the data to the RUM tool. Whether that's hosted on your data center, hosted at Akamai or hosted in request metrics, as long as that user can send the data there, the site could be private.

[00:05:11]
The site could be like locked down, so you can capture RUM data from localhost just as well as anything else. It's about installing the agent, which is usually a wrapper around with a bunch of other stuff around performance observer. Then has other secret sauce in it about what it does and then sends that data back to a reporting service somewhere.

[00:05:31]
>> Speaker 3: And then just a quick other question, the first tool you showed us that you built, that's not request metrics, is that open source or is it possible to see the code for that or is that private?
>> Todd Gardner: The speed check tool?
>> Speaker 3: Yes.
>> Todd Gardner: It is not open source because it actually just uses some request metrics logic under the covers.

[00:05:53]
But like the code for that is not complicated, it just uses the CrUX API like http API to make some calls and fetch some data. And then the part that's not open sourceable is that it uses all of our same rendering logic. So, there's a bunch of work went into how we render these charts that we didn't open source because we think it's cool and I don't know.

[00:06:20]
And so, we take that data from CrUX and we pipe it through our rendering engine and that part's like closed source.
>> Todd Gardner: Yeah.
>> Speaker 4: You have a custom metric, would it render in another grades wouldn't be produced in the same way, but could you render custom?
>> Todd Gardner: Yeah, absolutely, so CrUX obviously doesn't know about your custom metrics, it can't capture that.

[00:06:47]
A RUM tool totally knows about your custom metrics. Now, you can do it in a couple of different ways, if you use the platform, like you use the performance API to create a custom measure through that API. Then request metrics and a lot of other RUM tools will just discover it automatically, because there'll be something on the system.

[00:07:09]
If you use a different mechanism, you usually have to tell your RUM tool about it through some sort of JavaScript, SDK. In the request metrics case, it would be like, RUM.send event, and you'd send us some specific information. How you would do that in different RUM tools will vary based on what their capabilities are.

[00:07:30]
So, that was request metrics, one example of a RUM tool and the kind of data that you can get. If you're really serious about web performance of your site, you should definitely have access to a RUM tool of some kind. You can capture the data yourself and build in your own reporting system, or you can buy one of these tools that's available.

[00:07:49]
I think you should buy request metrics, but I might be biased, regardless, you should have something. That was testing and tools, we talked about all the common ways you can gather this data. The tools you will use in terms of web performance, the kind of things that people share, the things that you should know about.

Learn Straight from the Experts Who Shape the Modern Web

  • In-depth Courses
  • Industry Leading Experts
  • Learning Paths
  • Live Interactive Workshops
Get Unlimited Access Now