=== Honeylog ===
Contributors: honeylog
Tags: analytics, logging, ingestion
Requires at least: 6.0
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Honeylog batches frontend requests into a JSON queue and flushes them to Honeylog.

== Description ==

# Honeylog WordPress Plugin

Multi-file WordPress plugin that batches frontend requests into a JSON queue and flushes to Honeylog.

This client targets self-hosted and conventional managed WordPress. It is not
the complete integration for WordPress VIP, where edge cache hits do not execute
PHP and the uploads filesystem is not a durable local queue. Use
`clients/wordpress-vip-s3` for VIP.

## Behavior

- Tracks frontend requests (excludes wp-admin pages).
- Writes each event to a local NDJSON queue file.
- Uses an option-based lock on every queue write/mutation.
- Runs a cron-based flush every 60 seconds.
- Sends queued events in batches of up to 100.

## Plugin Files

- `honeylog-ingestion.php`: bootstrap and WordPress hooks
- `includes/honeylog-constants.php`: constants + option sanitizers
- `includes/honeylog-batching-utils.php`: queue file lock, enqueue/snapshot/requeue/flush
- `includes/honeylog-request-utils.php`: request capture + HTTP batch sender
- `includes/honeylog-settings.php`: admin settings page
- `includes/honeylog-debug.php`: persistent debug log + last status/error helpers

## Settings

Go to `Settings -> Honeylog`:

- `Token`
- `Site Domain` (optional)

The ingestion endpoint is fixed to `https://api.honeylog.io/events`.

## Debugging

Debug log is written to:

- `wp-content/uploads/honeylog-ingestion/debug.log` when available
- fallback: `wp-content/honeylog-ingestion-debug.log`
