=== MSBD Logs ===
Contributors: shahalom, microsolutions
Tags: logs, logging, debug, debugging, error log
Requires at least: 5.5
Tested up to: 6.9
Requires PHP: 7.4
Stable tag: 1.0.3
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html


Simple logging helper for plugin and theme developers with an admin UI to view and manage log files.

== Description ==

### 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: `debug` and `attention`
* 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.


== Installation ==

1. Upload the `msbd-logs` folder to the `/wp-content/plugins/` directory
2. Activate the plugin through the **Plugins** menu in WordPress
3. Navigate to **Admin → MSBD Logs** for single-site activation, or **Network Admin → Settings → MSBD Logs** for network-wide activation


== Frequently Asked Questions ==

= Does this plugin replace WP_DEBUG or PHP error logging? =

No. MSBD Logs is a helper for custom logging inside plugins or themes. It does not replace WordPress core debugging or PHP error logs.


= Where are log files stored? =

`logs` folder is created in the WordPress installation root on activating the plugin. All log files are stored in: `logs/`.


= What is the difference between `debug` and `attention` logs? =

* **debug**: Logged only when debug mode is enabled in the admin
* **attention**: Always logged, regardless of debug setting


= Is this plugin safe for production sites? =

Yes. Debug logging can be disabled at any time, and logs are written only when explicitly requested by developers.


= Is this plugin compatible with all latest versions of PHP, HHVM, et cetera, et cetera? =

Short answer: probably. Long answer: I honestly don't know for sure. I made a simple plugin. That's why I recommend a minimum of PHP 8.0. Also I do specific tests to ensure that I stay compatible with PHP 8.2


= This plugin breaks my site! How do I fix it? =

Deactivate the plugin and report this on the [GitHub project page](https://github.com/Micro-Solutions-Bangladesh/MSBD-Logs/issues), so that I/we could take a look into the matter.


= My question isn't answered here =

Somehow we overlooked your question, We apologize for this. Please visit contact us page of <a href="https://microsolutionsbd.com/contact-us/?about=MSBD%20Logs%20Plugin">Micro Solution Bangladesh</a> for your query.


== Screenshots ==
1. Settings: The screen showing list of debug files and content from one.


== Changelog ==

= 1.0.3 =
* Add multisite feature. 

= 1.0.2 =
* Add more nonce check to enhance security. 

= 1.0.1 =
* Refactor nonce handling to enhance security.

= 1.0.0 =
* Initial release
* Logging helper function
* Admin interface for viewing and managing logs
* Debug mode toggle
* Secure file handling
