Network Viewer is a real-time HTTP request log built into your WordPress admin. It records every connection that hits your site so you can see, at a glance, who’s reaching it, where they’re from, what they’re asking for, and how the server responded.

What this feature does

Once enabled, AdminEase intercepts incoming requests and writes a row to its own database table for each one. Every entry captures the request method, full URI, response code, response time, request size, protocol, port, IP address, country and hostname, browser and device, user agent, user ID and role (when logged in), and session ID. The result is a searchable, filterable timeline of activity on your site, viewable straight from the AdminEase dashboard with no FTP or hosting panel access required.

It’s especially useful for spotting automated scanners probing for vulnerabilities, debugging integrations that touch your REST API or admin-ajax.php, identifying slow endpoints, and answering “what hit my site at 3am?” without trawling raw access logs.

Strange URIs are normal

If you see paths like /-/-/-/-/, /wp-admin/setup-config.php, or random PHP file names you don’t recognise, those are automated scanners crawling the public internet looking for known weaknesses. Their presence does not mean your site is compromised, only that it’s online.

How to enable it

  1. Open AdminEase › Debug. In the WordPress admin menu, click AdminEase, then switch to the Debug tab.
  2. Toggle Network Viewer on. Find the Network Viewer setting and flip the switch. The settings panel expands to reveal sub-options.
  3. Choose your retention. Set Maximum Log Entries and Auto Clear Logs After to a window you’re comfortable with. The defaults (1,000 entries, cleared after 24 hours) work well for most sites.
  4. Save settings. Scroll to the bottom of the dashboard and click Save settings. AdminEase creates the database table on first save and the dashboard reloads so the Network Viewer screen appears underneath the toggle.
Disk and database impact

Each log entry is a row in your wp_adminease_network_viewer_log table. Busy sites can generate thousands of rows per hour. The Maximum Log Entries cap and the hourly cleanup cron prevent runaway growth, but if your host has tight database quotas, start with a low cap like 500 and increase only if you need more history.

Settings reference

Setting What it does Default
Network Viewer Master switch. Turning it off stops new entries from being recorded. The table and existing entries are preserved. Off
Maximum Log Entries Hard cap on how many rows the table can hold. When the cap is hit, the oldest entries are pruned first. Range: 100 to 100,000. 1000
Auto-Refresh Interval How often the Network Viewer screen reloads itself when auto-refresh is on. Choose 3, 5, 10, 30, or 60 seconds. 10 seconds
Auto Clear Logs After Maximum age of a log entry before the hourly cleanup cron deletes it. Choose 1 Hour, 24 Hours, 7 Days, or Never. 24 Hours
Exclude IP Addresses Comma- or line-separated list of IPs to skip. Useful for filtering out your own office IP, monitoring services, or known internal traffic. Empty
Log WP AJAX Requests Include WordPress AJAX calls (anything hitting admin-ajax.php) in the log. Off
Log Cron Requests Include WordPress cron triggers (wp-cron.php) in the log. Off
Log REST API Requests Include calls to the WordPress REST API (/wp-json/…) in the log. Off
Auto-Load Network Viewer When on, the viewer fetches its first page of entries as soon as the AdminEase dashboard opens. Off means you click Refresh manually. Off

Using the Network Viewer

With the feature enabled and saved, a Network Viewer panel appears below the settings on the Debug tab. The panel has three rows of controls and a paginated table beneath them.

Network Viewer log table
The Network Viewer log table inside the AdminEase Debug tab.

Top action bar

Three buttons sit above the filters:

  • Refresh reloads the current page of entries on demand.
  • Clear wipes every row from the table after a confirmation prompt. There is no undo.
  • Auto-refresh is a toggle. Switch it on and the table reloads every n seconds (the interval you set in the settings).

Filters

Below the actions are six filters you can combine freely:

  • Method: GET, POST, PUT, DELETE, PATCH, or HEAD.
  • Status: 2xx success, 3xx redirect, 4xx client error, or 5xx server error.
  • Type: Frontend, Admin, Ajax, REST API, or Cron.
  • Location: free-text country name match.
  • IP: exact-match IP filter.
  • Path: URL-path substring match.

The log table

Each row in the table is a single request. Click a row to expand the full detail panel, which groups information into four sections: Request Information (timestamp, method, type, protocol, port, full URI, query string, POST data), Client Information (IP, hostname, country, browser, device, user agent), Response Information (status code, response time, request size, referer), and User Information (user ID, user role, session ID).

What happens behind the scenes

Database, cron, and request hooks

Network Viewer uses one custom table, wp_adminease_network_viewer_log, with indexes on timestamp, IP, user ID, method, response code, request type, and bot flag for fast filtering. Logging hooks into the WordPress request lifecycle on init, capturing the request before it’s routed.

An hourly cron event named adminease_cleanup_network_viewer_logs runs in the background to enforce the Auto Clear Logs After retention window and the Maximum Log Entries cap. The cron is registered when the feature is enabled and unscheduled automatically when AdminEase is deactivated.

AdminEase Pro extras

With AdminEase Pro active, the Network Viewer panel gains three additional capabilities:

Insights summary ProAggregated stats above the log: top countries, top IPs, request types, and bot vs human ratio.
Analytics charts ProVisualisations for request volume over time, status-code distribution, and traffic-type breakdowns.
CSV export ProDownload the current filtered view as a CSV in batches, suitable for offline analysis or auditing.

Pro also raises the maximum-entries ceiling for sites that need long retention windows.

Troubleshooting

The Network Viewer panel doesn’t appear after I enable it

The dashboard reloads automatically after the first save, which is when AdminEase mounts the viewer screen. If the panel still isn’t visible, hard-refresh your browser. If the table itself is missing in the database (you’ll see a query error in the debug log), deactivate and reactivate AdminEase to trigger the table-creation routine.

I see no entries even though traffic is hitting the site

Three things to check, in order: confirm the master toggle is on; confirm the request type isn’t filtered out (Frontend requests are logged by default, but AJAX, Cron, and REST API need their own toggles); confirm your IP isn’t in the Exclude IP Addresses list.

The country column is empty

Country and city are populated from the request’s headers (Cloudflare and similar CDNs add them) or, when those are absent, from a best-effort lookup of the IP. If your site sits behind a reverse proxy that doesn’t forward client headers, the column may be blank.

Logging is slowing down my site

Each request adds a small write to the log table. If you notice latency on a high-traffic site, lower the Maximum Log Entries cap (so the cleanup cron runs faster) and turn off the AJAX, Cron, and REST API toggles. As a last resort, set Auto Clear Logs After to 1 Hour so the table stays small.