Skip to content

Admin guideConfiguration

Retention

How long Toft keeps logs, events, runs and deployments, and what it never prunes.

View as Markdown

Retention settings are on Admin → Settings (the integration log’s is on Admin → Integrations). Values are days unless noted.

Setting Prunes Default
platform_log_retention_days What Toft logged about each app: fetches, interpreter choice, refused starts 90
app_event_retention_days Failure events: failed builds, failed health checks, runs that could not start 90
job_run_retention_days Job run rows and their output files 90
job_log_retention_days Job log lines 14
announcement_recipient_retention_days Per-person announcement delivery rows 180
integrations_retention_days The integration log; minimum 30 365
max_versions_per_app A count: successful deployments one app may keep, the serving one included; 0 = no limit 0

max_versions_per_app caps every app, whatever its owner asked for; the oldest deployment that isn’t serving goes first. Failed builds don’t count: their files are removed when they fail, and their entry and build log are kept. Owners see the policy on their app’s Deployments tab.

  • The audit log. It does not expire on a setting. Deleting it is a deliberate database operation.
  • Announcement totals. Delivered, failed and skipped counts survive the per-person rows.
  • Integration residue records — what an integration left on the far side outlives the log and the app.
  • Failure events and the platform log are what you read during an incident and its post-mortem. A week is short; a quarter is generous.
  • Job logs are the first to shorten when disk is tight.

Pruning runs on a periodic sweep; lowering a value does not free disk at once.