tutorial

How to Monitor Octopus Deploy with Vigilmon

Octopus Deploy orchestrates complex release pipelines across multiple environments. Learn how to monitor deployed services, runbook outcomes, and deployment health with Vigilmon.

Octopus Deploy handles the complexity that basic CI/CD pipelines can't — multi-environment rollouts, approval gates, manual interventions, and runbook automation for ops tasks. But orchestrating deployments doesn't guarantee the deployed services stay healthy. Vigilmon pairs with Octopus to watch what lives after the deployment completes: HTTP uptime, heartbeat signals from runbook jobs, and immediate alerts when a freshly deployed service goes dark.

What You'll Set Up

  • HTTP uptime monitors for services deployed by Octopus release pipelines
  • Heartbeat monitors triggered by Octopus runbook jobs and scheduled triggers
  • Webhook-based alerts when Octopus deployments fail
  • Per-environment monitoring to track staging vs. production health separately

Prerequisites

  • Octopus Deploy (Cloud or self-hosted) with at least one active project
  • One or more services deployed to reachable HTTP endpoints
  • A free Vigilmon account

Step 1: Monitor Each Deployed Endpoint

After every release, Octopus updates the live state of your services. Add a Vigilmon monitor for each production endpoint:

  1. Log in to vigilmon.online and click Add Monitor.
  2. Set Type to HTTP / HTTPS.
  3. Enter the endpoint URL: https://api.yourapp.com/health.
  4. Set Check interval to 1 minute.
  5. Set Expected HTTP status to 200.
  6. Click Save.

Prefer a dedicated /health route over the root URL. A health endpoint that verifies database connectivity and dependent service availability gives you a richer signal and catches partial failures.


Step 2: Add Health Endpoints to Your Application

Applications deployed by Octopus should expose a health route. Add one if it doesn't exist:

.NET / ASP.NET Core

// Program.cs
app.MapHealthChecks("/health");

Add the health checks package:

dotnet add package Microsoft.Extensions.Diagnostics.HealthChecks

Node.js / Express

app.get('/health', (req, res) => {
  res.json({ status: 'ok', version: process.env.APP_VERSION });
});

Java / Spring Boot

// application.properties
management.endpoints.web.exposure.include=health
management.endpoint.health.show-details=always

Spring Boot's Actuator exposes /actuator/health by default. Point Vigilmon to that URL.

Deploy the updated package through Octopus so the health endpoint reaches each environment.


Step 3: Add a Heartbeat Step to Octopus Runbooks

Octopus Runbooks automate operational tasks: backups, cleanup scripts, certificate renewals. A Vigilmon heartbeat monitor detects when a scheduled runbook silently stops executing.

Create a heartbeat monitor in Vigilmon:

  1. Click Add MonitorCron Job / Heartbeat.
  2. Name it: Octopus nightly backup runbook.
  3. Set expected interval to match your runbook schedule (e.g., 24 hours).
  4. Copy the Heartbeat URL.

Add a "Ping Vigilmon" step at the end of your Octopus runbook:

In the Octopus runbook process, add a Run a Script step after your last task step:

# PowerShell (Windows targets)
Invoke-WebRequest -Uri "https://vigilmon.online/api/heartbeat/YOUR_HEARTBEAT_TOKEN" `
  -Method GET -UseBasicParsing | Out-Null
Write-Host "Vigilmon heartbeat sent."
# Bash (Linux targets)
curl -fsS --retry 3 "https://vigilmon.online/api/heartbeat/YOUR_HEARTBEAT_TOKEN" > /dev/null
echo "Vigilmon heartbeat sent."

If the runbook reaches this step, the job completed successfully. If a prior step fails or the scheduled trigger stops firing, Vigilmon never receives the ping and raises an alert.


Step 4: Monitor Deployments via Octopus Subscriptions

Octopus Subscriptions push events to external systems. Wire one up to notify Vigilmon when a deployment fails:

  1. In Octopus, go to Configuration → Subscriptions → Add Subscription.
  2. Name: Vigilmon deployment failures.
  3. Event filters → Event groups: select Deployment failed and Deployment process errored.
  4. Notification → Webhook: enter your Vigilmon webhook endpoint.
  5. Optionally scope to specific projects or environments.

In Vigilmon, create an inbound webhook monitor under Add Monitor → Webhook / Push and copy the endpoint URL. Each failed deployment posts a payload that Vigilmon logs and can route to your alert channel.


Step 5: Track Per-Environment Health Separately

Octopus's strength is multi-environment deployment. Match your Vigilmon monitors to that structure:

| Environment | URL | Monitor name | |---|---|---| | Staging | https://staging.yourapp.com/health | API — Staging | | UAT | https://uat.yourapp.com/health | API — UAT | | Production | https://api.yourapp.com/health | API — Production |

Tag monitors in Vigilmon with environment labels so alert messages make it immediately clear which environment is affected. You'll know at a glance whether a staging issue is safe to investigate slowly or a production outage demands immediate response.


Step 6: Configure Alerting

Set escalation policies that match the urgency of each environment:

  1. Open a monitor in Vigilmon → Alerts.
  2. Add channels: email, Slack, PagerDuty, or webhook.
  3. Production monitors: alert after 1 failed check, escalate after 2 minutes.
  4. Staging/UAT monitors: alert after 2 failed checks to absorb transient deploy-time restarts.

For heartbeat monitors, extend the grace period to at least 30 minutes beyond the expected runbook runtime. Runbooks that touch large databases can run long; you don't want alerts during a slow-but-successful backup.


Conclusion

Octopus Deploy gives you release confidence up to the moment a deployment finishes. Vigilmon extends that confidence forward — verifying that every deployed service stays healthy, every scheduled runbook keeps running, and every failed deployment surfaces immediately. The combination turns your Octopus investment into end-to-end delivery assurance, from pipeline trigger to live service health.

Start monitoring your Octopus deployments at vigilmon.online.

Monitor your app with Vigilmon

Free plan — 5 monitors, no credit card required. Up and running in 60 seconds.

Start free →