Search by

vulqen / symfony-bundle

bubanga

Instrumentacja Symfony dla Vulqen: żądania HTTP, wyjątki i zapytania DBAL.

Package info

github.com/DeveloperLancer/vulqen-bundle

Type:symfony-bundle

pkg:composer/vulqen/symfony-bundle

Statistics

Installs: 32

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v0.4.0 2026-10-13 08:56 UTC

This package is auto-updated.

Last update: 2026-10-13 09:24:39 UTC


README

Vulqen

vulqen/symfony-bundle

Instrumentacja Symfony na paczce vulqen/php-sdk: transakcja na każde żądanie HTTP, wyjątki i zapytania Doctrine DBAL. Paczka Composer: vulqen/symfony-bundle.

Kanon: vulqen-docs, lokalnie ../vulqen-docs. Opis: plan/31-symfony-bundle.md. Zasady: AGENTS.md.

PHP 8.2+, Symfony 6.4 albo 7.4, Doctrine DBAL 3.8+ albo 4 (opcjonalnie).

Instalacja

Paczki są prywatne. Composer potrzebuje obu repozytoriów VCS i tokenu GitHub z odczytem (composer config --global github-oauth.github.com <token> albo COMPOSER_AUTH):

composer config repositories.vulqen-php-sdk vcs https://github.com/DeveloperLancer/vulqen-sdk-php.git
composer config repositories.vulqen-symfony-bundle vcs https://github.com/DeveloperLancer/vulqen-bundle.git
composer require vulqen/symfony-bundle:^0.2

Recipe Flex jeszcze nie ma (D-066), więc trzy kroki są ręczne.

  1. config/bundles.php:

    Vulqen\SymfonyBundle\VulqenBundle::class => ['all' => true],
  2. config/packages/vulqen.yaml:

    vulqen:
        dsn: '%env(default::VULQEN_DSN)%'
        environment: '%env(default:vulqen.default_environment:VULQEN_ENVIRONMENT)%'
        release: '%env(default::VULQEN_RELEASE)%'
        excluded_routes: []
    
    when@test:
        vulqen:
            enabled: false
  3. .env:

    VULQEN_DSN=

    Prawdziwy DSN z dashboardu trafia do .env.local albo do sekretów, nie do gita.

Co zbiera

Zdarzenie Skąd
transakcja http.server nazwa trasy z _route, bez dopasowania http.unmatched; status, pamięć, CPU
span db.query każde zapytanie DBAL, tekst po normalizacji SDK, bez parametrów
błąd wyjątek z kernel.exception, bez HttpException poniżej 500

Trasy z excluded_routes nie wysyłają nic. Żądanie z niepustym _api_resource_class jest operacją API Platform. Wysyłka idzie w kernel.terminate, czyli po fastcgi_finish_request() na PHP-FPM. Nagłówki, ciało żądania i parametry SQL nie trafiają do zdarzeń.

Wyłączenie

enabled: false nie rejestruje żadnego słuchacza ani middleware. Pusty VULQEN_DSN rejestruje słuchacze, które wracają od razu.

Testy

composer config repositories.vulqen-php-sdk '{"type":"path","url":"../vulqen-sdk-php","options":{"versions":{"vulqen/php-sdk":"0.2.0"}}}'
composer update
vendor/bin/phpunit
composer phpstan

Repozytorium path zostaje tylko w drzewie roboczym. bin/guard-no-path-repo w CI pada, gdy wejdzie do composer.json.