Title: DockRay
Author: Jacek Sultan
Published: <strong>September 9, 2026</strong>
Last modified: September 10, 2026

---

Search plugins

![](https://ps.w.org/dockray/assets/banner-772-250.jpg?rev=3688780)

![](https://ps.w.org/dockray/assets/icon-256x256.jpg?rev=3689726)

# DockRay

 By [Jacek Sultan](https://profiles.wordpress.org/jacycha/)

[Download](https://downloads.wordpress.org/plugin/dockray.1.0.1.zip)

 * [Details](https://ido.wordpress.org/plugins/dockray/#description)
 * [Reviews](https://ido.wordpress.org/plugins/dockray/#reviews)
 *  [Installation](https://ido.wordpress.org/plugins/dockray/#installation)
 * [Development](https://ido.wordpress.org/plugins/dockray/#developers)

 [Support](https://wordpress.org/support/plugin/dockray/)

## Description

DockRay requires an account and a project at https://dockray.io (a free plan
 and
paid service plans are available). The plugin itself is free.

DockRay sends PHP errors and uncaught exceptions from your WordPress site to a
 
DockRay project, together with the stack trace, the environment and — when you allow
it — the logged-in user. It can also measure how long requests take.

Features:

 * Automatic reporting of PHP errors and uncaught exceptions
 * Optional request timing, including admin-ajax actions and WP-CLI commands
 * Optional user context
 * Error filtering by PHP error type
 * A settings screen at **Settings  DockRay**, with a live connection
    status and
   a one-click test event — no wp-config.php editing required
 * Configuration can also come from `wp-config.php` constants, per field or
    entirely,
   for teams that prefer to keep the private key out of the database
 * English interface with Polish, German and Spanish translations included,
    and
   ready for more through translate.wordpress.org

Fill in the token and the private key on **Settings  DockRay** and you are
 done.
If you would rather keep the private key out of the database — a database dump travels
between environments more often than a config file does — define it as a `wp-config.
php` constant instead; the settings screen shows exactly which fields are currently
coming from a constant, and a **Configuration source** switch lets you pin the plugin
to constants only, to the database only, or let a defined constant win per field(
the default, and how the plugin behaved before this screen existed).

### Configuration

Every setting below has a field on **Settings  DockRay** unless stated
 otherwise.
Each one can also be set as a `wp-config.php` constant — add it above the `/* That's
all */` line — and the **Configuration source** switch on the screen decides whether
a constant is allowed to win, is required, or is ignored in favour of the database.

**Error types** — which PHP errors become events. Defaults to everything except

deprecations and notices. This one is constant-only; there is no equivalent field
on the settings screen, since it is a bitmask rather than a value worth typing into
a text box.

    ```
    define( 'DOCK_RAY_ERROR_TYPES', E_ALL & ~E_DEPRECATED & ~E_NOTICE );
    ```

**Personal data** — attaches the user id, e-mail, IP address and user agent.
 Off
by default.

    ```
    define( 'DOCK_RAY_SEND_DEFAULT_PII', true );
    ```

**Release** — the version of the site. Without it the active theme version is
 used.

    ```
    define( 'DOCK_RAY_VERSION', 'v1.4.0' );
    ```

**Environment** — defaults to `WP_ENVIRONMENT_TYPE`.

    ```
    define( 'DOCK_RAY_ENV', 'production' );
    ```

**Request timing** — the share of requests that are measured, from 0 to 1.
 Zero,
the default, disables it.

    ```
    define( 'DOCK_RAY_TRACES_SAMPLE_RATE', 0.2 );<h3>Filters</h3>
    dock_ray_token, `dock_ray_private_key` — override the
    ```

credentials, for instance to read them from a secrets manager.

    ```
    dock_ray_user_context — change the user data attached to events.

    add_filter( 'dock_ray_user_context', fn( array $user ) => array_merge( $user, [ 'plan' => 'pro' ] ) );

    dock_ray_scope — set tags and extra context before events are sent.

    add_filter( 'dock_ray_scope', function ( $scope ) { $scope->setTag( 'tier', 'gold' ); return $scope; } );

    dock_ray_options — adjust SDK options after the client is built.

    dock_ray_client_builder — an action that receives the client builder before
    ```

the client is created.

### Reporting your own exceptions

    ```
    if ( function_exists( 'dock_ray_safe' ) ) {
        dock_ray_safe( fn( $hub ) => $hub->captureException( $exception ) );
    }
    ```

The callback runs only when the plugin is configured, so the calling code does
 
not have to check.

### External services

This plugin sends data to DockRay (https://dockray.io), the monitoring service
 
it is a client for. Nothing is sent until you enter a project token and a private
key on **Settings  DockRay** or configure those credentials through wp-config.php
constants or plugin filters. Without credentials the plugin loads and stays silent.

What is sent, and when:

 * **PHP errors and uncaught exceptions**, as they happen — the message, the
    error
   type, the stack trace with the surrounding source lines, the file and line, the
   site URL, the environment and release, the WordPress version and the site language.
 * **Request timings**, when the transaction sample rate is above zero — the
    request
   path, the HTTP method and the response status. Off by default.
 * **JavaScript errors**, when that switch is on — the message, the script URL
    
   and the stack trace, forwarded by this site rather than sent from the browser.
   Off by default.
 * **The logged-in user and the visitor IP address**, only when _Send user identity,
   IP
    address and user agent
    is on. Off by default.
 * **A test event**, when you click _Send a test event_ on the settings screen.

Request bodies, cookies, request headers, URL query strings and fragments,
 and 
stack frame argument values are removed before delivery. Error messages, source 
code context, file paths and custom context may still contain personal or sensitive
information supplied by your application. Review what your application logs and 
inform your visitors before enabling monitoring.

Browser reports also include the page and referrer URLs without query strings
 or
fragments. Normal reports are queued until shutdown; the manual test waits for an
acknowledgement. The service receives the IP of the sending server.

Service terms: https://dockray.io/pl/regulamin
 Privacy policy: https://dockray.
io/privacy-policy

## Screenshots

[[

[[

[[

## Installation

Requires PHP 8.2 or newer with the mbstring extension enabled.

 1. Upload the plugin to `/wp-content/plugins/dockray`, or install it from the plugins
    screen.
 2. Activate it through the **Plugins** menu — its row gets a **Settings** link straight
    to the next step, so there is nothing to hunt for.
 3. Open **Settings  DockRay**, paste in your project token and private key, and save.
 4. Click **Send a test event** to confirm it reached the panel.

Both values come from the project screen in the DockRay panel. The project token
identifies the project, while the private key is a secret and should never be exposed
publicly.

Prefer `wp-config.php` instead? Add the constants below and the settings screen 
will show the fields as coming from wp-config.php automatically — nothing else to
configure.

    ```
    define( 'DOCK_RAY_TOKEN', 'YOUR_PROJECT_TOKEN' );
    define( 'DOCK_RAY_PRIVATE_KEY', 'YOUR_PRIVATE_KEY' );
    ```

## FAQ

### Does the plugin have a settings screen?

Yes — **Settings  DockRay**. It shows a live configuration status, the
 result of
the last test event, and lets you edit the available settings without touching `
wp-config.php`. Anything already defined as a constant keeps working; the screen
shows exactly which fields that applies to.

### Will it slow down my site?

Request timing is off by default. When it is on, the transaction is sent after
 
the response has been handed to the browser, so the visitor does not wait for it.

### What happens if the site cannot reach DockRay?

Nothing visible. The request continues; with `WP_DEBUG` on, a failure to start
 
is written to the PHP error log.

### Which languages does it speak?

English by default, with Polish, German and Spanish translations shipped
 inside
the plugin. Further languages can be contributed through https://translate.wordpress.
org/projects/wp-plugins/dockray/.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“DockRay” is open source software. The following people have contributed to this
plugin.

Contributors

 *   [ Jacek Sultan ](https://profiles.wordpress.org/jacycha/)

[Translate “DockRay” into your language.](https://translate.wordpress.org/projects/wp-plugins/dockray)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/dockray/), check out
the [SVN repository](https://plugins.svn.wordpress.org/dockray/), or subscribe to
the [development log](https://plugins.trac.wordpress.org/log/dockray/) by [RSS](https://plugins.trac.wordpress.org/log/dockray/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.1

 * Improved namespace.

#### 1.0.0

 * Initial release.

## Meta

 *  Version **1.0.1**
 *  Last updated **13 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.0 or higher **
 *  Tested up to **7.1**
 *  PHP version ** 8.2 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/dockray/)
 * Tags
 * [debugging](https://ido.wordpress.org/plugins/tags/debugging/)[error tracking](https://ido.wordpress.org/plugins/tags/error-tracking/)
   [logging](https://ido.wordpress.org/plugins/tags/logging/)[monitoring](https://ido.wordpress.org/plugins/tags/monitoring/)
   [performance](https://ido.wordpress.org/plugins/tags/performance/)
 *  [Advanced View](https://ido.wordpress.org/plugins/dockray/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/dockray/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/dockray/reviews/)

## Contributors

 *   [ Jacek Sultan ](https://profiles.wordpress.org/jacycha/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/dockray/)