function SdkBuilder::build
1 call to SdkBuilder::build()
- SdkBuilder::buildAndRegisterGlobal in vendor/
open-telemetry/ sdk/ SdkBuilder.php
File
-
vendor/
open-telemetry/ sdk/ SdkBuilder.php, line 76
Class
Namespace
OpenTelemetry\SDKCode
public function build() : Sdk {
$tracerProvider = $this->tracerProvider ?? new NoopTracerProvider();
$meterProvider = $this->meterProvider ?? new NoopMeterProvider();
$loggerProvider = $this->loggerProvider ?? new NoopLoggerProvider();
$eventLoggerProvider = $this->eventLoggerProvider ?? new NoopEventLoggerProvider();
if ($this->autoShutdown) {
// rector rule disabled in config, because ShutdownHandler::register() does not keep a strong reference to $this
ShutdownHandler::register($tracerProvider->shutdown(...));
ShutdownHandler::register($meterProvider->shutdown(...));
ShutdownHandler::register($loggerProvider->shutdown(...));
}
return new Sdk($tracerProvider, $meterProvider, $loggerProvider, $eventLoggerProvider, $this->propagator ?? NoopTextMapPropagator::getInstance());
}