Logtern – Debug Log Viewer
·
View, search, filter, and manage the WordPress debug.log file directly from your dashboard — no FTP or file manager required.
Logtern gives developers and site administrators a fast, safe way to work with the WordPress debug log without ever leaving the admin dashboard.
Why Logtern?
Log viewers are a common plugin category — Logtern was built because the existing options kept falling short on the sites that need one most:
- It keeps working when your site is broken. A log viewer is needed exactly when a site is misbehaving — yet that is when other plugins spray PHP notices and database errors into every response, which breaks most AJAX-driven admin tools. Logtern shields its own responses from stray output on both the server and the client, so the viewer stays usable in the middle of the storm. Live mode never gives up either: connection problems just slow the polling down until the site answers again.
- It enforces your “hide errors” setting. Some plugins force raw database errors onto every page even when
WP_DEBUG_DISPLAYis off. When you have chosen not to display errors, Logtern re-asserts that choice — the errors still land in the log, they just stop being painted onto your site. - It never edits wp-config.php with regexes. The debug toggle locates constants with PHP’s tokenizer, re-verifies every change, and swaps the file in atomically with permissions preserved. If anything looks unsafe, it refuses to write instead of guessing.
- It does not leave your log at a public URL. Enabling logging points the log at a randomly named file inside an access-protected directory instead of the publicly guessable
wp-content/debug.log. - It stays fast on gigantic logs. Seek-based tail reads and chunked downloads mean a multi-hundred-megabyte log opens instantly and never exhausts PHP memory.
Features
- Live log viewer — read the debug log from Logtern’s own page under Tools.
- One-switch debug mode — a clear on/off switch shows at a glance whether logging is active; no wp-config.php editing needed, ever.
- Real-time tail — the log loads instantly on page open; flip the Live button and Logtern tails the file like
tail -fin a terminal (1–30 second polling, your choice). Polling is lightweight: nothing is re-read unless the file actually changed, and it pauses automatically while the tab is hidden. - One-click clear — empty the log file after confirming, no file manager needed.
- WP_DEBUG toggle — safely switch
WP_DEBUGandWP_DEBUG_LOGon or off without hand-editingwp-config.php. When enabling,WP_DEBUG_DISPLAYis forced off so errors are logged instead of shown to visitors. Constants are located with PHP’s tokenizer (commented-out defines are never touched), every change is re-verified before saving, and the file is replaced atomically with its permissions preserved — a failed write can never leave a brokenwp-config.phpbehind. - Search & filter — search entries by keyword and filter by level (errors, warnings, notices, deprecated).
- Color-coded levels — fatal errors in red, warnings in amber, notices in blue, deprecations in purple.
- Download — export the full log as a
.txtfile. - Size warning — get warned when the log grows beyond 10 MB (filterable threshold).
- Fast on huge logs — only the last 100–1000 lines are read, using seek-based reads, so even multi-hundred-megabyte logs open instantly.
- Grouping by error type — collapse repeated errors into one row with an occurrence count.
- Plugin/theme detection — each entry is tagged with the plugin, theme, or core location that triggered it.
Security
- Access is restricted to administrators (
manage_options), and to network administrators on multisite. - Every action (view, clear, toggle, download) is protected by both a capability check and a nonce.
- When Logtern enables logging, it avoids the publicly guessable
wp-content/debug.logwhenever possible: the log goes to a randomly named file in a directory protected by.htaccess/web.configdeny rules that the plugin creates. (Only if the uploads directory is not writable does the toggle fall back to the WordPress default location.) - Logtern never sends your log — or any other data — to an external service. Everything stays on your server.
