Faultwright – Error Monitor, Cron & Email Failure Alerts
“The site was fine yesterday.” Faultwright shows you what broke, when it started, which plugin is probably responsible, and what to do about it. No external account, no developer required. Five failure sources, one timeline PHP errors – fatals, uncaught exceptions and warnings, with the file, line a
“The site was fine yesterday.” Faultwright shows you what broke, when it started, which plugin is probably responsible, and what to do about it. No external account, no developer required.
Five failure sources, one timeline
- PHP errors – fatals, uncaught exceptions and warnings, with the file, line and a trimmed stack trace. An optional one-file early loader captures fatals raised while other plugins start up. New lines in debug.log are imported too.
- JavaScript errors – a 1.5 KB collector (no cookies, no dependencies; sampling uses sessionStorage) reports browser errors, attributed to the plugin or theme that shipped the script. Browser-extension noise is filtered out.
- Cron health – detects a dead WP-Cron, overdue events, events whose plugin was removed, and scheduled jobs that crash.
- Email failures – every wp_mail failure plus SMTP-plugin errors, and a warning when orders or form entries happen but no email goes out.
- Update failures – plugin, theme and core updates that could not be installed, auto-update failures and plugins that crash on activation.
- REST / AJAX 5xx – API routes and admin-ajax actions that return server errors.
“What changed right before it started”
Faultwright keeps a change log: plugin and theme installs, updates, activations, deletions, theme switches, WordPress and PHP version changes, permalink and URL changes. Every issue shows the changes in the 48 hours before its first occurrence, ranked by likelihood.
Plain-English explanations
Over forty built-in explanations cover the errors people actually hit: memory exhausted, maximum execution time, undefined function, cannot redeclare, headers already sent, SMTP authentication, cURL timeouts, mixed content, “$ is not defined”, chunk load errors and more. Each one says what it means, the likely cause, what to try, and when to contact a developer or your host.
For anything else, an optional Explain with AI button sends the error details to an AI provider. On WordPress 7.0 and later it can use the AI provider you connect under Settings → Connectors, through WordPress’s built-in AI Client, so there is no separate key to manage. On any version you can instead bring your own key for OpenAI, Anthropic, Google Gemini or any OpenAI-compatible endpoint (Ollama, Groq, OpenRouter). Nothing is ever sent automatically.