55use Jaeger \Http \HttpMethodTag ;
66use Jaeger \Http \HttpUriTag ;
77use Jaeger \Symfony \Name \Generator \NameGeneratorInterface ;
8- use Jaeger \Symfony \Tag \SymfonyBackgroundTag ;
98use Jaeger \Symfony \Tag \SymfonyComponentTag ;
109use Jaeger \Symfony \Tag \SymfonyVersionTag ;
11- use Jaeger \Symfony \Tag \TimeMicroTag ;
12- use Jaeger \Symfony \Tag \TimeSourceTag ;
13- use Jaeger \Symfony \Tag \TimeValueTag ;
1410use Jaeger \Tag \SpanKindServerTag ;
1511use Jaeger \Tracer \TracerInterface ;
1612use Symfony \Component \EventDispatcher \EventSubscriberInterface ;
1713use Symfony \Component \HttpKernel \Event \FilterResponseEvent ;
1814use Symfony \Component \HttpKernel \Event \GetResponseEvent ;
19- use Symfony \Component \HttpKernel \Event \PostResponseEvent ;
2015use Symfony \Component \HttpKernel \HttpKernelInterface ;
2116use Symfony \Component \HttpKernel \KernelEvents ;
2217
@@ -40,56 +35,15 @@ public static function getSubscribedEvents()
4035 return [
4136 KernelEvents::REQUEST => ['onRequest ' , 29 ],
4237 KernelEvents::RESPONSE => ['onResponse ' , -1024 ],
43- KernelEvents::TERMINATE => ['onTerminate ' , -1024 ],
4438 ];
4539 }
4640
47- public function onTerminate (PostResponseEvent $ event )
48- {
49- if ($ this ->spans ->isEmpty ()) {
50- return $ this ;
51- }
52-
53- if (HttpKernelInterface::MASTER_REQUEST !== $ event ->getRequestType ()) {
54- return $ this ;
55- }
56-
57- $ this ->tracer ->finish ($ this ->spans ->pop ());
58- $ this ->tracer ->finish (
59- $ this ->spans ->pop ()->addTag (new HttpCodeTag ($ event ->getResponse ()->getStatusCode ()))
60- );
61-
62- return $ this ;
63- }
64-
6541 public function onResponse (FilterResponseEvent $ event )
6642 {
6743 if ($ this ->spans ->isEmpty ()) {
6844 return $ this ;
6945 }
70-
71- if (HttpKernelInterface::MASTER_REQUEST !== $ event ->getRequestType ()) {
72- $ this ->tracer ->finish (
73- $ this ->spans ->pop ()->addTag (new HttpCodeTag ($ event ->getResponse ()->getStatusCode ()))
74- );
75-
76- return $ this ;
77- }
78-
79- $ request = $ event ->getRequest ();
80- $ this ->spans ->push (
81- $ this ->tracer ->start (
82- 'background ' ,
83- [
84- new HttpMethodTag ($ request ->getMethod ()),
85- new HttpUriTag ($ request ->getRequestUri ()),
86- new SpanKindServerTag (),
87- new SymfonyComponentTag (),
88- new SymfonyVersionTag (),
89- new SymfonyBackgroundTag (),
90- ]
91- )
92- );
46+ $ this ->tracer ->finish ($ this ->spans ->pop ()->addTag (new HttpCodeTag ($ event ->getResponse ()->getStatusCode ())));
9347
9448 return $ this ;
9549 }
@@ -108,14 +62,7 @@ public function onRequest(GetResponseEvent $event)
10862 ]
10963 );
11064 if (HttpKernelInterface::MASTER_REQUEST === $ event ->getRequestType ()) {
111- $ source = $ request ->server ->has ('REQUEST_TIME_FLOAT ' ) ? 'header ' : 'microtime ' ;
112- $ value = $ request ->server ->get ('REQUEST_TIME_FLOAT ' , microtime (true ));
113- $ startTime = (int )($ value * 1000000 );
114- $ requestSpan
115- ->addTag (new TimeSourceTag ($ source ))
116- ->addTag (new TimeValueTag ($ value ))
117- ->addTag (new TimeMicroTag ($ startTime ))
118- ->start ($ startTime );
65+ $ requestSpan ->start ((int )1000000 * $ request ->server ->get ('REQUEST_TIME_FLOAT ' , microtime (true )));
11966 }
12067
12168 $ this ->spans ->push ($ requestSpan );
0 commit comments