Fastly-Debug-Path

Details of the Fastly cache servers that processed the request.

Fastly writes this header into responses. It is proprietary to Fastly.

When Fastly-Debug is present in a request, this header is attached to the response and contains a summary of the route that a request has taken through the Fastly network. Here is an example value:

Fastly-Debug-Path: (D cache-lcy1128-LCY 1415969775) (F cache-lcy1130-LCY 1415969775) (D cache-sjc3132-SJC 1415969775) (F cache-sjc3128-SJC 1415969775)

Each parenthesized section of the header value represents one server that touched the request, and they are added in the order in which they processed the request. The syntax is:

({serverRole} {serverIdentity} {timestamp})

These are:

  • serverRole: Indicates which role the server is performing in the request. A D here indicates that this server ran the vcl_deliver subroutine, while an F indicates that it ran the vcl_fetch subroutine. The relationship between these two roles is part of our clustering process.
  • serverIdentity: The value of server.identity.
  • timestamp: The unix timestamp in seconds.

In the case of the example above, the end user is likely somewhere near London. Their request arrived at the LCY data center and was processed by lcy1128. It was forwarded within the cluster to lcy1130, which was responsible for fetching the resource. The service was configured to use shielding, so instead of fetching the resource directly from the backend, lcy1130 forwarded the request to the SJC data center (San Jose, California). In SJC, the request was initially handled by sjc3132 and clustering within that data center forwarded it to sjc3128. It was then fetched from origin.

WARNING: If a response is served from cache, entries in this header beyond the point at which the cache hit was found will describe the path taken when the object was originally cached. See the X-Cache and Fastly-Debug-TTL headers to understand cache state. The timestamps in the Fastly-Debug-Path header will differ when the reports are generated as part of different requests.