XWiki is a powerful open-source enterprise wiki and application platform (Java/Tomcat) used by thousands of organisations as a Confluence alternative for knowledge management, collaboration, and intranet portals. When XWiki is unreachable, your team loses access to documentation, project pages, and internal applications built on the platform. Vigilmon monitors XWiki's web UI, REST API, SSL certificates, and background scheduled tasks — alerting you the moment something breaks, before your users do.
What You'll Set Up
- HTTP uptime monitor for the XWiki web UI (
/xwiki/bin/view/Main/) - REST API endpoint monitor for wiki spaces (
/rest/wikis/xwiki/spaces) - Configuration check monitor for the XWiki server descriptor
- SSL certificate expiry alerts for HTTPS XWiki deployments
- Cron heartbeat monitors for XWiki scheduled tasks (statistics computation, notification digests)
Prerequisites
- XWiki 14.0+ running on Tomcat (or another Java servlet container)
- XWiki reachable over HTTP or HTTPS from the internet or your monitoring network
- A free Vigilmon account
Step 1: Monitor the XWiki Web UI
The XWiki main page is the primary health indicator for the platform. A successful response confirms the Java/Tomcat stack is running, the database is reachable, and XWiki's rendering engine is functional.
- Log in to vigilmon.online and click Add Monitor.
- Set Type to
HTTP / HTTPS. - Enter your XWiki main page URL:
https://xwiki.yourdomain.com/xwiki/bin/view/Main/ - Set Check interval to
1 minute. - Set Expected HTTP status to
200. - In Keyword check, enter
XWikior a phrase from your wiki's main page that should always be present. This catches error pages that return HTTP 200 with an error message instead of content. - Click Save.
Step 2: Monitor the XWiki REST API
XWiki exposes a comprehensive REST API for external integrations, bots, and automation scripts. Monitoring the spaces endpoint gives you visibility into the API layer independently of the web frontend.
- Click Add Monitor → HTTP / HTTPS.
- Enter the wiki spaces REST endpoint:
https://xwiki.yourdomain.com/rest/wikis/xwiki/spaces - Set Check interval to
5 minutes. - Set Expected HTTP status to
200. - In Keyword check, enter
spaces— this element always appears in a valid response and confirms the API returned structured data. - Click Save.
If your XWiki instance requires authentication for REST API access, use Vigilmon's Basic Auth option under Advanced settings and provide a dedicated monitoring user's credentials with read-only access.
Step 3: Monitor the XWiki Server Configuration Endpoint
XWiki exposes a plain-text server descriptor that reflects the running wiki configuration. This lightweight check confirms the XWiki application is initialised and serving requests:
- Click Add Monitor → HTTP / HTTPS.
- Enter the XWiki server descriptor URL:
https://xwiki.yourdomain.com/xwiki/bin/get/XWiki/XWikiServerXwiki?xpage=plain - Set Check interval to
5 minutes. - Set Expected HTTP status to
200. - In Keyword check, enter
xwikito confirm the response contains the expected wiki identifier. - Click Save.
Step 4: SSL Certificate Alerts
XWiki deployments typically sit behind an nginx or Apache reverse proxy that terminates HTTPS. Certificate renewal failures can go unnoticed until browsers start rejecting connections.
Add certificate expiry alerts to your HTTPS monitors:
- Open any of the HTTPS monitors you created above.
- Enable Monitor SSL certificate under the SSL section.
- Set Alert when certificate expires in less than
21 days. - Click Save.
Repeat for every hostname your XWiki instance is reachable under. Check your current certificate status:
echo | openssl s_client -servername xwiki.yourdomain.com \
-connect xwiki.yourdomain.com:443 2>/dev/null \
| openssl x509 -noout -dates
A 21-day alert window gives you time to investigate renewal failures and intervene before the certificate expires.
Step 5: Heartbeat Monitoring for XWiki Scheduled Tasks
XWiki's Scheduler Application runs background tasks that are critical to platform health: computing wiki statistics, sending notification digests, and cleaning up temporary data. These tasks run inside the JVM and do not expose an HTTP endpoint — so HTTP monitoring cannot verify they completed.
Use Vigilmon's cron heartbeat to confirm each scheduled task completes on time.
Wiki Statistics Computation
XWiki computes page view statistics on a schedule. If this job stalls, the Statistics module shows stale data and the job queue can back up.
- In Vigilmon, click Add Monitor → Cron Heartbeat.
- Set the name to
XWiki Statistics Job. - Set Expected ping interval to match the job's configured frequency (e.g.,
60 minutes). - Copy the heartbeat URL (e.g.,
https://vigilmon.online/heartbeat/abc123). - In XWiki's Scheduler Application, edit the statistics job's Groovy script to append a heartbeat ping on completion:
// Existing statistics computation logic above
// ...
// Signal successful completion to Vigilmon
def url = new URL("https://vigilmon.online/heartbeat/abc123")
url.openConnection().with {
requestMethod = "GET"
connect()
disconnect()
}
Notification Digest Job
XWiki sends users email digests of watched-page changes. A failed digest job means users stop receiving change notifications.
- Click Add Monitor → Cron Heartbeat.
- Set the name to
XWiki Notification Digest. - Set Expected ping interval to match the digest schedule (e.g.,
1440 minutesfor daily digests). - Update the notification job's Groovy script similarly to append a heartbeat ping after successful digest delivery.
If either job stalls or is skipped entirely, Vigilmon alerts you after the expected interval passes.
Step 6: Configure Alert Channels
- Go to Alert Channels in Vigilmon and connect Slack, email, or a webhook to receive alerts.
- Set Consecutive failures before alert to
2on web UI and REST API monitors. XWiki's JVM startup after a restart takes 30–60 seconds and can cause a single probe to fail without indicating a real outage. - Use Maintenance windows in Vigilmon when upgrading XWiki or applying extension updates:
# Suppress alerts for 60 minutes during a major XWiki upgrade
curl -X POST https://vigilmon.online/api/maintenance \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{"monitor_id": "YOUR_MONITOR_ID", "duration_minutes": 60}'
Summary
| Monitor | Target | What It Catches |
|---|---|---|
| Web UI | /xwiki/bin/view/Main/ | Tomcat crash, DB down, render failure |
| REST API | /rest/wikis/xwiki/spaces | API layer unavailable |
| Server descriptor | /xwiki/bin/get/XWiki/XWikiServerXwiki?xpage=plain | App initialisation failure |
| SSL certificate | Each HTTPS hostname | Certificate expiry |
| Statistics job heartbeat | Heartbeat URL | Stalled statistics computation |
| Notification digest heartbeat | Heartbeat URL | Failed notification delivery |
XWiki gives your team a powerful, self-hosted alternative to Confluence — but running it yourself means owning its uptime. With Vigilmon covering the web UI, REST API, SSL certificates, and scheduled tasks, you have full visibility into your XWiki instance without needing to log in and check manually.