Skip to main content
Observe

Requests

Find a request in Logs and read how Easel handled it, from firewall and cache to function work.

Logs lists the requests your project served. Open one to see the deployment, route, firewall decision, cache result, and function work behind it, along with its log lines and Trace.

Find a request

  1. Open the project and go to Logs.
  2. In the filter sidebar, pick a Timeline range and an Environment.
  3. Narrow the list with filters:
    • Route, Request Path, Status Code, and Host
    • Request Method
    • Cache (HIT, MISS, BYPASS, STALE)
    • Contains Console Level (Warning, Error, Fatal)
    • Deployment ID
  4. Select a request row.
The Logs request list filtered with path:"/api", showing six requests with time, method and status, host, path, and log message, with GET /api/products selected

Type key:value filters in the search box, then select a row to open its details

The search box also takes key:value filters, such as requestId:<id>, invocationId:<id>, coldStart:true, firewallAction:any, or path:"/api". The request ID comes from the X-Easel-Id response header. From the terminal, run easel logs --request-id <request-id> --expand. See easel logs.

To start from a chart instead, note the window where a series moved on Observability, then open Logs for the same window and environment. See Metrics.

Request details

Request details for GET /api/products with status 200: request ID, path, host, user agent, and referer, then Firewall Allow, Cache with CDN HIT, and Request completed in 38 ms

A cached request: the firewall allowed it and the CDN served a HIT

Under the request fields, the panel shows:

  • Firewall: the action the firewall took. See Security events.
  • Cache: the cache result (CDN) and the framework's ISR cache result when there is one. See Cache observability for how to read them.
  • A middleware section and a Function section when compute ran. A request served from the CDN cache, like the one above, has neither.

Function fields

The middleware and Function sections show:

FieldMeaning
RouteThe function route that handled the request
Compute durationTime your code ran, through the end of the response body
Post-responseWork after the response finished, such as waitUntil
Cold startWhether this wake started a new runtime process
Invocation IDThe function wake that served the request
Total computeMiddleware and function compute combined

The duration, billed duration, init, and instance fields describe the whole wake, not just this request. One wake can serve several requests, so open the invocation to see them all. See Function observability.

Logs and Trace

The dock under the request list has two tabs for the selected request:

  • Logs: function and platform log lines. See Logs.
  • Trace: the span tree for edge and function work. See Tracing.

Build failures aren't part of a request. Read them in the deployment's build logs.

Next steps