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

Prepared statement execute call tracing. #3

Merged

Conversation

damour
Copy link
Contributor

@damour damour commented Mar 10, 2021

Sometimes Doctrine\DBAL\Statement::execute() call can take a long time (because of locks for example).

This PR adds the ability to create a separate span on execute() call.

Selection_850

@allflame
Copy link
Member

allflame commented Mar 11, 2021

I understand the premise, but suggested PR changes behavior of the original \Doctrine\DBAL\Connection::prepare method, e.g.
After these changes JaegerConnectionWrapper won't call parent::prepare anymore, thus violating L principle.
Can we achieve similar thing with just substituion of parent::prepare with new JaegerStatementWrapper(parent::prepare, $this, $this->tracer)?

@andrew-demb
Copy link
Contributor

The same problem was resolved in Sentry SDK recently. getsentry/sentry-symfony#548

@allflame allflame merged commit 604d7ca into code-tool:master Aug 31, 2021
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.

None yet

3 participants