create('http://collector:4318/v1/metrics', 'application/x-protobuf') ) ); $meterProvider = MeterProvider::builder() ->setResource($resource) ->addReader($reader) ->build(); $loggerProvider = LoggerProvider::builder() ->addLogRecordProcessor( new SimpleLogRecordProcessor($logRecordExporter) ) ->build(); $tracerProvider = TracerProvider::builder() ->addSpanProcessor( BatchSpanProcessor::builder($spanExporter) ->setMeterProvider($meterProvider) ->build() ) ->setResource($resource) ->setSampler(new ParentBased(new AlwaysOnSampler())) ->build(); Sdk::builder() ->setTracerProvider($tracerProvider) ->setMeterProvider($meterProvider) ->setLoggerProvider($loggerProvider) ->setPropagator(TraceContextPropagator::getInstance()) ->setAutoShutdown(true) ->buildAndRegisterGlobal(); $instrumentation = new CachedInstrumentation('example'); $tracer = $instrumentation->tracer(); $root = $tracer->spanBuilder('root')->startSpan(); $scope = $root->activate(); for ($i=0; $i < 100; $i++) { if ($i%8 === 0) { $reader->collect(); } $tracer->spanBuilder('span-' . $i) ->startSpan() ->end(); usleep(50000); } $scope->detach(); $root->end(); $reader->shutdown(); echo 'Finished SDK builder example' . PHP_EOL;