Actionable insights to resolve PHP performance bottlenecks and errors. See the full picture of any PHP exception with a clear workflow to create an efficient PHP debugging process.
Install the sentry/sentry
package with Composer:
composer require sentry/sentry
To capture all errors, even the one during the startup of your application, you should initialize the Sentry PHP SDK as soon as possible.
\Sentry\init(['dsn' => 'https://<key>@sentry.io/<project>', // Specify a fixed sample rate: 'traces_sample_rate' => 0.2, // Or provide a custom sampler: 'traces_sampler' => function (SentryTracingSamplingContext $context): float { // return a number between 0 and 1 }, ]);
Check our documentation for the latest instructions.
See all platformsQuickly identify PHP performance issues and view full end-to-end distributed trace to see the exact, poor-performing API call and surface any related errors. Get the real-time data and detailed reporting you need to solve performance issues early.
See local variables in the stack for prod errors, just like in your dev environment. Explore the full source code context with frame to function data. Filter and group PHP exceptions intuitively to eliminate noise.
Expose the important events that led to each PHP exception: warnings, past errors, custom breadcrumbs. Get a full view of releases so you can mark errors as resolved and prioritize live issues.
Aggregate errors by factors like request details, user ID, and app versions to see what’s new, a priority or a trend.
Assign custom key-value tags to reproduce the error environment specific to your application, business, and users.
Answer the most important questions: How actionable is the error? Can I snooze the alert?
Sentry supports every major language, framework, and library. You can browse each of them here.
You can get started for free. Pricing depends on the number of monthly events, transactions, and attachments that you send Sentry. For more details, visit our pricing page.
Sentry doesn’t impact a web site’s performance.
If you look at the configuration options for when you initialize Sentry in your code, you’ll see there’s nothing regarding minimizing its impact on your app’s performance. This is because our team of SDK engineers already developed Sentry with this in mind.
Sentry is a listener/handler for errors that asynchronously sends out the error/event to Sentry.io. This is non-blocking. The error/event only goes out if this is an error.
Global handlers have almost no impact as well, as they are native APIs provided by the browsers.
Here’s a quick look at how Sentry handles your personal information (PII).
×We collect PII about people browsing our website, users of the Sentry service, prospective customers, and people who otherwise interact with us.
What if my PII is included in data sent to Sentry by a Sentry customer (e.g., someone using Sentry to monitor their app)? In this case you have to contact the Sentry customer (e.g., the maker of the app). We do not control the data that is sent to us through the Sentry service for the purposes of application monitoring.
Am I included?We may disclose your PII to the following type of recipients:
You may have the following rights related to your PII:
If you have any questions or concerns about your privacy at Sentry, please email us at compliance@sentry.io.
If you are a California resident, see our Supplemental notice.