MSBD Logs is a WordPress plugin that allows developers to review and manage log files generated by plugins and themes.
MSBD Logs is a lightweight logging helper for WordPress plugin and theme developers.
It provides a simple PHP API to write log messages and an admin interface to view, filter, and manage log files stored in the WordPress installation root logs/ directory.
The plugin is designed to be minimal, dependency-free, and safe for use on production sites.
🎉 Key Features
- Simple logging function for developers
- Daily rotating log files
- Separate log types:
debugandattention - Debug logging can be enabled or disabled from admin
- Admin UI to view, and filter log files
- Secure file handling (capability and nonce protected)
- No database tables or external services
- Translation-ready
Log Storage Location
All log files are stored in: logs/. logs folder is created in the WordPress installation root on activating the plugin. An index.html file is automatically created to prevent directory browsing.
Developer Usage
Use the following helper function anywhere in your plugin or theme code:
* msbd_logs_create( 'Log something only when the debug mode is active' );
* msbd_logs_create( 'Unexpected issue detected, always log', 'attention' );
* debug logs are written only when debug mode is enabled
* attention logs are always written
Admin Interface
After single-site activation, a new menu item “MSBD Logs” appears in the WordPress admin dashboard. When activated network wide, the settings page appears under Network Admin → Settings → MSBD Logs.
From this screen, administrators can:
- View available log files
- Filter log files by filename
- Inspect log file contents
- Enable or disable debug logging
Only users with the proper admin capability can access the interface. Single-site activation requires manage_options; network-wide activation requires manage_network_options.
Standalone & Compatible
MSBD Logs works fully as a standalone plugin.
If other MSBD-related plugins are installed in the future, menu grouping can be handled automatically without affecting functionality.
