=== Fluent Error Logger ===
Contributors: fluentcart
Tags: error log, debug, error tracking, php errors, exception monitoring
Requires at least: 5.6
Tested up to: 6.5
Requires PHP: 7.4
Stable tag: 1.3.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Capture PHP errors, exceptions, and fatal errors in WordPress and stream them to FluentLogs for real-time tracking.

== Description ==

**Fluent Error Logger** is the official WordPress client for [FluentLogs](https://fluentlogs.com) — a hosted error tracking service built for WordPress sites. The plugin registers PHP error, exception, and shutdown handlers to capture problems as they happen, and pushes structured payloads to your FluentLogs project where they are de-duplicated, grouped, and surfaced in a clean dashboard.

Stop hunting through `debug.log`. See errors the moment they happen, with the context you need to fix them.

= What gets captured =

* PHP fatal errors (`E_ERROR`, `E_PARSE`, `E_CORE_ERROR`, `E_COMPILE_ERROR`)
* PHP warnings, notices, and deprecations
* Uncaught exceptions
* Shutdown-time fatals (out-of-memory, white screen)
* Request method, URL, user agent, and the originating plugin/theme

= Features =

* **Real-time tracking** — errors land in your dashboard within seconds.
* **Smart de-duplication** — identical errors are grouped into a single row with occurrence counts so the dashboard never floods.
* **Severity filtering** — capture everything, or only `warning` and above, or only `error`.
* **Path ignore list** — exclude noisy files or vendor directories.
* **Watch scope** — limit capture to your own plugins/themes, or watch the whole site.
* **Safe by design** — sensitive request fields (passwords, tokens, cookies) are redacted before transmission.
* **Failure-tolerant** — the logger never throws, never breaks your site, and falls back silently if the API is unreachable.

= You will need =

A free [FluentLogs](https://fluentlogs.com) account to get an API key. Sign up, create a project, copy the key into the plugin settings, and you're done.

= Privacy =

This plugin sends error data to your own FluentLogs project. The destination service is operated by FluentCart. Request bodies are sanitized before being transmitted; passwords, auth tokens, API keys, and cookie values are redacted. See [fluentlogs.com/privacy](https://fluentlogs.com/privacy) for the full policy.

== Installation ==

1. Upload the `fluent-error-logger` folder to `/wp-content/plugins/`, or install it from the Plugins screen in WordPress.
2. Activate the plugin through the **Plugins** menu.
3. Sign up at [fluentlogs.com](https://fluentlogs.com) and create a project — copy the project's API key.
4. Go to **Settings → Fluent Error Logger** and paste the API key.
5. Click **Test Connection** to verify, then save.

That's it. Errors will start showing up in your FluentLogs dashboard the next time something goes wrong.

== Frequently Asked Questions ==

= Will this slow down my site? =

No. The plugin uses non-blocking transport and queues errors until the end of the request. If a request never errors, the plugin does almost nothing.

= What happens if FluentLogs is unreachable? =

The plugin fails silently. It will never throw, never block a request, and never break your site if the API is down. Errors that can't be sent are dropped.

= Does it capture errors from other plugins? =

Yes. By default it captures errors from anywhere in WordPress, including core, themes, and other plugins. You can narrow the scope in settings if you only want to track your own code.

= Can I exclude certain files or paths? =

Yes. The **Ignore Paths** setting accepts a list of substrings; any error whose file path contains one of them will be skipped.

= Is the data encrypted in transit? =

Yes. All payloads are sent over HTTPS to `fluentlogs.com`.

= Does this replace `WP_DEBUG_LOG`? =

It complements it. `WP_DEBUG_LOG` writes to a local file; this plugin streams the same errors (plus context) to a searchable, de-duplicated dashboard you can access from anywhere. You can keep both enabled.

= Can I self-host the backend? =

The backend is open source. See the [project repository](https://github.com/fluentcart/fluentlogs) for self-hosting instructions.

== Changelog ==

= 1.3.0 =
* Added watch-scope filter to limit capture to your own plugins/themes.
* Added Telegram notifications support (configured server-side).
* Improved sanitization of request data — broader redaction of sensitive fields.
* Better handling of shutdown-time fatals, including OOM.

= 1.2.0 =
* Added severity-level filtering (all / info / warning / error).
* Added per-source watch list.
* Settings UI rewrite with connection test button.

= 1.1.0 =
* Added exception handler.
* Added deprecation capture.
* Improved cross-request de-duplication via transients.

= 1.0.0 =
* Initial release.

== Upgrade Notice ==

= 1.3.0 =
Adds watch-scope filtering and improved sanitization. Safe drop-in upgrade.
