Log Channels forward a copy of every new activity log entry to an external destination the moment it is recorded – so you can back up, search, and audit activity outside the WordPress database. Delivery runs in the background, so it does not slow down your site. Log Channels are a Premium feature of Activity Log Pro.
Log Channels Integrations
Datadog Integration
Grafana Loki Integration
Better Stack Integration
Loggly Integration
Papertrail Integration – (coming soon)
Slack Integration – (coming soon)
Custom Webhook – (coming soon)
Custom Syslog – (coming soon)
What are Log Channels?
Log Channels mirror your activity log to one or more external services. Each time a new log row is saved, the plugin queues a background job to send the event to every enabled channel. You can mix different destinations (for example, a log platform and a team chat) and turn individual channels on or off without removing their configuration.
Typical uses include:
- Off-site backup of audit data if the log in WordPress is cleared or the site is compromised
- Central monitoring when you run many WordPress sites and want one place to search and filter
- Integration with the logging or SIEM tools your organisation already uses
The outgoing payload includes standard event fields (including site name and site URL), so entries from multiple sites are easy to tell apart in your external tool.
Setting up Log Channels – Quick Start
- In WordPress admin, go to Activity Log Pro → Settings
- Open the Log Channels tab
- Click Add Channel
- Under Service, pick the preset that matches what you use (Grafana Loki, Better Stack, Slack, and so on – or Custom Webhook / Custom Syslog)
- Enter a Label (a friendly name for this channel in your list)
- Complete the fields shown for that service; the form updates based on your selection
- Click Save Channel
- Use Test on the channel row to send a sample delivery and confirm the connection
- Use Enable so the channel starts receiving real log events (or leave it Disabled until you are ready)
The Delivery Status panel on the right shows how many channels are active, the last send time, queue depth, and recent errors if something fails.
Built-in service presets
When you add a channel, you choose a Service first. That loads the right channel type and the fields you need. You will also see a short What you’ll need checklist and, for many presets, in-screen guidance – use that for the exact values your provider gives you (URLs, tokens, API keys, etc.).
| Preset | What it’s for (at a glance) |
|---|---|
| Grafana Loki (HTTPS Push/API) | Push logs to Grafana Loki (cloud or self-hosted) |
| Better Stack | Send to Better Stack Logs via their HTTP API |
| Slack | Post to a channel using an Incoming Webhook |
| Papertrail (Token / HTTPS) | HTTPS log shipping for modern Papertrail / SolarWinds setups |
| Papertrail (Classic Syslog) | Classic host-and-port syslog to Papertrail |
| Loggly | Send to Loggly using your customer token |
| Datadog | Send logs to Datadog Logs |
| Custom Webhook | POST to any HTTPS endpoint you control or that your vendor documents |
| Custom Syslog | Forward to a syslog server or receiver (for example SIEM) over the network |
Exact steps for creating API keys, sources, or webhooks live in each vendor’s own documentation; the plugin’s form tells you which pieces to paste where.
Managing channels
Each saved channel appears as a row with:
- Test – sends a test payload so you can verify credentials and reachability
- Edit – change the label or connection details
- Enable / Disable – pause delivery without deleting the channel
- Delete – remove the channel permanently
If a send fails, the Last error text on the row (and the Delivery Status sidebar) helps you see what went wrong. You can fix settings and use Test again.
Delivery queue and performance
Processing is asynchronous: log rows are still written to the database immediately; forwarding happens in a background job so admin and front-end requests are not blocked waiting on external APIs.
The sidebar shows Queued work. If needed, you can use Process Queue Now to nudge pending jobs (useful if you are testing or if WP-Cron runs infrequently on your host).
Tips & best practices
- Start with one channel and Test before enabling multiple destinations, so you can confirm credentials and firewalls.
- Enable a channel only when you are satisfied tests succeed; that avoids noisy failed attempts in your external system.
- Custom Webhook is the flexible option when your stack expects a standard HTTP POST – point it at an endpoint your team or vendor provides.
- For many sites, use the same destination on each site and rely on site name and site URL in the payload to filter in your log platform.
- If you rely on off-site copies for compliance or incident response, confirm periodically that Last sent in Delivery Status updates when you expect traffic.
Frequently Asked Questions
Are Log Channels a Premium feature?
Yes. Upgrade to Activity Log Pro Premium to configure Log Channels. See Pricing.
Does forwarding replace the activity log in WordPress?
No. The WordPress activity log is still the primary store; channels receive a copy of each new event.
Can I send to more than one place?
Yes. Add multiple channels; each enabled channel receives the same events (subject to successful delivery).
Will failed external delivery remove my log entry?
No. Failed channel delivery does not affect whether the event was saved in the database.
My external tool shows nothing – what should I check?
Confirm the channel is Enabled, run Test, and verify credentials and network access from your server. Check Last error on the channel and your destination’s intake logs if available.
Can you add support for another service?
If your stack is not listed, Custom Webhook or Custom Syslog may still work. You can also use Request a channel from the Log Channels screen sidebar to suggest an integration for a future release.
