Skip to content

The uptime:env tag

The uptime:env tag lets you group resources by environment so you can start or stop an entire environment with a single command — from the dashboard or Slack.

Tag key

uptime:env

Format

The value is a colon-delimited list of environment names:

uptime:env = dev
uptime:env = staging
uptime:env = dev:staging ← resource belongs to both
uptime:env = prod:blue-green ← custom names are supported

Environment names are case-sensitive and can contain letters, numbers, and hyphens.

Using uptime:env without uptime:schedule

You can tag a resource with only uptime:env (no uptime:schedule). The resource will appear in the dashboard under its environment label and can be controlled via environment commands, but will not be automatically scheduled.

This is useful for resources like databases that you want to start/stop on demand rather than on a fixed schedule.

Environment commands

From the Resources page in the dashboard, environment labels appear as clickable badges on each resource row. Click a label to start or stop all resources with that environment tag.

You can also use the Stop by Environment / Start by Environment buttons to act on multiple environments at once.

How it works

An environment command publishes a message to an SNS topic in your AWS account. The PlatformCommandProcessor Lambda receives the message and:

  1. Scans DynamoDB for all resources with a matching uptime:env value
  2. Queues a start or stop action for each resource via SQS
  3. Each ActionProcessor handles the actual start/stop call

The command is eventually consistent — resources will reach the target state as their individual action processors complete.

Combining both tags

Most resources will have both tags:

uptime:schedule = 9-17 mon-fri
uptime:env = dev

The schedule controls automatic start/stop. The env tag allows on-demand commands (e.g. “stop all dev resources right now” before a weekend).