Until now, logs were real-time only. You could read them whilst the service was running but as soon as it was replaced during a deployment or restart, the previous logs were no longer accessible.
Logs are now retained, and there are two new places to work with them: a dedicated Logs explorer for each environment, and a refreshed logs tab in the service panel on the canvas.
The new explorer is available from the sidebar. It has a bunch of new features:
- Search by keyword across all your services, and filter by service and level (info, warn, error, debug).
- A volume histogram above the stream, stacked by level, so a jump in errors is easy to spot.
- Time ranges from 5 minutes to 14 days, preset or custom, with longer history on paid plans.
- Click any line for a detail panel: the full message, parsed fields, stack trace, and a permalink you can send so a teammate lands on the same entry.
- Live mode to watch entries stream in, or page back through a fixed window.
- Copy the lines on screen, or export the filtered set to CSV or JSON.
The logs tab on a service got the same treatment. Filter by log level inline and open the full explorer with that service already selected when you need more than a quick look. The UTC/local toggle, replica toggle, and follow/tail are all still there for quick debugging.
If a spike shows up in your per-replica metrics, you can now jump straight to the logs to find out what caused it.