44
55namespace App ;
66
7+ use Macpaw \SymfonyOtelBundle \DependencyInjection \SymfonyOtelCompilerPass ;
78use Macpaw \SymfonyOtelBundle \SymfonyOtelBundle ;
89use OpenTelemetry \Contrib \Symfony \OtelBundle \OtelBundle ;
910use OpenTelemetry \Contrib \Symfony \OtelSdkBundle \OtelSdkBundle ;
1011use Symfony \Bundle \FrameworkBundle \FrameworkBundle ;
1112use Symfony \Bundle \FrameworkBundle \Kernel \MicroKernelTrait ;
13+ use Symfony \Component \DependencyInjection \ContainerBuilder ;
1214use Symfony \Component \DependencyInjection \Loader \Configurator \ContainerConfigurator ;
1315use Symfony \Component \HttpKernel \Kernel as BaseKernel ;
1416use Symfony \Component \Routing \Loader \Configurator \RoutingConfigurator ;
@@ -27,8 +29,20 @@ public function registerBundles(): iterable
2729 ];
2830 }
2931
32+ protected function build (ContainerBuilder $ container ): void
33+ {
34+ parent ::build ($ container );
35+
36+ $ container ->addCompilerPass (new SymfonyOtelCompilerPass ());
37+ }
38+
3039 protected function configureContainer (ContainerConfigurator $ container ): void
3140 {
41+ putenv ('APP_DEBUG=true ' );
42+ $ _ENV ['APP_DEBUG ' ] = $ _SERVER ['APP_DEBUG ' ] = true ;
43+
44+ $ container ->import (__DIR__ . '/../../Resources/config/otel_bundle.yml ' );
45+ $ container ->import (__DIR__ . '/../../Resources/config/services.yml ' );
3246 $ container ->import ('../config/services.yaml ' );
3347
3448 $ container ->extension ('framework ' , [
@@ -37,39 +51,10 @@ protected function configureContainer(ContainerConfigurator $container): void
3751 'utf8 ' => true ,
3852 ],
3953 ]);
40-
41- $ container ->extension ('open_telemetry ' , [
42- 'resource ' => [
43- 'service ' => [
44- 'name ' => '%env(OTEL_SERVICE_NAME)% ' ,
45- 'version ' => '1.0.0 ' ,
46- ],
47- ],
48- 'tracing ' => [
49- 'enabled ' => true ,
50- 'exporter ' => [
51- 'otlp ' => [
52- 'endpoint ' => '%env(OTEL_EXPORTER_OTLP_ENDPOINT)% ' ,
53- 'protocol ' => '%env(OTEL_EXPORTER_OTLP_PROTOCOL)% ' ,
54- ],
55- ],
56- ],
57- ]);
58-
59- $ container ->extension ('otel_bundle ' , [
60- 'tracer_name ' => '%env(OTEL_TRACER_NAME)% ' ,
61- 'service_name ' => '%env(OTEL_SERVICE_NAME)% ' ,
62- 'span_tracers ' => [
63- [
64- 'class ' => 'Macpaw\SymfonyOtelBundle\Span\ExecutionTimeSpanTracer ' ,
65- 'tag ' => 'kernel.event_subscriber ' ,
66- ],
67- ],
68- ]);
6954 }
7055
7156 protected function configureRoutes (RoutingConfigurator $ routes ): void
7257 {
7358 $ routes ->import ('../config/routes.yaml ' );
7459 }
75- }
60+ }
0 commit comments