for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
namespace Umbrellio\Jaravel\Services\Job;
use OpenTelemetry\API\Trace\Propagation\TraceContextPropagator;
use Umbrellio\Jaravel\Middleware\JobTracingMiddleware;
class JobInjectionMaker
{
private TraceContextPropagator $contextPropagator;
public function __construct(TraceContextPropagator $contextPropagator)
$this->contextPropagator = $contextPropagator;
}
public function injectParentSpanToCommand(object $command): object
$tracingContextField = JobTracingMiddleware::JOB_TRACING_CONTEXT_FIELD;
if (isset($command->{$tracingContextField})) {
return $command;
$command->{$tracingContextField} = [];
$this->contextPropagator->inject($command->{$tracingContextField});