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\TraceView 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 |