Edge Pulse
Edge Pulse is an Observe product based on the market-leading Real User Monitoring (RUM) solution. With it, you can, in real time:
- Collect navigation, availability, latency, and bandwidth information.
- Use the collected information to enhance the end user’s experience.
- Ensure efficient content delivery.
Implementation
Scope | Source |
---|---|
First steps | Edge Pulse first steps |
What RUM is
Real User Monitoring (RUM) is a monitoring model that captures end-user data to explain how your end users are being impacted by the availability and efficiency of your content delivery.
It’s a passive way to monitor the end-user device in action. It provides insight into many issues, including front-end browser, back-end database, server-related issues, and how end users experience them.
Edge Pulse behavior
Edge Pulse collects user browsing data and metrics on availability, latency, and throughput in real time. After inserting the Edge Pulse JavaScript tag, the script:
- Respects the protocol in use (HTTP/HTTPS).
- Is fully asynchronous.
- Doesn’t interfere with the loading process or the internal structure of the delivered content.
In addition, each test collects metrics for only three addresses of the Azion’s edge network at a time, in a 30 minute interval per user. This way, it doesn’t burden clients with test repetitions.
The tests occur in a continuous and diversified way and cover all possible routes which that user has to get the content. After the data collection, the results are sent to Azion’s processing servers.
Edge Pulse uses the UUID4 algorithm to control with more efficiency cases of successes and failures.
It also uses the local storage of the browser to control and handle its data.
Edge Pulse’s tracking respects the following settings of the user’s browser:
Value | Behavior of Edge Pulse |
---|---|
navigator.doNotTrack = ‘1’ | If the tracking has never been allowed and, as a result, Edge Pulse has never used the local storage, then an identifier code will be generated for each visit that the user makes on the site. If it’s configured as “1”, but it has been tracked before, the previous identifier is deleted and a new one is generated. |
navigator.doNotTrack <> ‘1’ | When a value isn’t “1”, it means that Edge Pulse will track. Thus, the same identifier will be used for each visit of a user. |
Collected data
Edge Pulse collects information such as the Resolver used for DNS resolution, edge location tested, and the user’s anonymous network. They help you make decisions regarding user routing, understand your client’s needs and wants, improve user experience, and have more application transparency.
The categories for collected data are:
- Navigation
- Performance
- User experience
- Informational
- Network
Edge Pulse JavaScript tag
To monitor the page, you need to insert the Edge Pulse JavaScript tag on it. It’s available on the Edge Pulse page on Azion Console through the Copy to Clipboard button.
You must add the JavaScript tag to start collecting metrics. This action is required for each page you want to monitor.
The execution starts after the user’s browser has loaded the page. The tag can be published manually or using tag management systems available on the market.
There are two available tags:
Tag | Description |
---|---|
Default Tag | Place this tag in the HTML of the pages you want to collect data from. You must place it before the closing BODY tag. This script waits until the loading event is completed before downloading and running the RUM Client, ensuring that the loading event isn’t interrupted and doesn’t affect the user experience. |
Pre-loading Tag | If you’re using Content Security Policy settings preventing the use of inline JavaScript, place this tag just before the enclosing BODY tag. This script executes before the load event is fired. |