Deployments

Did it start
with a deploy?

Monocle records a deployment each time a new version of a service starts running, straight from your telemetry. See what runs right now, and line up every chart with what shipped.

Auto-detected

From the version in your traces

Rollbacks

Detected when traffic goes back

CI declarations

Exact time, author, and CI run

Chart markers

On requests, issues, logs…

Detected from your traffic, nothing to declare

Monocle reads the version on the requests and jobs of each service. When a new one shows up, it records a deployment. The AdonisJS agent finds the version for you on most platforms.

  • A rolling deploy or a canary does not create extra deployments
  • A rollback is detected when an older version takes most of the traffic back
  • During a rollout, see the share of traffic each version handles
.env
# Nothing to set: the agent reads the version, in order, from
#   MONOCLE_VERSION or APP_VERSION
#   Vercel, Render, Railway, Heroku, Coolify, Dokku, Cloud Run
#   GitHub Actions, GitLab CI, CircleCI, Bitbucket, Buildkite
#   the current commit of your .git directory

# Or pin it yourself:
MONOCLE_VERSION=2.15.0

Exact times from your CI

A detected time is when Monocle first saw the version. Run monocle deploy in your pipeline to add when the deploy started and finished, its status, who ran it, and the CI run.

  • The commit, author, and CI run are read from your CI provider
  • A declaration merges with the detected deployment of the same version
  • Never fails your pipeline, unless you ask for --strict
.github/workflows/deploy.yml
env:
  MONOCLE_API_KEY: ${{ secrets.MONOCLE_API_KEY }}
  MONOCLE_ENVIRONMENT: production
steps:
  - run: npx monocle deploy --service api --status started
  - id: rollout
    run: npm run deploy
  - if: ${{ success() }}
    run: npx monocle deploy --service api --status succeeded
  - if: ${{ failure() && steps.rollout.outcome == 'failure' }}
    run: npx monocle deploy --service api --status failed

Every error knows its release

Deployments show up as markers on the charts of the overview, requests, endpoints, issues, logs, and traces. Exception occurrences, logs, and spans carry the version they came from.

  • A hollow marker is detected, a filled one is declared. Click it to open the deployment
  • Click a version badge to open its deployment, or its traces, logs, and issues
  • Your AI assistant can list deployments through the Monocle MCP
Works with

Plugs into your stack

GitHub Actions

monocle deploy reads the run for you

GitLab CI & CircleCI

Commit, author, and run detected

Buildkite & Bitbucket

Commit, author, and run detected

Vercel, Render, Railway…

Platform revision used as version

Deployments API

POST /api/v1/deployments from anywhere

Vite plugin

A version for every browser build

Early access

See what your apps
are really doing.

Traces, logs, errors and metrics for every app you ship. Bring it all into focus.