# Monitoring Runs

## Overview

Every run progresses through a series of statuses as it moves from planning to completion. You can monitor run progress in real time from the Bluebricks app or list environments from the CLI.

{% hint style="info" icon="book" %}
For background on how runs work, see [Runs](https://bluebricks.co/docs/core-concepts/runs). For details on the plan-approve-apply lifecycle, see the plan phase and apply phase sections on that page.
{% endhint %}

## Run statuses

<table><thead><tr><th width="169.20703125">Status</th><th>Description</th></tr></thead><tbody><tr><td>Pending</td><td>Run is queued and waiting to start</td></tr><tr><td>Planning</td><td>Generating the execution plan across all packages</td></tr><tr><td>Waiting for input</td><td>Plan complete, awaiting approval</td></tr><tr><td>Plan approved</td><td>Approved, pending installation</td></tr><tr><td>Installing</td><td>Actively provisioning or updating infrastructure resources</td></tr><tr><td>Completed</td><td>Run finished successfully</td></tr><tr><td>No changes</td><td>Plan detected no infrastructure changes</td></tr><tr><td>Failed</td><td>Run encountered an error</td></tr><tr><td>Canceled</td><td>Run was canceled before completion</td></tr><tr><td>Skipped</td><td>Run execution was skipped</td></tr><tr><td>Drifted</td><td>Infrastructure differs from planned state (drift detection only)</td></tr></tbody></table>

## How to monitor runs in the Bluebricks app

### Environments list

Navigate to **Environments** to see the latest run status for each environment. Each row shows a status badge with the current stage.

### Run detail page

Click an environment to open its run detail page. The detail page shows:

* **Status timeline**: a vertical progression through each stage with timestamps for every transition
* **Plan diff**: resources to create, update, or destroy, grouped by package
* **Live logs**: real-time streaming logs during execution, filterable by log level
* **Resource list**: individual resource states, configuration, and outputs
* **Dependency graph**: visual representation of resource dependencies

### Approving or rejecting a run

When a run reaches **Waiting for input** status:

* Click **Approve & Apply** to proceed with the plan (keyboard shortcut: `Cmd+Enter` / `Ctrl+Enter`)
* Click **Reject** to cancel the run (keyboard shortcut: `Cmd+Z` / `Ctrl+Z`)

{% hint style="warning" %}
If you reject a run that is already partially applied, some resources may have been modified. Review the run logs to understand what was applied before the rejection.
{% endhint %}

For uninstall runs, the **Approve & Apply** button appears in red. A confirmation dialog reminds you that approving will remove all previously provisioned resources.

{% hint style="info" %}
If the collection has a cost quota configured and the run would exceed it, the **Approve & Apply** button is disabled. Contact the collection owner to adjust the quota or approve the run.
{% endhint %}

## How to monitor runs via the CLI

### List environments

```bash
bricks deploy list
```

Output columns:

* **SLUG**: environment identifier
* **BLUEPRINT**: blueprint name and version
* **TARGET COLLECTION**: target collection name

### Limit results

```bash
bricks deploy list --limit 50
```

The default limit is 100. The CLI paginates results and prompts to fetch more if available.

For the full command reference, see [`bricks deploy list`](https://bluebricks.co/docs/bricks-cli/cli-reference/bricks_deploy/bricks_deploy_list).

## See also

* [Runs](https://bluebricks.co/docs/core-concepts/runs): run lifecycle and plan/apply phases
* [Destroying Environments](https://bluebricks.co/docs/core-concepts/runs/destroying-environments): uninstall environments and clean up resources
* [Creating Environments](https://bluebricks.co/docs/core-concepts/environments/creating-environments): deploy blueprints into collections
