How to Monitor Oracle Cloud Infrastructure with Vigilmon
Oracle Cloud Infrastructure (OCI) offers compute, database, networking, and application services including Oracle Kubernetes Engine (OKE), Autonomous Database, and Oracle Functions. Teams running production workloads on OCI need external uptime monitoring to complement OCI's native monitoring tools.
This guide shows you how to monitor your OCI-hosted applications with Vigilmon.
Why External Monitoring for OCI?
OCI's built-in monitoring (OCI Monitoring service) tracks infrastructure-level metrics, but it doesn't:
- Monitor your application from outside OCI's network
- Check if DNS resolves correctly from external users' perspective
- Monitor SSL certificate expiry independently
- Provide a public status page for your users
- Alert via Slack or PagerDuty without custom integrations
Vigilmon provides the external perspective that OCI native monitoring can't.
What to Monitor on OCI
OCI Compute Instances (VMs)
For web applications running on OCI Compute:
- Sign up at vigilmon.online
- Add Monitor → HTTP/HTTPS
- URL:
https://your-oci-public-ip-or-domain/health - Interval: 1 minute
OCI Load Balancer
For services behind OCI Load Balancing:
- Monitor the load balancer's public IP or DNS name
- Add a health check backend endpoint to your application
# Flask health endpoint for OCI load balancer backend
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/health')
def health():
return jsonify({'status': 'ok', 'region': 'us-ashburn-1'})
Vigilmon monitors the external load balancer URL, giving you visibility from outside the OCI network.
Oracle Kubernetes Engine (OKE)
For applications deployed on OKE, create a Kubernetes health endpoint:
# kubernetes/health-service.yaml
apiVersion: v1
kind: Service
metadata:
name: health-service
spec:
type: LoadBalancer
ports:
- port: 80
targetPort: 8080
selector:
app: your-app
// Express health endpoint
app.get('/health', (req, res) => {
res.json({ status: 'ok', cluster: 'oke-production' });
});
Monitor the OCI Load Balancer IP assigned to your service.
Oracle Autonomous Database
Autonomous Database exposes an HTTPS endpoint for the APEX workspace and SQL Web. Monitor it externally:
- Monitor your APEX application URL:
https://your-adb.adb.region.oraclecloudapps.com/ - Create an application health endpoint that runs a lightweight query
Oracle Functions (Serverless)
For Oracle Functions (FaaS), create a dedicated health function:
// OCI Function health check
module.exports = { handler };
async function handler(ctx, input) {
return { status: 'ok', function: 'health-check', timestamp: new Date().toISOString() };
}
Monitor the function's HTTPS invoke URL with Vigilmon.
SSL Certificate Monitoring for OCI
Vigilmon automatically monitors SSL certificates for HTTPS endpoints. For OCI:
- OCI Load Balancer certificates: monitored via your domain's HTTPS endpoint
- OCI Certificates service: combined with external endpoint monitoring
Alerts fire 30 and 14 days before certificate expiry.
OCI Region Outage Detection
For multi-region OCI deployments:
| Monitor | URL | Purpose |
|---|---|---|
| Primary (US East) | https://app.yourco.com |
Global availability |
| Region 1 | https://us-ashburn.yourco.com |
US East region |
| Region 2 | https://eu-frankfurt.yourco.com |
EU region |
Alerting via Slack and PagerDuty
Vigilmon integrates with:
-
Slack — post downtime alerts to your
#infra-alertschannel - PagerDuty — trigger incidents for your on-call team
- Email — immediate notification to your OCI team
- Webhooks — integrate with OCI Notifications service or ServiceNow
Public Status Page
Vigilmon generates a hosted status page for your OCI-hosted services. Share https://status.vigilmon.online/yourpage with customers instead of exposing OCI console details.
Summary
Monitor Oracle Cloud Infrastructure workloads with Vigilmon:
- Add health endpoints to your Compute, OKE, or Functions workloads
- Create HTTP monitors pointing at your OCI load balancer or public IP
- Enable SSL certificate monitoring
- Configure Slack/PagerDuty alerts for your OCI ops team
- Create a customer-facing status page
Top comments (0)