You are reading Edgio v5 docs. Check out our latest docs for Edgio v7.
Edgio
Edgio

Observability

Use Observability to monitor the performance of an application running on Edgio. Key tools and methods for tracking performance are described below.

  • Use our Real User Monitoring (RUM) library (@edgio/rum) to track Core Web Vitals and identify areas for improvement.
  • Use our DevTools to monitor the impact of your caching and predictive prefetching configurations on your site in real time. This allows use to identify and remediate issues.
  • Analyze the performance for specific requests through the x-0-t. This response header contains the time the request spent at each layer of the Edgio stack.
  • Track code execution time through our @edgio/core/timing module.

Tracking your Own Timings

You can use the @edgio/core/timing module to track how long it takes parts of your code to execute. A common case is tracking how long it takes to fetch a result from an upstream API. For example:

JavaScript
1import Timing from '@edgio/core/timing'
2
3const timing = new Timing('api').start()
4
5try {
6 const result = await fetch(API_URL)
7} finally {
8 timing.end() // this will result in a `x-0-user-t: api=(millis)` response header
9}
  • All timings are returned in an x-0-user-t response header.
  • The value is a comma-delimited list of pairs of the form (name)=(duration-in-millis).
  • The value of this header will be logged into xut field in access logs. The logged data is limited to 50 bytes after which it will be truncated.
  • Any timings that are not ended before the response is sent will have a value of na