WP Beacon
Links
Introduction
WP Beacon is the spiritual successor to the WP Sites Monitor. We have taken the lessons learned from that project and have built a new plugin from the ground up.
The idea behind WP Beacon is to provide a super lightweight and simple plugin to track your sites and metrics in a central place. This allows us to have a birds-eye view of all our sites and to quickly identify any issues.
The plugin is aimed at developers and agencies which use Composer and/or automate their plugin updates and like to have a simple site overview without all the additional bloat most management plugins provide.
Beacon vs Sites Monitor
The key difference is that WP Beacon is designed solely to transport your site metrics elsewhere (hence the name "Beacon")—it does not include additional React components for the frontend. This keeps the plugin lightweight and focused on its core purpose.
WP Beacon comes with preconfigured no-code database options for storing your metrics, but you can use the data as you see fit, whether for analysis or creating your own dashboard. Plus, the entire plugin is completely open-source and free to use.
Installation
Download the latest release from the GitHub repository or install it via Composer.
After installing the plugin, you can find the settings under "Settings > WP Beacon" in the admin interface. On multisites this is only available on the network admin.
Choose integration
You can choose between different services to send your data to. Currently, only NocoDB is supported, but we plan to add more services in the future.
1. NocoDB
NocoDB is a free and open-source Airtable alternative. You can host it yourself or use their cloud service. For the sake of this documentation, we will assume you'll use their cloud service.
- Create an account on NocoDB
- Copy the sample template to your account here
- Create an API key in your NocoDB account
- Get the Table ID from the URL of your table
Bonus
- You could add an extra column
User
and assign NocoDB users to specific sites - You can leave comments on the records to discuss issues
- You can set up a custom domain for your NocoDB instance
Configuration
You can configure the plugin via the admin settings or by defining constants.
Option 1. via the admin settings
Option 2. via constants
You can also define the settings as constants in your wp-config.php file. This lets you manage the settings in a central place (e.g. server) and have different settings per environment (e.g. local, staging, production), without worrying about data being overwritten during database migrations.
The following constants are available:
define('WP_BEACON_SERVICE', ''); // e.g.: 'nocodb', 'airtable'
define('WP_BEACON_SCHEDULE', ''); // e.g.: 'hourly', 'daily', 'twicedaily'
// Example settings for NocoDB
define('WP_BEACON_NOCODB_URL', '');
define('WP_BEACON_NOCODB_TABLE_ID', '');
define('WP_BEACON_NOCODB_XC_TOKEN', '');
When you use the constants, the admin settings will be disabled like so:
Environments
The plugin is designed to work in different environments. You can set up different configurations for local, staging, and production environments. It does this by using the WP_ENVIRONMENT_TYPE constant.
FAQ
What happens when my integration records are deleted?
WP Beacon will automatically recreate the records when they are missing.