tutorial

Monitoring MyBB with Vigilmon

MyBB is a lightweight PHP forum platform active since 2002 — here's how to monitor its homepage, login page, search endpoint, SSL certificates, and scheduled background tasks with Vigilmon.

MyBB (MyBulletinBoard) is a free, open-source PHP forum software that has been serving gaming communities, hobby forums, and small organization intranets since 2002. Its lightweight footprint, plugin system, and ease of use have kept it popular for more than two decades. Self-hosting MyBB means you own the uptime — and its task scheduler handles everything from thread pruning to email delivery in the background. Vigilmon gives you full visibility: web UI availability, login page health, search endpoint status, SSL certificate alerts, and heartbeat monitoring for scheduled background tasks.

What You'll Set Up

  • HTTP uptime monitor for the MyBB homepage (index.php)
  • Login page availability check (/member.php?action=login)
  • Search endpoint response check (/search.php?action=getsearchresults)
  • SSL certificate expiry alerts for HTTPS deployments
  • Cron heartbeat for MyBB scheduled tasks (thread pruning, email queue, daily digest)

Prerequisites

  • MyBB 1.8.x installed and accessible over HTTP or HTTPS
  • A free Vigilmon account

Step 1: Monitor the MyBB Homepage

The index.php homepage is every visitor's first stop. A failure here means the entire forum is inaccessible.

  1. Log in to vigilmon.online and click Add Monitor.
  2. Set Type to HTTP / HTTPS.
  3. Enter your MyBB URL: https://forum.yourdomain.com/index.php (or https://forum.yourdomain.com/ if your server redirects).
  4. Set Check interval to 1 minute.
  5. Set Expected HTTP status to 200.
  6. Enable Keyword check and enter your forum's board name or a phrase from your header template.
  7. Click Save.

The keyword check ensures MyBB rendered real content rather than a PHP fatal error that the web server forwarded with a 200 status.


Step 2: Monitor the Login Page

MyBB's member login page (/member.php?action=login) exercises the authentication, session, and cookie subsystems. If this page fails while the homepage loads, users cannot sign in — they'll see the forum content but be locked out of their accounts.

  1. Add a new monitor with Type HTTP / HTTPS.
  2. Enter: https://forum.yourdomain.com/member.php?action=login
  3. Set Expected HTTP status to 200.
  4. Enable Keyword check and enter "username" (present in all MyBB login forms as a field name).
  5. Set Check interval to 3 minutes.
  6. Click Save.

A login page failure with a functioning homepage typically indicates a session table issue, a database permission error, or a corrupted MyBB upgrade.


Step 3: Monitor the Search Endpoint

MyBB's search system (/search.php?action=getsearchresults) uses MySQL fulltext search and is sensitive to database configuration changes, table corruption, and large-table performance degradation. It's one of the first features to silently break after a server migration.

  1. Add a new monitor with Type HTTP / HTTPS.
  2. Enter: https://forum.yourdomain.com/search.php?action=getsearchresults
  3. Set Expected HTTP status to 200.
  4. Enable Keyword check and enter "Search Results" (present in the page title of a valid search results page).
  5. Set Check interval to 5 minutes.
  6. Click Save.

If the search subsystem returns an error page, the keyword check fails and Vigilmon alerts you — before users start reporting that search is broken.


Step 4: SSL Certificate Alerts

MyBB installations often run for years on the same certificate setup. An expired certificate will lock out your entire user base and may generate browser security warnings that damage trust in your community.

  1. Open the HTTP monitor for your MyBB homepage (created in Step 1).
  2. Enable Monitor SSL certificate.
  3. Set Alert when certificate expires in less than 21 days.
  4. Click Save.

A 21-day lead time gives you enough runway to investigate renewal failures, fix misconfigured auto-renewal scripts, or manually renew before users see any warnings.


Step 5: Heartbeat Monitoring for MyBB Scheduled Tasks

MyBB's task system handles automated thread pruning, email queue delivery, and daily digest jobs. Like phpBB, MyBB runs its task system inline — tasks are triggered by normal forum traffic. Low-traffic periods mean tasks go unexecuted; if your forum quiets overnight, the email queue may not drain until morning traffic arrives.

Running MyBB tasks from a system cron and monitoring them with a Vigilmon heartbeat replaces this passive model with a guaranteed execution schedule.

Create a Heartbeat Monitor

  1. In Vigilmon, click Add MonitorCron Heartbeat.
  2. Give it a name like MyBB task runner.
  3. Set the expected ping interval to match your task schedule (e.g., 60 minutes for hourly task execution).
  4. Copy the heartbeat URL (e.g., https://vigilmon.online/heartbeat/abc123).

Run MyBB Tasks via System Cron

MyBB provides a task.php script that can be called from the command line or via a web request:

# Run MyBB tasks every hour and ping Vigilmon on success
0 * * * * curl -s "https://forum.yourdomain.com/task.php?mybb_task_key=YOUR_TASK_KEY" && \
  curl -s https://vigilmon.online/heartbeat/abc123

Find your mybb_task_key in the MyBB Admin Control Panel under Tools & Maintenance → Task Manager. The key is displayed in the URL when you view a task.

Alternatively, run tasks directly via the CLI:

0 * * * * cd /path/to/mybb && php task.php && curl -s https://vigilmon.online/heartbeat/abc123

The && ensures Vigilmon is only pinged on a successful task run. A PHP error, a locked task, or a database failure causes the heartbeat to go missing — Vigilmon alerts after the expected interval passes without a ping.

Monitor High-Value Tasks Individually

For critical tasks like email delivery, create a dedicated heartbeat and invoke that task explicitly:

# Run the email queue task every 15 minutes
*/15 * * * * curl -s "https://forum.yourdomain.com/task.php?mybb_task_key=YOUR_TASK_KEY&task=sendmail" && \
  curl -s https://vigilmon.online/heartbeat/email-abc123

Step 6: Configure Alert Channels

  1. Go to Alert Channels in Vigilmon and add Slack, email, or a webhook.
  2. Set Consecutive failures before alert to 2 on the homepage monitor — MyBB's inline task execution can briefly spike response times and cause a single probe to time out.
  3. Use Maintenance windows during MyBB upgrades or plugin installations:
curl -X POST https://vigilmon.online/api/maintenance \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{"monitor_id": "abc123", "duration_minutes": 20}'

Summary

| Monitor | Target | What It Catches | |---|---|---| | Homepage | /index.php | PHP errors, web server down | | Login page | /member.php?action=login | Session/auth subsystem failure | | Search endpoint | /search.php?action=getsearchresults | Fulltext search failure | | SSL certificate | Forum domain | Certificate expiry, renewal failure | | Cron heartbeat | Heartbeat URL | Email queue stalled, thread prune missed |

MyBB's passive task model makes it easy for scheduled maintenance to silently fall behind during low-traffic hours. Adding a system cron with a Vigilmon heartbeat transforms this into an active health signal — you'll know the moment a task run fails or goes missing, long before your users notice undelivered notifications or unpruned threads.

Monitor your app with Vigilmon

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

Start free →