Quick start

Integrate Error Explorer in 3 simple steps

1

Installation du bundle

Terminal

composer require error-explorer/symfony-sdk

2

Configuration

config/packages/error_reporter.yaml

# config/packages/error_reporter.yaml

error_reporter:

webhook_url: '%env(ERROR_WEBHOOK_URL)%'

token: '%env(ERROR_WEBHOOK_TOKEN)%'

project_name: '%env(PROJECT_NAME)%'

enabled: '%env(bool:ERROR_REPORTING_ENABLED)%'

ignore_exceptions:

- 'Symfony\Component\Security\Core\Exception\AccessDeniedException'

- 'Symfony\Component\HttpKernel\Exception\NotFoundHttpException'

# For Symfony 4.4/5.x compatibility, you may need to adjust the env processor syntax:

# enabled: '%env(resolve:default:true:bool:ERROR_REPORTING_ENABLED)%'

3

Variables d'environnement

.env

# .env

ERROR_WEBHOOK_URL=https://error-explorer.com/webhook/your-token

ERROR_WEBHOOK_TOKEN=your-unique-project-token

PROJECT_NAME="My Symfony App"

ERROR_REPORTING_ENABLED=true

Terminé !

Toutes vos erreurs sont maintenant automatiquement capturées et envoyées à Error Explorer.

1

Installation du package

Terminal

composer require error-explorer/laravel-sdk

2

Publication de la configuration

Terminal

php artisan vendor:publish --tag=error-explorer-config

3

Configuration .env

.env

ERROR_WEBHOOK_URL=https://error-explorer.com/webhook/your-token

ERROR_WEBHOOK_TOKEN=your-unique-project-token

ERROR_PROJECT_NAME='My Laravel App'

ERROR_REPORTING_ENABLED=true

Terminé !

Laravel va maintenant envoyer automatiquement toutes les exceptions à Error Explorer.

1

Installation du SDK Vue.js

Terminal

npm install @error-explorer/vue

# ou

yarn add @error-explorer/vue

2

Configuration du Plugin Vue 3

main.js

import { createApp } from 'vue';

import { createErrorExplorerPlugin } from '@error-explorer/vue';

import App from './App.vue';

const app = createApp(App);

app.use(createErrorExplorerPlugin({

token: 'ee_votre_token_ici',

environment: 'production',

project: 'my-vue-app',

}));

app.mount('#app');

3

Utilisation avec Composition API

MyComponent.vue

Excellent !

Vue.js capture maintenant automatiquement les erreurs avec Composition API, Options API, breadcrumbs et suivi de navigation.

1

Installation du package

Terminal

npm install @error-explorer/react

# ou

yarn add @error-explorer/react

2

Configuration du Provider

src/index.jsx

import React from 'react';

import { ErrorExplorerProvider } from '@error-explorer/react';

import App from './App';

function Root() {

return (

options={{

token: 'ee_votre_token_ici',

environment: 'production',

project: 'my-react-app',

}}

>

);

}

3

Error Boundary et Hooks

src/components/MyComponent.jsx

import { ErrorBoundary, useErrorExplorer } from '@error-explorer/react';

function MyComponent() {

const { captureException, addBreadcrumb } = useErrorExplorer();

const handleClick = async () => {

try {

addBreadcrumb({ type: 'user', message: 'Button clicked' });

await riskyOperation();

} catch (error) {

captureException(error, { extra: { context: 'button_click' } });

}

};

return (

Une erreur est survenue

}>

);

}

Excellent !

React capture maintenant automatiquement les erreurs avec Error Boundaries, hooks et breadcrumbs.

1

Installation du package

Terminal

npm install @error-explorer/node

# ou

yarn add @error-explorer/node

2

Initialisation

app.js

import { ErrorExplorer } from '@error-explorer/node';

ErrorExplorer.init({

token: 'ee_votre_token_ici',

environment: process.env.NODE_ENV || 'development',

project: 'my-node-app',

});

3

Intégration Express.js

server.js

import express from 'express';

import { ErrorExplorer, requestHandler, errorHandler } from '@error-explorer/node';

ErrorExplorer.init({ token: 'ee_votre_token_ici' });

const app = express();

// Le requestHandler doit être le premier middleware

app.use(requestHandler());

// Vos routes ici

app.get('/', (req, res) => res.send('Hello'));

// L'errorHandler doit être après toutes les routes

app.use(errorHandler());

app.listen(3000);

4

Capture manuelle

your-route.js

import { ErrorExplorer } from '@error-explorer/node';

app.post('/api/submit', async (req, res) => {

try {

ErrorExplorer.addBreadcrumb({ type: 'user', message: 'Form submitted' });

await processForm(req.body);

res.json({ success: true });

} catch (error) {

ErrorExplorer.captureException(error, {

user: { id: req.user?.id },

extra: { route: req.path }

});

res.status(500).json({ error: 'Internal error' });

}

});

Excellent !

Node.js capture maintenant automatiquement toutes les exceptions non gérées, promesses rejetées et erreurs Express avec breadcrumbs contextuels.

1

Installation du package

Terminal

pip install error-explorer

# ou

poetry add error-explorer

2

Configuration de base

main.py

import error_explorer

# Initialiser Error Explorer

error_explorer.init(

webhook_url='https://error-explorer.com/webhook/your-token',

project_name='my-python-app',

environment='production',

auto_capture=True,

max_breadcrumbs=50,

enable_performance_monitoring=True

)

3

Utilisation manuelle

your_module.py

import error_explorer

def process_data(data):

try:

error_explorer.add_breadcrumb('Processing started', {'data_size': len(data)})

result = risky_operation(data)

return result

except Exception as e:

error_explorer.capture_exception(e, {

'extra': {'data_type': type(data).__name__},

'user': {'id': get_current_user_id()}

})

raise

4

Intégration Flask/Django

app.py (Flask) ou settings.py (Django)

# Pour Flask

from flask import Flask

import error_explorer

app = Flask(__name__)

error_explorer.init_flask(app)

# Pour Django - Ajouter dans INSTALLED_APPS:

INSTALLED_APPS = [

# ... vos autres apps

'error_explorer.contrib.django',

]

Parfait !

Python capture maintenant automatiquement toutes les exceptions avec breadcrumbs contextuels et intégration native Flask/Django.

1

Installation via Composer

Terminal

composer require error-explorer/php-sdk

2

Configuration rapide

bootstrap.php ou config.php

require_once 'vendor/autoload.php';

use ErrorExplorer\ErrorExplorer;

// Initialiser Error Explorer

ErrorExplorer::init([

'webhook_url' => 'https://error-explorer.com/webhook/your-token',

'project_name' => 'my-php-app',

'environment' => $_ENV['APP_ENV'] ?? 'production',

'auto_capture' => true,

'max_breadcrumbs' => 50,

'capture_sql_queries' => true

]);

3

Utilisation manuelle

your-script.php

use ErrorExplorer\ErrorExplorer;

function processData(array $data): array

{

try {

ErrorExplorer::addBreadcrumb('Processing started', ['data_size' => count($data)]);

$result = riskyOperation($data);

return $result;

} catch (Exception $e) {

ErrorExplorer::captureException($e, [

'extra' => ['data_type' => gettype($data)],

'user' => ['id' => getCurrentUserId()]

]);

throw $e;

}

}

4

Messages personnalisés

logging.php

// Capturer des messages personnalisés

ErrorExplorer::captureMessage('Something happened', 'info');

// Ajouter des breadcrumbs

ErrorExplorer::addBreadcrumb('User action', ['action' => 'button_click']);

// Définir le contexte utilisateur

ErrorExplorer::setUser([

'id' => 123,

'email' => 'user@example.com',

'role' => 'admin'

]);

Parfait !

PHP capture maintenant automatiquement toutes les erreurs fatales, exceptions et warnings avec contexte complet.

All available integrations

Explore our complete catalog of integrations for all your development needs

Symfony

Symfony Available

Backend
5min Beginner
Laravel

Laravel Available

Backend
5min Beginner
WordPress

WordPress Coming soon

CMS
5min Beginner
Vue.js

Vue.js Available

Frontend
3min Beginner
React

React Available

Frontend
3min Beginner
Angular

Angular Coming soon

Frontend
8min Intermediate
Node.js

Node.js Available

Backend
4min Beginner
Python

Python Available

Backend
4min Beginner
PHP Native

PHP Native Available

Backend
6min Intermediate
Django

Django Available

Backend
5min Beginner
Flask

Flask Available

Backend
4min Beginner
FastAPI

FastAPI Available

Backend
5min Beginner
Express.js

Express.js Available

Backend
3min Beginner
NestJS

NestJS Coming soon

Backend
7min Intermediate
Next.js

Next.js Coming soon

Frontend
5min Intermediate
Nuxt.js

Nuxt.js Coming soon

Frontend
5min Intermediate
Svelte

Svelte Coming soon

Frontend
3min Beginner
Flutter

Flutter Coming soon

Mobile
10min Intermediate
React Native

React Native Coming soon

Mobile
8min Intermediate
Ionic

Ionic Coming soon

Mobile
7min Intermediate
Drupal

Drupal Coming soon

CMS
7min Intermediate
PrestaShop

PrestaShop Coming soon

CMS
8min Intermediate
Magento

Magento Coming soon

CMS
15min Advanced
Shopify

Shopify Coming soon

CMS
5min Beginner
WooCommerce

WooCommerce Coming soon

CMS
5min Beginner
Go

Go Coming soon

Backend
4min Intermediate
Spring Boot

Spring Boot Coming soon

Backend
6min Intermediate
Ruby on Rails

Ruby on Rails Coming soon

Backend
5min Intermediate