Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. TracerProviderFactory.php

class TracerProviderFactory

Hierarchy

  • class \OpenTelemetry\SDK\Trace\TracerProviderFactory uses \OpenTelemetry\API\Behavior\LogsMessagesTrait

Expanded class hierarchy of TracerProviderFactory

File

vendor/open-telemetry/sdk/Trace/TracerProviderFactory.php, line 10

Namespace

OpenTelemetry\SDK\Trace
View source
final class TracerProviderFactory {
    use LogsMessagesTrait;
    public function __construct(ExporterFactory $exporterFactory = new ExporterFactory(), SamplerFactory $samplerFactory = new SamplerFactory(), SpanProcessorFactory $spanProcessorFactory = new SpanProcessorFactory()) {
    }
    public function create() : TracerProviderInterface {
        if (Sdk::isDisabled()) {
            return new NoopTracerProvider();
        }
        try {
            $exporter = $this->exporterFactory
                ->create();
        } catch (\Throwable $t) {
            self::logWarning('Unable to create exporter', [
                'exception' => $t,
            ]);
            $exporter = null;
        }
        try {
            $sampler = $this->samplerFactory
                ->create();
        } catch (\Throwable $t) {
            self::logWarning('Unable to create sampler', [
                'exception' => $t,
            ]);
            $sampler = null;
        }
        try {
            $spanProcessor = $this->spanProcessorFactory
                ->create($exporter);
        } catch (\Throwable $t) {
            self::logWarning('Unable to create span processor', [
                'exception' => $t,
            ]);
            $spanProcessor = null;
        }
        return new TracerProvider($spanProcessor, $sampler);
    }

}

Members

Title Sort descending Modifiers Object type Summary
LogsMessagesTrait::doLog private static function
LogsMessagesTrait::logDebug protected static function
LogsMessagesTrait::logError protected static function
LogsMessagesTrait::logInfo protected static function
LogsMessagesTrait::logNotice protected static function
LogsMessagesTrait::logWarning protected static function
LogsMessagesTrait::shouldLog private static function
TracerProviderFactory::create public function
TracerProviderFactory::__construct public function

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal