---
title: Logs
description: The logs available for serverlets, proxies, and DNS in a project.
---

Every major service in a project keeps its own logs, queryable from its page in the dashboard: filterable by time range and free-text search, with a live tail view for watching activity as it happens.

## Serverlet logs

A serverlet's logs contain your application's **stdout and stderr**, combined across every instance and tagged with which instance wrote each line. They also include Futrou's own **platform log lines** — scaling actions, instance starts and stops, rolling update batches — interleaved in the same stream and tagged as `SYSTEM` rather than an instance number, so you can see infrastructure events alongside your application's own output without switching views.

## Proxy logs

Proxy logs are HTTP **access logs**, one line per request, in a format based on the Apache Combined Log Format: client IP, timestamp, request line, status code, response size, referer, and user agent, plus the proxy's own ID. TCP and UDP proxies log connections in the same style, adapted for non-HTTP traffic.

## DNS logs

DNS logs record queries received by your zones: the querying IP, the query name and record type, the response code, and how long the query took to answer — useful for confirming a record is actually being queried the way you expect, or diagnosing unexpected traffic to a zone.

## Storage logs

Storage logs record **provisioning, sync, and lifecycle events** for a [storage](/docs/storage/) — an instance being created and mounted, a resize starting and completing, a replica going offline or catching back up, and similar node-level events. They're not a per-file access log: routine reads and writes through a mounted volume, the file API, or the S3 API aren't recorded here.

## WAF logs

[WAF](/docs/glossary/#technical-terms) logs record only the requests it acted on — **blocked or flagged as suspect** — not every request it evaluated, the same "log what's interesting" approach as proxy and DNS logs. Each line has the client IP, timestamp, request line, the verdict (block or suspect), and which rule and category triggered it, so you can see exactly why a request was stopped.

## Retention

Logs are kept on a rolling basis rather than indefinitely — older entries are trimmed as new ones come in, with proxies and DNS retaining less history than serverlets. If you need logs kept longer than that, ship them out via your own logging pipeline using the log API.