Skip to content

Logs, commands and shells

The Logs tab streams the app’s output live. Follow, Filter…, Download and Clear. With several replicas, pick one or see All replicas, each in its own colour. The last 5,000 lines are kept in view.

For search across apps and longer history, add an Observability node.

The Run tab runs a one-off command, such as a database migration, in a new container from your deployed image with the app’s environment. The running app isn’t touched.

Terminal window
npm run migrate
python manage.py migrate
bundle exec rails db:migrate
  • One run at a time per app; it stops after 10 minutes by default. Cancel stops it sooner.
  • Past runs keeps each run’s output.
  • The run shares the app’s data and database, so writes happen for real.
  • The app must have been deployed once.

Interactive shell → Connect opens a terminal in a fresh container with the same image and environment. Good for rails console, python manage.py shell or poking around. It closes after 15 minutes idle and 60 minutes at most, and nothing you type is stored.

The Run tab and shell need the editor role and may be switched off on your platform.

The Overview tab gives a diagnosis in plain words, with a fix button where there is one. For example:

App never started listening. Make the server listen on the PORT variable, on 0.0.0.0.

Check site opens your app in a headless browser and shows a screenshot, to confirm what visitors see.

See Troubleshooting for the common cases.