beta/otel.base

There is no license information available for the latest version (1.0.1) of this package.

Installs: 0

Dependents: 1

Suggesters: 0

Security: 0

Stars: 0

Watchers: 3

Forks: 0

Open Issues: 0

Type:lib

pkg:composer/beta/otel.base

1.0.1 2025-04-17 07:53 UTC

This package is auto-updated.

Last update: 2025-10-22 09:20:58 UTC


README

Пример описания HTTP контроллера:

use Otel\Base\Util\RequestHelper;
use Psr\Http\Server\RequestHandlerInterface;


class SomeHttpController implements RequestHandlerInterface 
{
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $spanManager = RequestHelper::getSpanManagerFromRequest($request);
        $spanManager->getSpan()->setAttribute('someSpanAttribute', 'someValue')
        $spanManager->getSpan()->addEvent(
            'startController', 
            ['firstEventAttribute' => 1, 'secondEventAttribute' => 2]
        );
        
        ....
    }
}

Абстрактный пример инициализации REST API приложения с интеграцией OpenTelemetry

use Otel\Base\OTelMiddleware;
use Otel\Base\OTelFactory;

$oTelFactory = new OTelFactory('./otel.json');
$oTelMiddleware = OTelMiddleware::initWithFactory($oTelFactory);
$someRestApplication->registerMiddleware($oTelMiddleware);
$router = $someRestApplication->getRouter();
$router->registerController('GET', '/api/handle', new SomeHttpController());

$someRestApplication->run();