Overview
Canvas captures two types of runtime data for every app:- Request logs — every HTTP request hitting your app (method, path, status, duration)
- Runtime logs —
console.log/warn/error/infooutput from server functions
Request logs
Every request to your Canvas app is logged automatically — no configuration needed.Query via API
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
log_type | string | runtime | runtime or requests |
hours | integer | 1 | Lookback window (1–168 hours) |
level | string | — | Filter by log level (runtime only): log, warn, error, info |
limit | integer | 100 | Max entries returned (1–1000) |
Runtime logs
Server functionconsole output is automatically captured and stored. Each log entry includes the function route and log level.
Query via API
Studio
In Studio, the App details page has an Analytics panel with three tabs:| Tab | What it shows |
|---|---|
| Overview | Error rates, web vitals, custom events |
| Runtime Logs | Server function console output with level badges |
| Requests | HTTP request log with method, path, status, and duration |
What’s captured
Request log fields
| Field | Description |
|---|---|
timestamp | When the request was received |
method | HTTP method (GET, POST, etc.) |
path | Request path |
status_code | HTTP response status |
duration_ms | Time to process the request (ms) |
user_agent | Client user agent string |
ip | Client IP address |
Runtime log fields
| Field | Description |
|---|---|
timestamp | When the log was emitted |
level | log, warn, error, or info |
message | The logged message (truncated to 2000 chars) |
route_path | Which server function produced the log |
request_id | Correlates logs to a specific request |

