How to Monitor IBM Cloud Applications with Vigilmon
IBM Cloud hosts critical enterprise workloads including IBM Cloud Kubernetes Service (IKS), IBM Cloud Foundry applications, IBM Functions (serverless), and IBM Databases for PostgreSQL, MongoDB, and Redis. External uptime monitoring complements IBM's native monitoring tools by giving you the user's perspective on availability.
This guide shows you how to monitor IBM Cloud applications with Vigilmon.
Why External Monitoring for IBM Cloud?
IBM Cloud Activity Tracker and IBM Log Analysis provide observability from inside IBM Cloud, but they don't:
- Monitor your application endpoint from outside IBM's network
- Check DNS resolution as external users experience it
- Provide an independent SSL certificate expiry monitor
- Generate a public status page for your customers
- Send Slack or PagerDuty alerts without IBM Cloud integration setup
Vigilmon fills these gaps in minutes.
Monitoring IBM Cloud Foundry Applications
IBM Cloud Foundry apps run at https://yourapp.mybluemix.net or your custom domain.
Add a health endpoint to your Cloud Foundry app:
// Node.js on IBM Cloud Foundry
const express = require('express');
const app = express();
app.get('/health', (req, res) => {
res.json({ status: 'ok', platform: 'ibm-cloud-foundry' });
});
const port = process.env.PORT || 3000;
app.listen(port);
Set up Vigilmon:
- Sign up at vigilmon.online
- Add Monitor → HTTP/HTTPS
- URL:
https://yourapp.mybluemix.net/health - Interval: 1 minute
- Enable SSL monitoring (automatic)
Monitoring IBM Cloud Kubernetes Service (IKS)
For applications on IKS, expose a health endpoint via a Kubernetes service:
# k8s/health-service.yaml
apiVersion: v1
kind: Service
metadata:
name: health-svc
annotations:
service.kubernetes.io/ibm-load-balancer-cloud-provider-ip-type: public
spec:
type: LoadBalancer
selector:
app: your-app
ports:
- port: 80
targetPort: 8080
# Python Flask health endpoint
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/health')
def health():
return jsonify({'status': 'ok', 'cluster': 'iks-production', 'region': 'us-south'})
Monitor the IBM Cloud Load Balancer IP or Ingress domain with Vigilmon.
Monitoring IBM Functions (Serverless)
For IBM Functions (OpenWhisk-based) web actions:
// IBM Functions health action
function main(params) {
return {
statusCode: 200,
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ status: 'ok', function: 'health-check' })
};
}
Deploy as a web action and monitor the HTTPS endpoint:
https://us-south.functions.appdomain.cloud/api/v1/web/yourorg_yourspace/default/health
Monitoring IBM Databases (PostgreSQL, MongoDB, Redis)
For IBM Databases for PostgreSQL:
# Application health check that tests DB connectivity
import psycopg2
from flask import Flask, jsonify
app = Flask(__name__)
IBM_DB_URI = 'postgresql://user:pass@host:port/db?sslmode=require'
@app.route('/health/db')
def health_db():
try:
conn = psycopg2.connect(IBM_DB_URI)
conn.close()
return jsonify({'status': 'ok', 'database': 'postgresql'})
except Exception as e:
return jsonify({'status': 'error', 'message': str(e)}), 503
Vigilmon monitors this HTTP endpoint and triggers alerts on 503 responses.
IBM Cloud VPC Applications
For workloads running on IBM Cloud VPC compute instances:
- Ensure your instance has a floating IP or is behind a Public Load Balancer
- Open port 443 in your VPC security group for Vigilmon's monitoring IPs
- Add health endpoint to your application
- Configure Vigilmon to monitor
https://your-floating-ip-or-domain/health
SSL Certificate Monitoring
IBM Cloud applications using custom domains with IBM Certificate Manager need external SSL monitoring. Vigilmon:
- Checks SSL validity independently of IBM's certificate manager
- Alerts 30 days and 14 days before expiry
- Works for IBM-managed and Let's Encrypt certificates
Alert Integration
Vigilmon sends alerts to:
- Email — immediate downtime notification
- Slack — integrate with IBM DevOps team channels
- PagerDuty — trigger on-call for production IBM Cloud incidents
- Webhooks — connect to IBM Event Notifications service or ServiceNow
Summary
Monitor IBM Cloud applications with Vigilmon:
- Add health endpoints to Cloud Foundry, IKS, or Functions workloads
- Create HTTP monitors in Vigilmon for external availability checks
- SSL monitoring is automatic for HTTPS endpoints
- Configure Slack/PagerDuty for your IBM Cloud ops team
- Share your status page with enterprise customers
Top comments (0)