Logs
Every environment ships its logs into the dashboard automatically. There are two streams — application logs (your PHP errors, warnings, and notices, plus anything WordPress or your plugins write) and access logs (one line per HTTP request from the FrankenPHP runtime). You read both in one place, scoped to the environment you’re looking at, with no SSH required for the common case.
Live tail
Section titled “Live tail”The logs view streams in real time over server-sent events (SSE), so new lines appear as they happen — no refresh, no polling. Leave it open while you reproduce a bug and watch the error land.
Filtering
Section titled “Filtering”Two filters do most of the work:
- Severity — narrow to
errorand above when you’re chasing a failure, or drop todebugwhen you need everything. Levels follow the usual ladder:debug,info,notice,warning,error,critical. - Time — pin to a window (the last 15 minutes, the last hour, or a custom range) to line a log up with a deploy or a traffic spike.
Finding an error fast
Section titled “Finding an error fast”A reliable path from “something’s broken” to the line that explains it:
- Open the affected environment and go to Insights → Logs.
- Set severity to Error and above to cut the noise.
- Set the time window to bracket when the problem started — right after a deploy is the usual suspect.
- Reproduce the request if you can; with the live tail running, the error appears as it happens.
- Got a request that’s slow rather than failing? Jump to Traces to see where the time went, or to Requests for the status-code and latency view of that path.
Reading logs over the API
Section titled “Reading logs over the API”The same logs are available under the observability:read scope, which is handy for
shipping them into your own aggregation or alerting. The collection paginates with a
cursor like everything else in the API.
curl https://api.managed.dev/v1/environments/env_01J8.../logs?severity=error&limit=50 \ -H "Authorization: Bearer mfk_live_..."mf logs --env env_01J8... --severity error --limit 50See the observability API resource for the full parameter list and the streaming endpoint.
Retention
Section titled “Retention”Logs are retained for a rolling window so recent history is always there when you need to reconstruct an incident. Retention windows per plan are being finalized; for anything you need to keep long-term, ship logs out via the API to your own store.