diff --git a/src/DDTrace/Integrations/Laravel/V5/LaravelProvider.php b/src/DDTrace/Integrations/Laravel/V5/LaravelProvider.php index b0a9e7c408..8aadc9b356 100644 --- a/src/DDTrace/Integrations/Laravel/V5/LaravelProvider.php +++ b/src/DDTrace/Integrations/Laravel/V5/LaravelProvider.php @@ -4,6 +4,10 @@ use DDTrace; use DDTrace\Encoders\Json; +use DDTrace\Integrations\Eloquent\EloquentIntegration; +use DDTrace\Integrations\Memcached\MemcachedIntegration; +use DDTrace\Integrations\PDO\PDOIntegration; +use DDTrace\Integrations\Predis\PredisIntegration; use DDTrace\Tags; use DDTrace\Tracer; use DDTrace\Types; @@ -34,6 +38,7 @@ */ class LaravelProvider extends ServiceProvider { + /** @inheritdoc */ public function register() { if (!extension_loaded('ddtrace')) { @@ -52,6 +57,12 @@ public function register() // container for easy Laravel-specific use. GlobalTracer::set($tracer); $this->app->instance(Tracer::class, $tracer); + } + + /** @inheritdoc */ + public function boot() + { + $tracer = GlobalTracer::get(); // Trace middleware dd_trace(Pipeline::class, 'through', function ($pipes) { @@ -135,13 +146,13 @@ public function register() }); // Enable extension integrations - Eloquent::load(); + EloquentIntegration::load(); if (class_exists('Memcached')) { - Memcached::load(); + MemcachedIntegration::load(); } - PDO::load(); + PDOIntegration::load(); if (class_exists('Predis\Client')) { - Predis::load(); + PredisIntegration::load(); } // Flushes traces to agent.