* opentelemetry-instrumentation-falcon: expand supported version to v4
Falcon v4 has a mostly identical interface to v3, and is proved to be fully compatible with `opentelemetry-instrumentation-falcon`. Loose the version check to `<5.0.0` to avoid false `DependencyConflict` alarm.
* opentelemetry-instrumentation-falcon: generate tests for v4
* opentelemetry-instrumentation-falcon: prepare tests for v4
* opentelemetry-instrumentation-falcon: add test preset for `~=3.1.2`
* docs: add changelog for Falcon v4 instrumentation
* opentelemetry-instrumentation-falcon: adjust pylint mark for v4
* _has_fixed_http_target property
Signed-off-by: emdneto <9735060+emdneto@users.noreply.github.com>
* move changelog to the correct section
Signed-off-by: emdneto <9735060+emdneto@users.noreply.github.com>
* fix test and bootstrap_gen
Signed-off-by: emdneto <9735060+emdneto@users.noreply.github.com>
---------
Signed-off-by: emdneto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: emdneto <9735060+emdneto@users.noreply.github.com>
Add "Repository" label to project urls pointing to the
opentelemetry-python repo root url.
Having within project urls one entry with the same value for all
packages released by the project will help tools for automatic
dependency management to suggest coherent upgrades for related packages.
* Add type hints to SQLite3
* Apply suggestions from code review
* Update instrumentation/opentelemetry-instrumentation-sqlite3/src/opentelemetry/instrumentation/sqlite3/package.py
* This is a type alias, pylint is dumb
---------
Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: Aaron Abbott <aaronabbott@google.com>
* wrap sqlalchemy.engine.create.create_engine
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.
* add changelog entry
* Update CHANGELOG.md
Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
* Update instrumentation/opentelemetry-instrumentation-sqlalchemy/tests/test_sqlalchemy.py
Co-authored-by: Tammy Baylis <96076570+tammy-baylis-swi@users.noreply.github.com>
* make some monkey-patching conditional on the version of SQLAlchemy
* lint
* fix changelog
Signed-off-by: emdneto <9735060+emdneto@users.noreply.github.com>
* Update CHANGELOG.md
---------
Signed-off-by: emdneto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: Leighton Chen <lechen@microsoft.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Tammy Baylis <96076570+tammy-baylis-swi@users.noreply.github.com>
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
* Remove references to SQLAlchemy engines which are disposed of
EngineTracer in SQLAlchemy keeps weak references to a traced engine forever which
can cause a noticeable memory leak if engines are constantly getting creating.
* Updated changelog
---------
Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
* starlette: Replace `_meter_provider` by `meter_provider` on `_instrument`
* Add PR on the changelog
---------
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
* opentelemetry-instrumentation-httpx: make instrument_client a staticmethod again
* ADd changelog
* Can be a classmethod
---------
Co-authored-by: Leighton Chen <lechen@microsoft.com>
* opentelemetry-instrumentation-system-metrics: don't report files descriptors on windows
* Run manually added tox env tests on windows too
* Add jobs for botocore and system-metrics on windows
* Skip open file descriptor test on windows
---------
Co-authored-by: Tammy Baylis <96076570+tammy-baylis-swi@users.noreply.github.com>
httpx: rewrote patching to use wrapt instead of subclassing client
Porting of httpx instrumentation to patch async transport methods instead of substituting the client. That is because the current approach will instrument httpx by instantianting another client with a custom transport class and this will race with code already subclassing. This one uses wrapt to patch the default httpx transport classes.
---------
Co-authored-by: Emídio Neto <9735060+emdneto@users.noreply.github.com>