-
Notifications
You must be signed in to change notification settings - Fork 624
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 instrumentation of SQLAlchemy when using sqlalchemy.engine_from_config #2816
Fix instrumentation of SQLAlchemy when using sqlalchemy.engine_from_config #2816
Conversation
sqlalchemy.engine_from_config directly calls create_engine imported from that path; if we don't wrap that copy of the `create_engine` call then engines created via engine_from_config are not instrumented.
|
Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oh wait, there's a pypy test failing 😓
Thanks for putting this in! Currently 5 of the unit tests are failing with |
Sorry for dropping the ball on this for a while, @tammy-baylis-swi. I've not contributed to otel before, and not used tox before either; would you be able to elaborate on what I need to do with the |
No worries @moredip ! Coincidentally, yesterday we merged 2 PRs to address some of what I mentioned:
I'm going to merge |
instrumentation/opentelemetry-instrumentation-sqlalchemy/tests/test_sqlalchemy.py
Outdated
Show resolved
Hide resolved
…/test_sqlalchemy.py Co-authored-by: Tammy Baylis <96076570+tammy-baylis-swi@users.noreply.github.com>
...elemetry-instrumentation-sqlalchemy/src/opentelemetry/instrumentation/sqlalchemy/__init__.py
Outdated
Show resolved
Hide resolved
...elemetry-instrumentation-sqlalchemy/src/opentelemetry/instrumentation/sqlalchemy/__init__.py
Outdated
Show resolved
Hide resolved
Getting closer! Please could you run a |
Signed-off-by: emdneto <9735060+emdneto@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me. Thank you 😺
Thanks so much for patiently shepherding me through! Very much appreciated 🙇 |
@tammy-baylis-swi @emdneto @xrmx is this OK to merge, or do I also need to wait on a 👍 from @shalevr |
Description
Fixes a bug where SQLAlchemy engines created via
sqlalchemy.engine_from_config(...)
are not instrumented bySQLAlchemyInstrumentor
.sqlalchemy.engine_from_config(...)
directly callscreate_engine(...)
imported fromsqlalchemy.engine.create
. If we don't wrap that copy of thecreate_engine
method then engines created viaengine_from_config
are notinstrumented.
Type of change
Please delete options that are not relevant.
How Has This Been Tested?
Does This PR Require a Core Repo Change?
Checklist:
See contributing.md for styleguide, changelog guidelines, and more.