Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: post hook invalid when symfony messenger sender throws exception #267

Merged
merged 2 commits into from
May 25, 2024

Conversation

nesl247
Copy link
Contributor

@nesl247 nesl247 commented May 23, 2024

I still need to validate that this solves the problem but looking at the code this is the only thing that makes sense to me to solve it.

I’m opening this as a draft because we can’t submit issues, so while validating this if anyone else comes across it this may help them.

Symfony\Component\Messenger\Bridge\Amqp\Transport\AmqpTransport::send(): OpenTelemetry: post hook invalid signature, class=Symfony\Component\Messenger\Bridge\Amqp\Transport\AmqpTransport function=send

I still need to validate that this solves the problem but looking at the code this is the only thing that makes sense to me to solve it.

```
Symfony\Component\Messenger\Bridge\Amqp\Transport\AmqpTransport::send(): OpenTelemetry: post hook invalid signature, class=Symfony\Component\Messenger\Bridge\Amqp\Transport\AmqpTransport function=send
```
Copy link

welcome bot commented May 23, 2024

Thanks for opening your first pull request! If you haven't yet signed our Contributor License Agreement (CLA), then please do so that we can accept your contribution. A link should appear shortly in this PR if you have not already signed one.

Copy link

linux-foundation-easycla bot commented May 23, 2024

CLA Signed

The committers listed above are authorized under a signed CLA.

@brettmc
Copy link
Collaborator

brettmc commented May 24, 2024

Hi! Issues can be created over in our main repo, https://github.com/open-telemetry/opentelemetry-php

PR makes sense, and something similar was done for MessageBusInterface::dispatch. Although the interface should always return an Envelope, that's not true for a post hook function on exception.

Could you please add a test for this? The happy path is covered, but not exception.

Copy link

codecov bot commented May 24, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 83.59%. Comparing base (6cbf493) to head (dea010e).

Additional details and impacted files

Impacted file tree graph

@@             Coverage Diff              @@
##               main     #267      +/-   ##
============================================
+ Coverage     83.50%   83.59%   +0.09%     
  Complexity     1057     1057              
============================================
  Files           104      104              
  Lines          4389     4389              
============================================
+ Hits           3665     3669       +4     
+ Misses          724      720       -4     
Flag Coverage Δ
Aws:7.4 86.02% <ø> (ø)
Aws:8.0 85.75% <ø> (ø)
Aws:8.1 85.75% <ø> (ø)
Aws:8.2 85.75% <ø> (ø)
Aws:8.3 85.75% <ø> (ø)
Context/Swoole:7.4 0.00% <ø> (ø)
Context/Swoole:8.0 0.00% <ø> (ø)
Context/Swoole:8.1 0.00% <ø> (ø)
Context/Swoole:8.2 0.00% <ø> (ø)
Context/Swoole:8.3 0.00% <ø> (ø)
Instrumentation/CakePHP:8.0 93.47% <ø> (ø)
Instrumentation/CakePHP:8.1 93.47% <ø> (ø)
Instrumentation/CakePHP:8.2 93.47% <ø> (ø)
Instrumentation/CakePHP:8.3 93.47% <ø> (ø)
Instrumentation/CodeIgniter:8.0 75.86% <ø> (ø)
Instrumentation/CodeIgniter:8.1 75.86% <ø> (ø)
Instrumentation/CodeIgniter:8.2 75.86% <ø> (ø)
Instrumentation/CodeIgniter:8.3 75.86% <ø> (ø)
Instrumentation/ExtAmqp:8.2 89.58% <ø> (ø)
Instrumentation/ExtAmqp:8.3 89.58% <ø> (ø)
Instrumentation/Guzzle:8.0 72.60% <ø> (ø)
Instrumentation/Guzzle:8.1 72.60% <ø> (ø)
Instrumentation/Guzzle:8.2 72.60% <ø> (ø)
Instrumentation/Guzzle:8.3 72.60% <ø> (ø)
Instrumentation/HttpAsyncClient:8.0 81.33% <ø> (ø)
Instrumentation/HttpAsyncClient:8.1 81.33% <ø> (ø)
Instrumentation/HttpAsyncClient:8.2 81.33% <ø> (ø)
Instrumentation/HttpAsyncClient:8.3 81.33% <ø> (ø)
Instrumentation/IO:8.2 75.00% <ø> (ø)
Instrumentation/IO:8.3 75.00% <ø> (ø)
Instrumentation/Laravel:8.0 65.20% <ø> (ø)
Instrumentation/Laravel:8.1 65.20% <ø> (ø)
Instrumentation/Laravel:8.2 65.20% <ø> (ø)
Instrumentation/Laravel:8.3 65.20% <ø> (ø)
Instrumentation/MongoDB:7.4 80.55% <ø> (ø)
Instrumentation/MongoDB:8.0 80.55% <ø> (ø)
Instrumentation/MongoDB:8.1 80.55% <ø> (ø)
Instrumentation/MongoDB:8.2 80.55% <ø> (ø)
Instrumentation/MongoDB:8.3 80.55% <ø> (ø)
Instrumentation/OpenAIPHP:8.1 86.82% <ø> (ø)
Instrumentation/OpenAIPHP:8.2 86.82% <ø> (ø)
Instrumentation/OpenAIPHP:8.3 86.82% <ø> (ø)
Instrumentation/PDO:8.2 97.46% <ø> (ø)
Instrumentation/PDO:8.3 97.46% <ø> (ø)
Instrumentation/Psr14:8.0 80.64% <ø> (ø)
Instrumentation/Psr14:8.1 80.64% <ø> (ø)
Instrumentation/Psr14:8.2 80.64% <ø> (ø)
Instrumentation/Psr14:8.3 80.64% <ø> (ø)
Instrumentation/Psr15:8.0 93.50% <ø> (ø)
Instrumentation/Psr15:8.1 93.50% <ø> (ø)
Instrumentation/Psr15:8.2 93.50% <ø> (ø)
Instrumentation/Psr15:8.3 93.50% <ø> (ø)
Instrumentation/Psr16:8.0 97.50% <ø> (ø)
Instrumentation/Psr16:8.1 97.50% <ø> (ø)
Instrumentation/Psr16:8.2 97.50% <ø> (ø)
Instrumentation/Psr16:8.3 97.50% <ø> (ø)
Instrumentation/Psr18:8.0 82.08% <ø> (ø)
Instrumentation/Psr18:8.1 82.08% <ø> (ø)
Instrumentation/Psr18:8.2 82.08% <ø> (ø)
Instrumentation/Psr18:8.3 82.08% <ø> (ø)
Instrumentation/Psr3:8.0 63.51% <ø> (ø)
Instrumentation/Psr3:8.1 63.51% <ø> (ø)
Instrumentation/Psr3:8.2 63.51% <ø> (ø)
Instrumentation/Psr3:8.3 63.51% <ø> (ø)
Instrumentation/Psr6:8.0 97.61% <ø> (ø)
Instrumentation/Psr6:8.1 97.61% <ø> (ø)
Instrumentation/Psr6:8.2 97.61% <ø> (ø)
Instrumentation/Psr6:8.3 97.61% <ø> (ø)
Instrumentation/Slim:8.0 88.14% <ø> (ø)
Instrumentation/Slim:8.1 88.88% <ø> (ø)
Instrumentation/Slim:8.2 88.88% <ø> (ø)
Instrumentation/Slim:8.3 88.88% <ø> (ø)
Instrumentation/Symfony:8.0 94.83% <100.00%> (+1.47%) ⬆️
Instrumentation/Symfony:8.1 94.83% <100.00%> (+1.47%) ⬆️
Instrumentation/Symfony:8.2 94.83% <100.00%> (+1.47%) ⬆️
Instrumentation/Symfony:8.3 94.83% <100.00%> (+1.47%) ⬆️
Instrumentation/Yii:8.0 79.82% <ø> (ø)
Instrumentation/Yii:8.1 79.82% <ø> (ø)
Instrumentation/Yii:8.2 79.82% <ø> (ø)
Instrumentation/Yii:8.3 79.82% <ø> (ø)
Logs/Monolog:7.4 100.00% <ø> (ø)
Logs/Monolog:8.0 100.00% <ø> (ø)
Logs/Monolog:8.1 100.00% <ø> (ø)
Logs/Monolog:8.2 100.00% <ø> (ø)
Logs/Monolog:8.3 100.00% <ø> (ø)
Propagation/ServerTiming:8.0 100.00% <ø> (ø)
Propagation/ServerTiming:8.1 100.00% <ø> (ø)
Propagation/ServerTiming:8.2 100.00% <ø> (ø)
Propagation/ServerTiming:8.3 100.00% <ø> (ø)
Propagation/TraceResponse:7.4 100.00% <ø> (ø)
Propagation/TraceResponse:8.0 100.00% <ø> (ø)
Propagation/TraceResponse:8.1 100.00% <ø> (ø)
Propagation/TraceResponse:8.2 100.00% <ø> (ø)
Propagation/TraceResponse:8.3 100.00% <ø> (ø)
ResourceDetectors/Azure:7.4 91.66% <ø> (ø)
ResourceDetectors/Azure:8.0 91.66% <ø> (ø)
ResourceDetectors/Azure:8.1 91.66% <ø> (ø)
ResourceDetectors/Azure:8.2 91.66% <ø> (ø)
ResourceDetectors/Azure:8.3 91.66% <ø> (ø)
ResourceDetectors/Container:8.0 93.02% <ø> (ø)
ResourceDetectors/Container:8.1 93.02% <ø> (ø)
ResourceDetectors/Container:8.2 93.02% <ø> (ø)
ResourceDetectors/Container:8.3 93.02% <ø> (ø)
Shims/OpenTracing:7.4 92.99% <ø> (ø)
Shims/OpenTracing:8.0 92.99% <ø> (ø)
Shims/OpenTracing:8.1 92.99% <ø> (ø)
Shims/OpenTracing:8.2 92.99% <ø> (ø)
Shims/OpenTracing:8.3 92.99% <ø> (ø)
Symfony:7.4 88.43% <ø> (ø)
Symfony:8.0 88.20% <ø> (ø)
Symfony:8.1 88.20% <ø> (ø)
Symfony:8.2 88.20% <ø> (ø)
Symfony:8.3 88.20% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Coverage Δ
...mentation/Symfony/src/MessengerInstrumentation.php 97.00% <100.00%> (+4.00%) ⬆️

Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6cbf493...dea010e. Read the comment docs.

@nesl247 nesl247 marked this pull request as ready for review May 24, 2024 14:02
@nesl247 nesl247 requested a review from a team May 24, 2024 14:02
@brettmc brettmc merged commit 00bf8ba into open-telemetry:main May 25, 2024
115 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants