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

Relax httpx version to allow >= 0.18.0 #1748

Merged
merged 4 commits into from Jun 13, 2023

Conversation

phillipuniverse
Copy link
Contributor

@phillipuniverse phillipuniverse commented Apr 12, 2023

Description

The tests were failing in httpx > 0.23.1 because of this change in httpx - encode/httpx#2407

Pretty easy workaround illustrated in the changed tests in that PR

Fixes #1463, #1460 and #1459.

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

How Has This Been Tested?

Automated tests caught the failure and validated the fix

Does This PR Require a Core Repo Change?

  • Yes. - Link to PR:
  • No.

Checklist:

See contributing.md for styleguide, changelog guidelines, and more.

  • Followed the style guidelines of this project
  • Changelogs have been updated
  • Unit tests have been added
  • Documentation has been updated

@phillipuniverse phillipuniverse changed the title Relax httpx version to allow 0.23 Relax httpx version to allow >= 0.18.0 Apr 12, 2023
@phillipuniverse phillipuniverse marked this pull request as ready for review April 12, 2023 07:01
@phillipuniverse phillipuniverse requested a review from a team as a code owner April 12, 2023 07:01
@phillipuniverse
Copy link
Contributor Author

This is the test failure:

=================================== FAILURES ===================================
__ TestStarletteManualInstrumentation.test_basic_post_request_metric_success ___

self = <tests.test_starlette_instrumentation.TestStarletteManualInstrumentation testMethod=test_basic_post_request_metric_success>

    def test_basic_post_request_metric_success(self):
        start = default_timer()
        expected_duration_attributes = {
            "http.flavor": "1.1",
            "http.host": "testserver",
            "http.method": "POST",
            "http.scheme": "http",
            "http.server_name": "testserver",
            "http.status_code": 405,
            "net.host.port": 80,
        }
        expected_requests_count_attributes = {
            "http.flavor": "1.1",
            "http.host": "testserver",
            "http.method": "POST",
            "http.scheme": "http",
            "http.server_name": "testserver",
        }
        self._client.post("/foobar")
        duration = max(round((default_timer() - start) * 1000), 0)
        metrics_list = self.memory_metrics_reader.get_metrics_data()
        for metric in (
            metrics_list.resource_metrics[0].scope_metrics[0].metrics
        ):
            for point in list(metric.data.data_points):
                if isinstance(point, HistogramDataPoint):
                    self.assertEqual(point.count, 1)
>                   self.assertAlmostEqual(duration, point.sum, delta=30)
E                   AssertionError: 34 != 3 within 30 delta (31 difference)

test_starlette_instrumentation.py:175: AssertionError
========================= 1 failed, 49 passed in 2.26s =========================

It's over in Starlette and maybe this is a flaky one?

@macieyng
Copy link
Contributor

@lzchen @jeremydvoss please review this PR 🙏

@macieyng
Copy link
Contributor

@phillipuniverse can you take a look at the pipeline?

@ocelotl
Copy link
Contributor

ocelotl commented May 23, 2023

@phillipuniverse almost there! please resolve the conflicts 👍 we should be able to merge this one soon with a bit of luck.

@phillipuniverse
Copy link
Contributor Author

@ocelotl @macieyng done

@phillipuniverse
Copy link
Contributor Author

The latest test failure looks like a flaky one in aiohttp

image

@phillipuniverse
Copy link
Contributor Author

Unfortunately I can't manually re-run the build, @ocelotl can you?

@phillipuniverse
Copy link
Contributor Author

@lzchen @jeremydvoss @ocelotl this has been open for almost 6.5 weeks. What can I do here to reduce the turnaround cycles?

@ocelotl
Copy link
Contributor

ocelotl commented Jun 13, 2023

@lzchen @jeremydvoss @ocelotl this has been open for almost 6.5 weeks. What can I do here to reduce the turnaround cycles?

Sorry! we've been quite low on people who can review, reviewing this right now...

@ocelotl ocelotl enabled auto-merge (squash) June 13, 2023 12:40
@ocelotl ocelotl merged commit a5ed4da into open-telemetry:main Jun 13, 2023
44 checks passed
@macieyng
Copy link
Contributor

macieyng commented Jun 15, 2023

@phillipuniverse I'm trying to understand the consequences before this was merged. Assuming I had httpx==0.24.1 and opentelemetry-instrumentation-httpx==0.38b0 would it mean that my httpx was not instrumented due to that reason?

Because right now I don't really see httpx dependencies/traces and I'm not sure if this is the reason or I have something misconfigured.

@phillipuniverse
Copy link
Contributor Author

@macieyng yes that is probably the reason.

@phillipuniverse phillipuniverse deleted the httpx-0.23 branch September 4, 2023 19:04
povilasv added a commit to coralogix/opentelemetry-python-contrib that referenced this pull request Sep 28, 2023
* Add otelTraceSampled to instrumetation-logging (open-telemetry#1773)

* Add otelTraceSampled to instrumetation-logging

* Updated code with black

* Added to CHANGELOG.md

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Expand sqlalchemy pool.name to follow the semantic conventions (open-telemetry#1778)

* Skip requests tests for pypy3 (open-telemetry#1806)

* Update version to 1.19.0.dev/0.40b0.dev (open-telemetry#1797)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Resource detector for container properties (open-telemetry#1584)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Leighton Chen <lechen@microsoft.com>

* botocore: always use x-ray for http header injection (open-telemetry#1741)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Refactor CODEOWNERS file (open-telemetry#1804)

* Refactor CODEOWNERS file

Fixes open-telemetry#1803

* Remove CODEOWNERS

* Refactor component owners configuration

* Refactor CODEOWNERS to select any file but the ones in instrumentation

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Update maintainers list (open-telemetry#1817)

* skip urllib3 test on pypy3 (open-telemetry#1826)

* Fix celery docker tests (open-telemetry#1841)

* Use HTTP mock server for aiohttp tests (open-telemetry#1849)

Fixes open-telemetry#1842

* Use HTTP mock server for tornado tests (open-telemetry#1855)

* Use HTTP mock server for tornado tests

Fixes open-telemetry#1681

* Fix lint

* Remove use of httpbin (open-telemetry#1854)

* Use `request_ctx` to determine whether or not `_teardown_request` should end flask span (open-telemetry#1692)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* remove srikanthccv from maintainers (open-telemetry#1792)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Sanitize redis db_statement by default (open-telemetry#1776)

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Relax httpx version to allow >= 0.18.0 (open-telemetry#1748)

* Issue open-telemetry#1757 - Update HTTP server/client instrumentation span names (open-telemetry#1759)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Fix falcon usage of Span Status (open-telemetry#1840)

* Fix falcon usage of Span Status to only set the description if the status code is ERROR

* Update changelog

* Update CHANGELOG.md

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* fix lint

* Use fewer variables to satisfy R0914 lint rule

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Request Flask attributes passed to Sampler (open-telemetry#1784)

* Request Flask attributes passed to Sampler

* Update changelog

* Lint

* Fix botocore test keyerror

* Revert "Fix botocore test keyerror"

This reverts commit fd03c55.

* botocore test does get_queue_url

* Revert "botocore test does get_queue_url"

This reverts commit 9530cd2.

* Update changelog

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Fixed urllib3 instrumentation example in instrumentation documentation (open-telemetry#1793)

* corrected instrumentation example in urllib3

* Remove changelog entry

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Fix Invalid type NoneType for attribute X error | AWS-Lambda instrumentation (open-telemetry#1785)

* Add None checking to the aws-lambda logic

* Update changelog.

* Change .get() check to 'key' in dict check.

* Fix consistency issues.

* Update changelog.

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add metrics instrumentation celery (open-telemetry#1679)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add support for confluent_kafka until 2.1.1 version (open-telemetry#1815)

* Add support for confulent_kafka until 2.1.1 version

* Include 2.1.1 version

* update CHANGELOG.md

* run: 'tox -e generate'

* resolve comments

* update top version to 2.2.0

---------

Co-authored-by: Ran Nozik <ran@gethelios.dev>

* fix redis doc (open-telemetry#1808)

doc string rendered at
https://opentelemetry-python-contrib.readthedocs.io/en/latest/instrumentation/redis/redis.html
refers to `opentelemetry-instrumentation` executable which appears to be a typo

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add http.server.response.size metric to ASGI implementation. (open-telemetry#1789)

* Add http.server.response.size metric to ASGI implementation.
Add new unit tests.

* Update changelog.

* Fix linting by disabling too-many-nested-blocks

* Put new logic in a new method

* Refactor the placement of new logic.

* Fixed the unit tests in FastAPI and Starlette

* Update changelog.

* FIx lint errors.

* Refactor getting content-length header

* Refactor getting content-length header

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* fix: Update falcon instrumentation to follow semantic conventions (open-telemetry#1824)

* fix: Update falcon instrumentation to follow semantic conventions

* docs: Update changelog

* fix linter errors

* Disable falcon.HTTP_200 pylint checck

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Bump requests from 2.28.1 to 2.31.0 (open-telemetry#1818)

Bumps [requests](https://github.com/psf/requests) from 2.28.1 to 2.31.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](psf/requests@v2.28.1...v2.31.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* fix(grpc): Allow gRPC connections via Unix socket (open-telemetry#1833)

* fix(grpc): Allow gRPC connections via Unix socket

This commit addresses issue open-telemetry#1832.

The way `NET_PEER_IP` and `NET_PEER_PORT` are retrieved raises a `ValueError`
when gRPC connections are handled via Unix sockets.

```py
ip, port = (
    context.peer().split(",")[0].split(":", 1)[1].rsplit(":", 1)
)
```

When using an address like `unix:///tmp/grpc.sock` the value of `context.peer()` is `"unix:"`.
Substituting that in the function above...

```py
ip, port = "unix:".split(",")[0].split(":", 1)[1].rsplit(":", 1)
ip, port = ["unix:"][0].split(":", 1)[1].rsplit(":", 1)
ip, port = "unix:".split(":", 1)[1].rsplit(":", 1)
ip, port = ["unix", ""][1].rsplit(":", 1)
ip, port = "".rsplit(":", 1)
ip, port = [""]  # ValueError
```

I "addressed" the issue by guarding the retrieval of `net.peer.*` values under
an `if` statement that checks if we are using a Unix socket.

I extended the `server_interceptor` tests to run against TCP and Unix socket configurations.

---

**Open Questions**

- [ ] The socket tests will fail on Windows. Is there a way to annotate that?
- [ ] Are there other span values we should be setting for the unix socket?

* Update CHANGELOG

* Add placeholder attributes for linter

* fix lint

---------

Co-authored-by: Matt Oberle <mattoberle@users.noreply.github.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add http.server.request.size for ASGI metric implementation (open-telemetry#1867)

* Update changelog file.

* Update changelog file.

* Add new request.size metric for ASGI middleware.

* Clean-up.

* Refactor try except section.

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Fix elastic-search sanitization for bulk queries (open-telemetry#1870)

* support sanitization for str body response

* add CHANGELOG entry

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add conditional elastic_transport import (open-telemetry#1810)

* Add conditional elastic_transport import

* Update changelog

* Add future es8 tests

* Update CHANGELOG.md

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Add license, rm pylint disable

* Consistent elastic version check

* lint import

* Update CHANGELOG.md

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Fix async redis clients tracing (open-telemetry#1830)

* Fix async redis clients tracing

* Update changelog

* Add functional integration tests and fix linting issues

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Update maintainers list (open-telemetry#1874)

* Use a weak reference to sqlalchemy Engine to avoid memory leak (open-telemetry#1771)

* Use a weak reference to sqlalchemy Engine to avoid memory leak

Closes open-telemetry#1761

By using a weak reference to the `Engine` object, we can avoid the memory leak as disposed `Engines` get properly deallocated. Whenever `SQLAlchemy` is uninstrumented, we only trigger a removal for those event listeners which are listening for objects that haven't been garbage-collected yet.

* Made a mistake in resolving the weak reference

* Fixed formatting issues

* Updated changelog

* Added unit test to check that engine was garbage collected

* Do not save engine in EngineTracer to avoid memory leak

* Add an empty line to satisfy black formatter

* Fix isort complaints

* Fixed the issue when pool name is not set and =None

* Fix formatting issue

* Rebased after changes in a recent commit

* Updated PR number in changelog

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* sqlalchemy wrap_create_engine now accepts sqlcommenter options (open-telemetry#1873)

* sqlalchemy wrap_create_engine accepts sqlcommenter options

* Changelog

* Lint

* Fix default val

* Add sqlalchemy tests

* Change a default in _instrument get

* Lint

* More lint

* Update default

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Update args doc

* lintttt

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add statement of maintainership (open-telemetry#1859)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* urllib3: Add instrumentation support for version 2 (open-telemetry#1879)

* urllib3: Add instrumentation support for version 2

* changelog

* Distro selection (open-telemetry#1823)

* fix(django): avoid empty span name on empty path (open-telemetry#1788)

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Instrument mysqlclient library (open-telemetry#1744)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Update version to 1.20.0.dev/0.41b0.dev (open-telemetry#1885)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Fix pyyaml version (open-telemetry#1892)

* update awslambda to use _X_AMZN_TRACE_ID as a Span Link (open-telemetry#1657)

Co-authored-by: Ron Yishai <ronyish@cisco.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Fix UnboundLocalError local variable 'start' referenced before assignment (open-telemetry#1889)

Co-authored-by: Pablo Collins <pablo.collins@gmail.com>

* Merge pull request from GHSA-5rv5-6h4r-h22v

* Fix unbound cardinality for label http_method in wsgi based middlewares

* cr: rename file

* cr: change label UNKNOWN to NONSTANDARD

* Update instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/__init__.py

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Fix errors introduced in regression (open-telemetry#1913)

* Azure resource detectors (open-telemetry#1901)

* Revert "update awslambda to use _X_AMZN_TRACE_ID as a Span Link" (open-telemetry#1911)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* feat(confluent-kafka): Add instrumentation to consume method (open-telemetry#1786)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Add Cassandra instrumentation (open-telemetry#1902)

* Unwrap Celery's `ExceptionInfo` (open-telemetry#1863)

* Unwrap `ExceptionInfo` and `ExceptionWithTraceback`

Instead of reporting the `ExceptionInfo` and `ExceptionWithTraceback`
wrappers raised by Celery, report the exceptions that they wrap.

This ensures that the exception in the OpenTelemetry span has a type
and traceback that are meaningful and relevant to the developer.

* Fix typo

The exception is expected, not excepted. Well, I guess it is also
excepted, because it's an exception, but you get what I mean.

* Reformat file with `black`

Reformat the `__init__.py` file in the Celery instrumentation using
`black`, fixing a CI linter error.

* Address review feedback

Use the VERSION attribute exposed by Billiard to decide whether to
import ExceptionWithTraceback.

Add a test for a failing task and check that the exceptions' type
and message are preserved.

* Amend ExceptionWithTraceback import

* doc: fix `commenter_options` type (open-telemetry#1926)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Update version to 1.21.0.dev/0.42b0.dev (open-telemetry#1930)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Modify eachdist and build script for container packages (open-telemetry#1949)

* Update pyproject.toml (open-telemetry#1950)

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Nahian-Al Hasan <nahian97@gmail.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: OpenTelemetry Bot <107717825+opentelemetrybot@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Sanket Mehta <sankmeht@cisco.com>
Co-authored-by: Leighton Chen <lechen@microsoft.com>
Co-authored-by: Tristan Sloughter <t@crashfast.com>
Co-authored-by: Matthew Grossman <matt@mrgrossman.com>
Co-authored-by: Nimrod Shlagman <nemos@cisco.com>
Co-authored-by: Phillip Verheyden <pverheyden@gmail.com>
Co-authored-by: Maciej Nachtygal <82878433+macieyng@users.noreply.github.com>
Co-authored-by: Filip Nikolovski <me@filipnikolovski.com>
Co-authored-by: Tammy Baylis <96076570+tammy-baylis-swi@users.noreply.github.com>
Co-authored-by: Yashaswi Makula <yashaswi.makula@gmail.com>
Co-authored-by: Iman Shafiei <imanshafiei540@gmail.com>
Co-authored-by: Akochavi <121871419+Akochavi@users.noreply.github.com>
Co-authored-by: David Gonoradsky <david@gethelios.dev>
Co-authored-by: Ran Nozik <ran@gethelios.dev>
Co-authored-by: Pablo Collins <pablo.collins@gmail.com>
Co-authored-by: Iman Shafiei <iman.shafiei@earthdaily.com>
Co-authored-by: Michael <mshebeko@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Matt Oberle <matt.r.oberle@gmail.com>
Co-authored-by: Matt Oberle <mattoberle@users.noreply.github.com>
Co-authored-by: Vivanov98 <66319645+Vivanov98@users.noreply.github.com>
Co-authored-by: Rytis Bagdziunas <rbagd@users.noreply.github.com>
Co-authored-by: Mario Jonke <mario.jonke@dynatrace.com>
Co-authored-by: Jeremy Voss <jerevoss@gmail.com>
Co-authored-by: Marc Dougherty <muncus@users.noreply.github.com>
Co-authored-by: Alexandre Papin <alexandre.papin@indaclouds.fr>
Co-authored-by: Ron Yishai <ronyish@cisco.com>
Co-authored-by: Thomas LÉVEIL <thomasleveil@users.noreply.github.com>
Co-authored-by: Jakub Warczarek <jakub.warczarek@gmail.com>
Co-authored-by: Raphael Philipe Mendes da Silva <rapphil@gmail.com>
Co-authored-by: Javier Fernández Rodríguez <rfjgoo@gmail.com>
Co-authored-by: mattcontinisio <mrcontinisio@gmail.com>
Co-authored-by: Noemi <45180344+unflxw@users.noreply.github.com>
Co-authored-by: João Thallis <joaothallis@icloud.com>
povilasv added a commit to coralogix/opentelemetry-python-contrib that referenced this pull request Apr 15, 2024
* Add otelTraceSampled to instrumetation-logging (open-telemetry#1773)

* Add otelTraceSampled to instrumetation-logging

* Updated code with black

* Added to CHANGELOG.md

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Expand sqlalchemy pool.name to follow the semantic conventions (open-telemetry#1778)

* Skip requests tests for pypy3 (open-telemetry#1806)

* Update version to 1.19.0.dev/0.40b0.dev (open-telemetry#1797)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Resource detector for container properties (open-telemetry#1584)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Leighton Chen <lechen@microsoft.com>

* botocore: always use x-ray for http header injection (open-telemetry#1741)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Refactor CODEOWNERS file (open-telemetry#1804)

* Refactor CODEOWNERS file

Fixes open-telemetry#1803

* Remove CODEOWNERS

* Refactor component owners configuration

* Refactor CODEOWNERS to select any file but the ones in instrumentation

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Update maintainers list (open-telemetry#1817)

* skip urllib3 test on pypy3 (open-telemetry#1826)

* Fix celery docker tests (open-telemetry#1841)

* Use HTTP mock server for aiohttp tests (open-telemetry#1849)

Fixes open-telemetry#1842

* Use HTTP mock server for tornado tests (open-telemetry#1855)

* Use HTTP mock server for tornado tests

Fixes open-telemetry#1681

* Fix lint

* Remove use of httpbin (open-telemetry#1854)

* Use `request_ctx` to determine whether or not `_teardown_request` should end flask span (open-telemetry#1692)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* remove srikanthccv from maintainers (open-telemetry#1792)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Sanitize redis db_statement by default (open-telemetry#1776)

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Relax httpx version to allow >= 0.18.0 (open-telemetry#1748)

* Issue open-telemetry#1757 - Update HTTP server/client instrumentation span names (open-telemetry#1759)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Fix falcon usage of Span Status (open-telemetry#1840)

* Fix falcon usage of Span Status to only set the description if the status code is ERROR

* Update changelog

* Update CHANGELOG.md

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* fix lint

* Use fewer variables to satisfy R0914 lint rule

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Request Flask attributes passed to Sampler (open-telemetry#1784)

* Request Flask attributes passed to Sampler

* Update changelog

* Lint

* Fix botocore test keyerror

* Revert "Fix botocore test keyerror"

This reverts commit fd03c55.

* botocore test does get_queue_url

* Revert "botocore test does get_queue_url"

This reverts commit 9530cd2.

* Update changelog

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Fixed urllib3 instrumentation example in instrumentation documentation (open-telemetry#1793)

* corrected instrumentation example in urllib3

* Remove changelog entry

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Fix Invalid type NoneType for attribute X error | AWS-Lambda instrumentation (open-telemetry#1785)

* Add None checking to the aws-lambda logic

* Update changelog.

* Change .get() check to 'key' in dict check.

* Fix consistency issues.

* Update changelog.

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add metrics instrumentation celery (open-telemetry#1679)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add support for confluent_kafka until 2.1.1 version (open-telemetry#1815)

* Add support for confulent_kafka until 2.1.1 version

* Include 2.1.1 version

* update CHANGELOG.md

* run: 'tox -e generate'

* resolve comments

* update top version to 2.2.0

---------

Co-authored-by: Ran Nozik <ran@gethelios.dev>

* fix redis doc (open-telemetry#1808)

doc string rendered at
https://opentelemetry-python-contrib.readthedocs.io/en/latest/instrumentation/redis/redis.html
refers to `opentelemetry-instrumentation` executable which appears to be a typo

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add http.server.response.size metric to ASGI implementation. (open-telemetry#1789)

* Add http.server.response.size metric to ASGI implementation.
Add new unit tests.

* Update changelog.

* Fix linting by disabling too-many-nested-blocks

* Put new logic in a new method

* Refactor the placement of new logic.

* Fixed the unit tests in FastAPI and Starlette

* Update changelog.

* FIx lint errors.

* Refactor getting content-length header

* Refactor getting content-length header

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* fix: Update falcon instrumentation to follow semantic conventions (open-telemetry#1824)

* fix: Update falcon instrumentation to follow semantic conventions

* docs: Update changelog

* fix linter errors

* Disable falcon.HTTP_200 pylint checck

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Bump requests from 2.28.1 to 2.31.0 (open-telemetry#1818)

Bumps [requests](https://github.com/psf/requests) from 2.28.1 to 2.31.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](psf/requests@v2.28.1...v2.31.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* fix(grpc): Allow gRPC connections via Unix socket (open-telemetry#1833)

* fix(grpc): Allow gRPC connections via Unix socket

This commit addresses issue open-telemetry#1832.

The way `NET_PEER_IP` and `NET_PEER_PORT` are retrieved raises a `ValueError`
when gRPC connections are handled via Unix sockets.

```py
ip, port = (
    context.peer().split(",")[0].split(":", 1)[1].rsplit(":", 1)
)
```

When using an address like `unix:///tmp/grpc.sock` the value of `context.peer()` is `"unix:"`.
Substituting that in the function above...

```py
ip, port = "unix:".split(",")[0].split(":", 1)[1].rsplit(":", 1)
ip, port = ["unix:"][0].split(":", 1)[1].rsplit(":", 1)
ip, port = "unix:".split(":", 1)[1].rsplit(":", 1)
ip, port = ["unix", ""][1].rsplit(":", 1)
ip, port = "".rsplit(":", 1)
ip, port = [""]  # ValueError
```

I "addressed" the issue by guarding the retrieval of `net.peer.*` values under
an `if` statement that checks if we are using a Unix socket.

I extended the `server_interceptor` tests to run against TCP and Unix socket configurations.

---

**Open Questions**

- [ ] The socket tests will fail on Windows. Is there a way to annotate that?
- [ ] Are there other span values we should be setting for the unix socket?

* Update CHANGELOG

* Add placeholder attributes for linter

* fix lint

---------

Co-authored-by: Matt Oberle <mattoberle@users.noreply.github.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add http.server.request.size for ASGI metric implementation (open-telemetry#1867)

* Update changelog file.

* Update changelog file.

* Add new request.size metric for ASGI middleware.

* Clean-up.

* Refactor try except section.

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Fix elastic-search sanitization for bulk queries (open-telemetry#1870)

* support sanitization for str body response

* add CHANGELOG entry

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add conditional elastic_transport import (open-telemetry#1810)

* Add conditional elastic_transport import

* Update changelog

* Add future es8 tests

* Update CHANGELOG.md

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Add license, rm pylint disable

* Consistent elastic version check

* lint import

* Update CHANGELOG.md

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Fix async redis clients tracing (open-telemetry#1830)

* Fix async redis clients tracing

* Update changelog

* Add functional integration tests and fix linting issues

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Update maintainers list (open-telemetry#1874)

* Use a weak reference to sqlalchemy Engine to avoid memory leak (open-telemetry#1771)

* Use a weak reference to sqlalchemy Engine to avoid memory leak

Closes open-telemetry#1761

By using a weak reference to the `Engine` object, we can avoid the memory leak as disposed `Engines` get properly deallocated. Whenever `SQLAlchemy` is uninstrumented, we only trigger a removal for those event listeners which are listening for objects that haven't been garbage-collected yet.

* Made a mistake in resolving the weak reference

* Fixed formatting issues

* Updated changelog

* Added unit test to check that engine was garbage collected

* Do not save engine in EngineTracer to avoid memory leak

* Add an empty line to satisfy black formatter

* Fix isort complaints

* Fixed the issue when pool name is not set and =None

* Fix formatting issue

* Rebased after changes in a recent commit

* Updated PR number in changelog

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* sqlalchemy wrap_create_engine now accepts sqlcommenter options (open-telemetry#1873)

* sqlalchemy wrap_create_engine accepts sqlcommenter options

* Changelog

* Lint

* Fix default val

* Add sqlalchemy tests

* Change a default in _instrument get

* Lint

* More lint

* Update default

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Update args doc

* lintttt

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add statement of maintainership (open-telemetry#1859)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* urllib3: Add instrumentation support for version 2 (open-telemetry#1879)

* urllib3: Add instrumentation support for version 2

* changelog

* Distro selection (open-telemetry#1823)

* fix(django): avoid empty span name on empty path (open-telemetry#1788)

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Instrument mysqlclient library (open-telemetry#1744)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Update version to 1.20.0.dev/0.41b0.dev (open-telemetry#1885)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Fix pyyaml version (open-telemetry#1892)

* update awslambda to use _X_AMZN_TRACE_ID as a Span Link (open-telemetry#1657)

Co-authored-by: Ron Yishai <ronyish@cisco.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Fix UnboundLocalError local variable 'start' referenced before assignment (open-telemetry#1889)

Co-authored-by: Pablo Collins <pablo.collins@gmail.com>

* Merge pull request from GHSA-5rv5-6h4r-h22v

* Fix unbound cardinality for label http_method in wsgi based middlewares

* cr: rename file

* cr: change label UNKNOWN to NONSTANDARD

* Update instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/__init__.py

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Fix errors introduced in regression (open-telemetry#1913)

* Azure resource detectors (open-telemetry#1901)

* Revert "update awslambda to use _X_AMZN_TRACE_ID as a Span Link" (open-telemetry#1911)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* feat(confluent-kafka): Add instrumentation to consume method (open-telemetry#1786)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Add Cassandra instrumentation (open-telemetry#1902)

* Unwrap Celery's `ExceptionInfo` (open-telemetry#1863)

* Unwrap `ExceptionInfo` and `ExceptionWithTraceback`

Instead of reporting the `ExceptionInfo` and `ExceptionWithTraceback`
wrappers raised by Celery, report the exceptions that they wrap.

This ensures that the exception in the OpenTelemetry span has a type
and traceback that are meaningful and relevant to the developer.

* Fix typo

The exception is expected, not excepted. Well, I guess it is also
excepted, because it's an exception, but you get what I mean.

* Reformat file with `black`

Reformat the `__init__.py` file in the Celery instrumentation using
`black`, fixing a CI linter error.

* Address review feedback

Use the VERSION attribute exposed by Billiard to decide whether to
import ExceptionWithTraceback.

Add a test for a failing task and check that the exceptions' type
and message are preserved.

* Amend ExceptionWithTraceback import

* doc: fix `commenter_options` type (open-telemetry#1926)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Update version to 1.21.0.dev/0.42b0.dev (open-telemetry#1930)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Modify eachdist and build script for container packages (open-telemetry#1949)

* Update pyproject.toml (open-telemetry#1950)

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Nahian-Al Hasan <nahian97@gmail.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: OpenTelemetry Bot <107717825+opentelemetrybot@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Sanket Mehta <sankmeht@cisco.com>
Co-authored-by: Leighton Chen <lechen@microsoft.com>
Co-authored-by: Tristan Sloughter <t@crashfast.com>
Co-authored-by: Matthew Grossman <matt@mrgrossman.com>
Co-authored-by: Nimrod Shlagman <nemos@cisco.com>
Co-authored-by: Phillip Verheyden <pverheyden@gmail.com>
Co-authored-by: Maciej Nachtygal <82878433+macieyng@users.noreply.github.com>
Co-authored-by: Filip Nikolovski <me@filipnikolovski.com>
Co-authored-by: Tammy Baylis <96076570+tammy-baylis-swi@users.noreply.github.com>
Co-authored-by: Yashaswi Makula <yashaswi.makula@gmail.com>
Co-authored-by: Iman Shafiei <imanshafiei540@gmail.com>
Co-authored-by: Akochavi <121871419+Akochavi@users.noreply.github.com>
Co-authored-by: David Gonoradsky <david@gethelios.dev>
Co-authored-by: Ran Nozik <ran@gethelios.dev>
Co-authored-by: Pablo Collins <pablo.collins@gmail.com>
Co-authored-by: Iman Shafiei <iman.shafiei@earthdaily.com>
Co-authored-by: Michael <mshebeko@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Matt Oberle <matt.r.oberle@gmail.com>
Co-authored-by: Matt Oberle <mattoberle@users.noreply.github.com>
Co-authored-by: Vivanov98 <66319645+Vivanov98@users.noreply.github.com>
Co-authored-by: Rytis Bagdziunas <rbagd@users.noreply.github.com>
Co-authored-by: Mario Jonke <mario.jonke@dynatrace.com>
Co-authored-by: Jeremy Voss <jerevoss@gmail.com>
Co-authored-by: Marc Dougherty <muncus@users.noreply.github.com>
Co-authored-by: Alexandre Papin <alexandre.papin@indaclouds.fr>
Co-authored-by: Ron Yishai <ronyish@cisco.com>
Co-authored-by: Thomas LÉVEIL <thomasleveil@users.noreply.github.com>
Co-authored-by: Jakub Warczarek <jakub.warczarek@gmail.com>
Co-authored-by: Raphael Philipe Mendes da Silva <rapphil@gmail.com>
Co-authored-by: Javier Fernández Rodríguez <rfjgoo@gmail.com>
Co-authored-by: mattcontinisio <mrcontinisio@gmail.com>
Co-authored-by: Noemi <45180344+unflxw@users.noreply.github.com>
Co-authored-by: João Thallis <joaothallis@icloud.com>
povilasv added a commit to coralogix/opentelemetry-python-contrib that referenced this pull request Apr 17, 2024
* Add otelTraceSampled to instrumetation-logging (open-telemetry#1773)

* Add otelTraceSampled to instrumetation-logging

* Updated code with black

* Added to CHANGELOG.md

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Expand sqlalchemy pool.name to follow the semantic conventions (open-telemetry#1778)

* Skip requests tests for pypy3 (open-telemetry#1806)

* Update version to 1.19.0.dev/0.40b0.dev (open-telemetry#1797)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Resource detector for container properties (open-telemetry#1584)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Leighton Chen <lechen@microsoft.com>

* botocore: always use x-ray for http header injection (open-telemetry#1741)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Refactor CODEOWNERS file (open-telemetry#1804)

* Refactor CODEOWNERS file

Fixes open-telemetry#1803

* Remove CODEOWNERS

* Refactor component owners configuration

* Refactor CODEOWNERS to select any file but the ones in instrumentation

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Update maintainers list (open-telemetry#1817)

* skip urllib3 test on pypy3 (open-telemetry#1826)

* Fix celery docker tests (open-telemetry#1841)

* Use HTTP mock server for aiohttp tests (open-telemetry#1849)

Fixes open-telemetry#1842

* Use HTTP mock server for tornado tests (open-telemetry#1855)

* Use HTTP mock server for tornado tests

Fixes open-telemetry#1681

* Fix lint

* Remove use of httpbin (open-telemetry#1854)

* Use `request_ctx` to determine whether or not `_teardown_request` should end flask span (open-telemetry#1692)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* remove srikanthccv from maintainers (open-telemetry#1792)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Sanitize redis db_statement by default (open-telemetry#1776)

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Relax httpx version to allow >= 0.18.0 (open-telemetry#1748)

* Issue open-telemetry#1757 - Update HTTP server/client instrumentation span names (open-telemetry#1759)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Fix falcon usage of Span Status (open-telemetry#1840)

* Fix falcon usage of Span Status to only set the description if the status code is ERROR

* Update changelog

* Update CHANGELOG.md

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* fix lint

* Use fewer variables to satisfy R0914 lint rule

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Request Flask attributes passed to Sampler (open-telemetry#1784)

* Request Flask attributes passed to Sampler

* Update changelog

* Lint

* Fix botocore test keyerror

* Revert "Fix botocore test keyerror"

This reverts commit fd03c55.

* botocore test does get_queue_url

* Revert "botocore test does get_queue_url"

This reverts commit 9530cd2.

* Update changelog

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Fixed urllib3 instrumentation example in instrumentation documentation (open-telemetry#1793)

* corrected instrumentation example in urllib3

* Remove changelog entry

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Fix Invalid type NoneType for attribute X error | AWS-Lambda instrumentation (open-telemetry#1785)

* Add None checking to the aws-lambda logic

* Update changelog.

* Change .get() check to 'key' in dict check.

* Fix consistency issues.

* Update changelog.

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add metrics instrumentation celery (open-telemetry#1679)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add support for confluent_kafka until 2.1.1 version (open-telemetry#1815)

* Add support for confulent_kafka until 2.1.1 version

* Include 2.1.1 version

* update CHANGELOG.md

* run: 'tox -e generate'

* resolve comments

* update top version to 2.2.0

---------

Co-authored-by: Ran Nozik <ran@gethelios.dev>

* fix redis doc (open-telemetry#1808)

doc string rendered at
https://opentelemetry-python-contrib.readthedocs.io/en/latest/instrumentation/redis/redis.html
refers to `opentelemetry-instrumentation` executable which appears to be a typo

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add http.server.response.size metric to ASGI implementation. (open-telemetry#1789)

* Add http.server.response.size metric to ASGI implementation.
Add new unit tests.

* Update changelog.

* Fix linting by disabling too-many-nested-blocks

* Put new logic in a new method

* Refactor the placement of new logic.

* Fixed the unit tests in FastAPI and Starlette

* Update changelog.

* FIx lint errors.

* Refactor getting content-length header

* Refactor getting content-length header

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* fix: Update falcon instrumentation to follow semantic conventions (open-telemetry#1824)

* fix: Update falcon instrumentation to follow semantic conventions

* docs: Update changelog

* fix linter errors

* Disable falcon.HTTP_200 pylint checck

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Bump requests from 2.28.1 to 2.31.0 (open-telemetry#1818)

Bumps [requests](https://github.com/psf/requests) from 2.28.1 to 2.31.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](psf/requests@v2.28.1...v2.31.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* fix(grpc): Allow gRPC connections via Unix socket (open-telemetry#1833)

* fix(grpc): Allow gRPC connections via Unix socket

This commit addresses issue open-telemetry#1832.

The way `NET_PEER_IP` and `NET_PEER_PORT` are retrieved raises a `ValueError`
when gRPC connections are handled via Unix sockets.

```py
ip, port = (
    context.peer().split(",")[0].split(":", 1)[1].rsplit(":", 1)
)
```

When using an address like `unix:///tmp/grpc.sock` the value of `context.peer()` is `"unix:"`.
Substituting that in the function above...

```py
ip, port = "unix:".split(",")[0].split(":", 1)[1].rsplit(":", 1)
ip, port = ["unix:"][0].split(":", 1)[1].rsplit(":", 1)
ip, port = "unix:".split(":", 1)[1].rsplit(":", 1)
ip, port = ["unix", ""][1].rsplit(":", 1)
ip, port = "".rsplit(":", 1)
ip, port = [""]  # ValueError
```

I "addressed" the issue by guarding the retrieval of `net.peer.*` values under
an `if` statement that checks if we are using a Unix socket.

I extended the `server_interceptor` tests to run against TCP and Unix socket configurations.

---

**Open Questions**

- [ ] The socket tests will fail on Windows. Is there a way to annotate that?
- [ ] Are there other span values we should be setting for the unix socket?

* Update CHANGELOG

* Add placeholder attributes for linter

* fix lint

---------

Co-authored-by: Matt Oberle <mattoberle@users.noreply.github.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add http.server.request.size for ASGI metric implementation (open-telemetry#1867)

* Update changelog file.

* Update changelog file.

* Add new request.size metric for ASGI middleware.

* Clean-up.

* Refactor try except section.

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Fix elastic-search sanitization for bulk queries (open-telemetry#1870)

* support sanitization for str body response

* add CHANGELOG entry

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add conditional elastic_transport import (open-telemetry#1810)

* Add conditional elastic_transport import

* Update changelog

* Add future es8 tests

* Update CHANGELOG.md

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Add license, rm pylint disable

* Consistent elastic version check

* lint import

* Update CHANGELOG.md

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Fix async redis clients tracing (open-telemetry#1830)

* Fix async redis clients tracing

* Update changelog

* Add functional integration tests and fix linting issues

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Update maintainers list (open-telemetry#1874)

* Use a weak reference to sqlalchemy Engine to avoid memory leak (open-telemetry#1771)

* Use a weak reference to sqlalchemy Engine to avoid memory leak

Closes open-telemetry#1761

By using a weak reference to the `Engine` object, we can avoid the memory leak as disposed `Engines` get properly deallocated. Whenever `SQLAlchemy` is uninstrumented, we only trigger a removal for those event listeners which are listening for objects that haven't been garbage-collected yet.

* Made a mistake in resolving the weak reference

* Fixed formatting issues

* Updated changelog

* Added unit test to check that engine was garbage collected

* Do not save engine in EngineTracer to avoid memory leak

* Add an empty line to satisfy black formatter

* Fix isort complaints

* Fixed the issue when pool name is not set and =None

* Fix formatting issue

* Rebased after changes in a recent commit

* Updated PR number in changelog

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* sqlalchemy wrap_create_engine now accepts sqlcommenter options (open-telemetry#1873)

* sqlalchemy wrap_create_engine accepts sqlcommenter options

* Changelog

* Lint

* Fix default val

* Add sqlalchemy tests

* Change a default in _instrument get

* Lint

* More lint

* Update default

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Update args doc

* lintttt

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Add statement of maintainership (open-telemetry#1859)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* urllib3: Add instrumentation support for version 2 (open-telemetry#1879)

* urllib3: Add instrumentation support for version 2

* changelog

* Distro selection (open-telemetry#1823)

* fix(django): avoid empty span name on empty path (open-telemetry#1788)

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Instrument mysqlclient library (open-telemetry#1744)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Update version to 1.20.0.dev/0.41b0.dev (open-telemetry#1885)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Fix pyyaml version (open-telemetry#1892)

* update awslambda to use _X_AMZN_TRACE_ID as a Span Link (open-telemetry#1657)

Co-authored-by: Ron Yishai <ronyish@cisco.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Fix UnboundLocalError local variable 'start' referenced before assignment (open-telemetry#1889)

Co-authored-by: Pablo Collins <pablo.collins@gmail.com>

* Merge pull request from GHSA-5rv5-6h4r-h22v

* Fix unbound cardinality for label http_method in wsgi based middlewares

* cr: rename file

* cr: change label UNKNOWN to NONSTANDARD

* Update instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/__init__.py

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Fix errors introduced in regression (open-telemetry#1913)

* Azure resource detectors (open-telemetry#1901)

* Revert "update awslambda to use _X_AMZN_TRACE_ID as a Span Link" (open-telemetry#1911)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* feat(confluent-kafka): Add instrumentation to consume method (open-telemetry#1786)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Add Cassandra instrumentation (open-telemetry#1902)

* Unwrap Celery's `ExceptionInfo` (open-telemetry#1863)

* Unwrap `ExceptionInfo` and `ExceptionWithTraceback`

Instead of reporting the `ExceptionInfo` and `ExceptionWithTraceback`
wrappers raised by Celery, report the exceptions that they wrap.

This ensures that the exception in the OpenTelemetry span has a type
and traceback that are meaningful and relevant to the developer.

* Fix typo

The exception is expected, not excepted. Well, I guess it is also
excepted, because it's an exception, but you get what I mean.

* Reformat file with `black`

Reformat the `__init__.py` file in the Celery instrumentation using
`black`, fixing a CI linter error.

* Address review feedback

Use the VERSION attribute exposed by Billiard to decide whether to
import ExceptionWithTraceback.

Add a test for a failing task and check that the exceptions' type
and message are preserved.

* Amend ExceptionWithTraceback import

* doc: fix `commenter_options` type (open-telemetry#1926)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Update version to 1.21.0.dev/0.42b0.dev (open-telemetry#1930)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Modify eachdist and build script for container packages (open-telemetry#1949)

* Update pyproject.toml (open-telemetry#1950)

* Fix version of Flask dependency werkzeug (open-telemetry#1980)

* Feature/add new process metrics (open-telemetry#1948)

* Using new cloud resource id attribute (open-telemetry#1976)

* Aiohttp-server Instrumentation (open-telemetry#1800)

Co-authored-by: Kenny Trytek <kenny.trytek@workiva.com>
Co-authored-by: Daniel Manchon <dmanchon@gmail.com>

* Specify the topic arn as the span attribute messaging.destination.name in the botocore sns instrumentation (open-telemetry#1995)

* Add -ra option to pytest runs (open-telemetry#2035)

* Fix failing test cases (open-telemetry#2033)

* Set schema_url on all tracers and meters (open-telemetry#1977)

* Update version to 1.22.0.dev/0.43b0.dev (open-telemetry#2031)

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Exclude background task execution from root server span in ASGI middleware  (open-telemetry#1952)

* Fix contrib build (open-telemetry#2054)

* Fix error in build for README in Cassandra instrumentation (open-telemetry#2045)

* Copy change log updates from release/v1.21.x-0.42bx (open-telemetry#2049)

* Implement Otel semantic convention stability opt-in (open-telemetry#1987)

* Added support for pypy3 system metrics (open-telemetry#2062)

* Added support for pypy3 system metrics

Co-authored-by: Suryanarayana Peri <suryanarayana.peri@fmr.com>
Signed-off-by: Rahul Kumar <Rahul.Kumar@fmr.com>

* Change in if condition to log warn message for pypy
Co-authored-by: Suryanarayana Peri <suryanarayana.peri@fmr.com>

Signed-off-by: Rahul Kumar <Rahul.Kumar@fmr.com>

* Added logger to else block if pypy
Co-authored-by: Suryanarayana Peri <suryanarayana.peri@fmr.com>

Signed-off-by: Rahul Kumar <Rahul.Kumar@fmr.com>

* Reverting the changes
Co-authored-by: Suryanarayana Peri <suryanarayana.peri@fmr.com>

Signed-off-by: Rahul Kumar <Rahul.Kumar@fmr.com>

* Changes requested by external reviewer
Co-authored-by: Suryanarayana Peri <suryanarayana.peri@fmr.com>

Signed-off-by: Rahul Kumar <Rahul.Kumar@fmr.com>

---------

Signed-off-by: Rahul Kumar <Rahul.Kumar@fmr.com>
Co-authored-by: Suryanarayana Peri <suryanarayana.peri@fmr.com>

* Don't collect system.network.connections due to limitation in psutil causing exceptions (open-telemetry#2008)

* Don't collect system.network.connections due to limitation in psutil causing exceptions

* add changelog

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* urllib/urllib3 - set metric descriptions per semantic conventions (open-telemetry#1959)

* Set metric descriptions per semantic conventions

* Set metric descriptions per semantic conventions

* fix spelling

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Enable lint on CI and update deps (open-telemetry#2067)

* Fix black an isort

* change bootstrap_gen to use a list instead of dict

* Bunch of updates

* Fix build

* fix lint

* Fix docs

* Fix lint

* More fixes

* Fix lint

* fix stupid mistake

---------

Co-authored-by: Christian Hartung <christian.hartung@olist.com>

* Add a note about system dependencies for instrumentation pkgs (open-telemetry#2068)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* [opentelemetry-instrumentation-httpx] fix mixing of sync and non async hooks (open-telemetry#1920)

* fix: sync response hooks being used on httpx.AsyncClient

* docs: add changelog

* docs: improved docs a bit more

* docs: fix variable name

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* aio-pika instrumentation: Removed check for non-sampled span when inject message header. (open-telemetry#1969)

* aio-pika instrumentation: Removed check for non-sampled span when inject message headers. Reason to change is that sampled flag can be propagate https://www.w3.org/TR/trace-context/#sampled-flag and be useful when trace is not sampled.

* black formting

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Fix arity of context.abort for AIO RPCs (open-telemetry#2066)

* Requests instrumentation http semantic convention migration (open-telemetry#2002)

* Fix Falcon dependency (open-telemetry#2090)

Fixes open-telemetry#2089

* Update version to 1.23.0.dev/0.44b0.dev (open-telemetry#2091)

* Update version to 1.23.0.dev/0.44b0.dev

* Update core SHA

* Update generate

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* `FlaskInstrumentation` doesn't exist (open-telemetry#2070)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Remove URL credentials (httpx integration) (open-telemetry#2020)

* Remove URL credentials (httpx)

* Add CHANGELOG

* Clean up use of suppress_instrumentation in context and fix httpx bug (open-telemetry#2061)

* Clean up use of suppress_instrumentation in context and fix httpx bug

* Clean up use of suppress_instrumentation in context and fix httpx bug

* changelog

* fix tests

* fix import

* fmt

* update dep

* lint

* remove unused imports

* apply lint

* Fix version for pika

* Fix lint

---------

* Fix dependency for azure resource detector (open-telemetry#2072)

* Update README.rst (open-telemetry#2060)

* Add 10 second timeout to VM Resource Detector (open-telemetry#2119)

* Update version.py for release (open-telemetry#2120)

* Separate jobs per instrumentation (open-telemetry#2121)

* Separate jobs per instrumentation

Fixes open-telemetry#2036

* Separate in 2 workflows

* Added explanation for separation

* Feature/support for flask 3.0.0 (open-telemetry#2013)

* support flask 3.0.0

* support flask 3.0.0

* support flask 3.0.0

* modify tox.ini

* modify Werkzeug version

* modify Werkzeug version

* modify flask test version

* modify flask version

* modify flask version

* modify CHANGELOG.md

* include feedback

* include feedback

* Fix lint and generate

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Fix tox factor matching (open-telemetry#2129)

* Fix tox factor matching

Fixes open-telemetry#2128

* Add missing fixes for several test envs

* Fix django

* Update azure resource detector timeout to 4 seconds (open-telemetry#2136)

* Increment resource detector version (open-telemetry#2137)

* feat: configure header extraction for ASGI middleware via constructor params (open-telemetry#2026)

* feat: configure header extraction for ASGI middleware via constructor params

* fix django middleware

* lint

* remove import

* Fix lint

* Update instrumentation/opentelemetry-instrumentation-asgi/src/opentelemetry/instrumentation/asgi/__init__.py

* Update opentelemetry-instrument README (open-telemetry#2108)

* Update opentelemetry-instrument README

- Clarify trace versus metric documentation
- Add console exporter documentation
- Add quotes to command to support zsh
- Fix grammatical errors

* fix typo

* fix typo

* Remove note on HTTP for trace only

---------

* Remove useless shebangs (open-telemetry#2135)

These files do not have the executable bit set in their filesystem
permissions (so the shebang line, `#!`, is useless), and they are not
script-like (do not have `if __name__ == "__main__"` or interesting
side-effects), so making them executable would not make sense.

* Add support for confluent_kafka until 2.3.0 version; (open-telemetry#2132)

* Updated version of supported confluent kafka to 2.3;

* Updated CHANGELOG.md;

---------

* Drop support for 3.7 (open-telemetry#2152)

* Drop support for 3.7

Fixes open-telemetry#2151

* Remove 37

* Fix link to OpenTelemetry kafka-python Instrumentation (open-telemetry#2147)

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Stop multiple calls to AsyncPGInstrumentor.__init__ from clobbering instance attributes (open-telemetry#1791)

* Stop multiple calls to AsyncPGInstrumentor.__init__ from clobbering instance tracer attribute

* Remove class-level initialisation of _tracer

* Fix regex

* Add to changelog

* Fix lint errors

* Update CHANGELOG.md

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Set tracer in class definition to avoid lint error

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Update core SHA (open-telemetry#2163)

Fxes open-telemetry#2162

* Fix celery and urllib tests (open-telemetry#2170)

* Update core SHA

Fixes open-telemetry#2173

* Fix celery and urllib tests

Fixes open-telemetry#2164

* Remove references to 3.7 (open-telemetry#2172)

Fixes open-telemetry#2171

* Upgrade tox (open-telemetry#2118)

* Upgrade tox

* fixup! Upgrade tox

* Add excludes

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Fix azure vm resource detector tests/Suppress instrumentation for urllib call (open-telemetry#2178)

* Feature/asyncio instrumentation (open-telemetry#1943)

* add asyncio instrumentation

* add asyncio instrumentation

* modify test configure

* modify test configure

* modify tox generate result

* modify tox generate result

* add python version check

* modify test code

* add CHANGELOG.md

* add docs

* modify pyproject.toml

* modify pyproject.toml

* Add comments mentioned in an issue open-telemetry#1919

* Add comments mentioned in an issue open-telemetry#1919

* add asyncio component owner

* - Add instrumentation-asyncio metric.
- Configure coroutines/to_thread func to apply trace via environment variables.
- Apply trace to future using a boolean environment variable.

* modify docs

* modify docs

* modify docs

* modify docs

* modify docs

* modify test_code

* modify test_code

* modify test_code

* modify asyncio version

* modify asyncio version

* update dependency

* modified lint results

* modified lint results

* modified lint results

* modified lint results

* modified lint results

* modified lint results

* modified lint results

* include feedback

* include feedback

* include feedback

* modify docs test results

* Update instrumentation/opentelemetry-instrumentation-asyncio/README.rst

Co-authored-by: Aaron Abbott <aaronabbott@google.com>

* Update instrumentation/opentelemetry-instrumentation-asyncio/README.rst

Co-authored-by: Aaron Abbott <aaronabbott@google.com>

* Update instrumentation/opentelemetry-instrumentation-asyncio/README.rst

Co-authored-by: Aaron Abbott <aaronabbott@google.com>

* Update instrumentation/opentelemetry-instrumentation-asyncio/README.rst

Co-authored-by: Aaron Abbott <aaronabbott@google.com>

* Update instrumentation/opentelemetry-instrumentation-asyncio/src/opentelemetry/instrumentation/asyncio/utils.py

Co-authored-by: Aaron Abbott <aaronabbott@google.com>

* Update instrumentation/opentelemetry-instrumentation-asyncio/src/opentelemetry/instrumentation/asyncio/utils.py

Co-authored-by: Aaron Abbott <aaronabbott@google.com>

* include feedback

* include feedback

* drop python 3.7 support

* drop python 3.7 support

* Removed from default_instrumentations

* Recover

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Aaron Abbott <aaronabbott@google.com>

* Drop obsolete parameterized test dependency (open-telemetry#2134)

In the test dependencies for `opentelemetry-instrumentation-falcon`,
don’t depend on `parametrized` because `pytest.mark.parametrize` is now
included in `pytest`.

* AwsLambdaInstrumentor handles and re-raises handler function exception (open-telemetry#2245)

* Remove werkzeug from Flask instrumentation dependencies (open-telemetry#2257)

Fixes open-telemetry#2256

* Skipping certain folders in release script (open-telemetry#2258)

* Update version to 1.24.0.dev/0.45b0.dev (open-telemetry#2262)

* Copy change log updates from release/v1.23.x-0.44bx (open-telemetry#2265)

* Fix various release scripts aspects (open-telemetry#2267)

* Add instrumentation for Psycopg 3.x (open-telemetry#2123)

* Add instrumentation for Psycopg 3.x

* Add federicobond to component_owners.yml

* Refactor use of changedir in tox.ini (open-telemetry#2332)

Fixes #3745

* Align gRPC server span status codes to OTEL specs (open-telemetry#2019)

* Fix OpenTelemetry Aio-pika instrumentation link (open-telemetry#2259)

* Update README.rst (open-telemetry#2111)

Co-authored-by: Leighton Chen <lechen@microsoft.com>

* Fix docker test dependencies (open-telemetry#2345)

Fixes open-telemetry#2344

* Celery duplicated instrumentation (open-telemetry#2342)

* * Adding (failing) testcase to cover Issue open-telemetry#2029

* * move Instance variables to class variables. Since the object in question will be a singelton. This will resolve open-telemetry#2029 where multiple calls to the instrumentation will assign Null values.

* * black formatting

* * Changelog stub entry, PR # to follow

* * updating the pullrequest number

* * remove superfluous constructor

* * moving Change log to unreleased section

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* chore: fix md based on rules and fix bad links (open-telemetry#2240)

* chore: fix md based on rules and fix bad links

* chore: add index to contribuiting and readme files

---------

Co-authored-by: Leighton Chen <lechen@microsoft.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Use set -e to catch errors in all scripts (open-telemetry#2347)

* Fix asyncio related warnings in tests (open-telemetry#2335)

* aiopg: fix runtime warnings when running tests

Fixes:
RuntimeWarning: coroutine 'MockCursor.execute' was never awaited
    cursor.execute(query)

* aio-pika: no need to return an awaitable in mocked method

No need to return an awaitable since the mocked method awaits
itself.
Fixes:
    RuntimeWarning: coroutine 'sleep' was never awaited

---------

Co-authored-by: Leighton Chen <lechen@microsoft.com>

* feat: add importlib metadata default on flask module (open-telemetry#2302)

* feat: add importlib metadata default

* feat: add importlib metadata default

* feat: add importlib metadata default

* Fix lint

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Remove [test] package from opentelemetry-contrib-instrumentations (open-telemetry#2318)

Fixes open-telemetry#2236

* Remove [test] package from aiopg instrumentation (open-telemetry#2243)

Fixes open-telemetry#2185

* Remove [test] package from aio-pika instrumentation (open-telemetry#2244)

Fixes open-telemetry#2186

* Remove [test] package from asgi instrumentation (open-telemetry#2247)

Fixes open-telemetry#2187

* Remove [test] package from asyncio instrumentation (open-telemetry#2248)

Fixes open-telemetry#2188

* Remove [test] package from flask instrumentation (open-telemetry#2127)

Fixes open-telemetry#2126

* Remove [test] package for django instrumentation (open-telemetry#2311)

Fixes open-telemetry#2198

* Remove [test] package from falcon instrumentation (open-telemetry#2313)

Fixes open-telemetry#2200

* Remove [test] package from wsgi instrumentation (open-telemetry#2283)

Fixes open-telemetry#2227

* Remove [test] package from pyramid instrumentation (open-telemetry#2273)

Fixes open-telemetry#2214

* Remove [test] package from starlette instrumentation (open-telemetry#2278)

Fixes open-telemetry#2221

* Fix response hook (open-telemetry#2038)

Response hook receives a third parameter, Response, and that should be reflected in the _ResponseHook type

Co-authored-by: Leighton Chen <lechen@microsoft.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Remove [test] package from fastapi instrumentation (open-telemetry#2289)

Fixes open-telemetry#2201

* Remove [test] package from tornado instrumentation (open-telemetry#2280)

Fixes open-telemetry#2223

* Remove [test] package from aiohttp-client instrumentation (open-telemetry#2238)

Fixes open-telemetry#2183

* Remove [test] package from aiohttp-server instrumentation (open-telemetry#2242)

Fixes open-telemetry#2184

* Remove [test] package from httpx instrumentation (open-telemetry#2314)

Fixes open-telemetry#2203

* Remove [test] package from requests instrumentation (open-telemetry#2276)

Fixes open-telemetry#2217

* Remove [test] package from urllib instrumentation (open-telemetry#2282)

Fixes open-telemetry#2225

* Remove [test] package from urllib3 instrumentation (open-telemetry#2316)

Fixes open-telemetry#2226

* Remove [test] package from pymemcache instrumentation (open-telemetry#2310)

Fixes open-telemetry#2211

* Remove [test] package from elasticsearch configuration (open-telemetry#2312)

Fixes #3745

* Remove [test] package from mysqlclient instrumentation (open-telemetry#2295)

Fixes open-telemetry#2208

* Feature/convention http server duration (open-telemetry#2326)

* feat: add http.duration convention

* feat: add http.duration convention

* feat: replace for the last description version Duration of HTTP client requests

* feat: add new description to histogram

* Remove [test] package from sqlalchemy instrumentation (open-telemetry#2315)

Fixes open-telemetry#2219

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Remove [test] package from dbapi instrumentation (open-telemetry#2288)

Fixes open-telemetry#2197

* Remove [test] package from logging instrumentation (open-telemetry#2293)

Fixes open-telemetry#2206

* Remove [test] package from asyncpg instrumentation (open-telemetry#2249)

Fixes open-telemetry#2189

* instrumentation/django: fix test_trace_parent (open-telemetry#2338)

* Psycopg3 sync and async instrumentation   (open-telemetry#2146)

* Skip celery test case if running in PyPy (open-telemetry#2349)

Fixes open-telemetry#2348

Co-authored-by: Leighton Chen <lechen@microsoft.com>

* Remove [test] package from aws-lambda instrumentation (open-telemetry#2250)

Fixes open-telemetry#2190

* Remove [test] package from cassandra instrumentation (open-telemetry#2285)

Fixes open-telemetry#2194

* Remove [test] package from botocore instrumentation (open-telemetry#2284)

Fixes open-telemetry#2193

* Remove [test] package from celery instrumentation (open-telemetry#2286)

Fixes open-telemetry#2195

* Remove [test] package from grpc instrumentation (open-telemetry#2290)

Fixes open-telemetry#2202

* Remove [test] package from jinja2 instrumentation (open-telemetry#2291)

Fixes open-telemetry#2204

* Remove [test] package from kafka-python instrumentation (open-telemetry#2292)

Fixes open-telemetry#2205

* Remove [test] package from boto instrumentation (open-telemetry#2251)

Fixes open-telemetry#2191

* Remove [test] package from mysql instrumentation (open-telemetry#2294)

Fixes open-telemetry#2207

* Remove [test] package from psycopg2 instrumentation (open-telemetry#2307)

Fixes open-telemetry#2210

* Remove [test] package from pymongo instrumentation (open-telemetry#2269)

Fixes open-telemetry#2212

* avoid losing repeated HTTP headers (open-telemetry#2266)

* avoid loosing repeated HTTP headers

* fix fof wsgi, test in falcon

* add changelog

* add more tests

* linting

* fix falcon and flask

* remove unused test

---------

Co-authored-by: Leighton Chen <lechen@microsoft.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Remove [test] package from redis instrumentation (open-telemetry#2274)

Fixes open-telemetry#2215

* Remove [test] package from remoulade instrumentation (open-telemetry#2275)

Fixes open-telemetry#2216

* Remove [test] package from sklearn instrumentation (open-telemetry#2303)

Fixes open-telemetry#2218

* Remove [test] package from psycopg instrumentation (open-telemetry#2309)

Fixes open-telemetry#2308

* Remove [test] package from resource-detector-container (open-telemetry#2319)

Fixes open-telemetry#2228

* Remove [test] package from opentelemetry-resource-detector-azure (open-telemetry#2317)

Fixes open-telemetry#2229

* Remove [test] package from propagator-aws-xray (open-telemetry#2320)

Fixes open-telemetry#2230

* Remove [test] package from propagator-ot-trace (open-telemetry#2321)

Fixes open-telemetry#2231

* Remove [test] package from exporter-richconsole (open-telemetry#2322)

Fixes open-telemetry#2232

* Remove [test] package from exporter-prometheus-remote-write (open-telemetry#2323)

Fixes open-telemetry#2233

* Remove [test] package from sdk-extension-aws (open-telemetry#2324)

Fixes open-telemetry#2234

* Remove [test] package from opentelemetry-instrumentation (open-telemetry#2327)

Fixes open-telemetry#2235

* Remove [test] package from distro (open-telemetry#2325)

Fixes open-telemetry#2237

* Remove [test] package from sqlite3 instrumentation (open-telemetry#2277)

Fixes open-telemetry#2220

* Remove [test] package from system-metrics instrumentation (open-telemetry#2279)

Fixes open-telemetry#2222

* Remove [test] package from tortoiseorm instrumentation (open-telemetry#2281)

Fixes open-telemetry#2224

* Remove [test] package from confluent-kafka instrumentation (open-telemetry#2287)

Fixes open-telemetry#2196

* Remove [test] package from pymysql instrumentation (open-telemetry#2272)

Fixes open-telemetry#2272

* Remove [test] package from boto3sqs instrumentation (open-telemetry#2252)

Fixes open-telemetry#2192

* Remove [test] package from _template (open-telemetry#2329)

Fixes open-telemetry#2328

* Remove [test] package from pika instrumentation (open-telemetry#2306)

Fixes open-telemetry#2209

* elasticsearch: don't set body as db statement for bulk requests (open-telemetry#2355)

* elasticsearch: don't set body as db statement for bulk requests

bulk requests can be too big and diverse to make sense as db statement.
Other than that the sanitizer currently only handles dicts so it's
crashing.

Closes open-telemetry#2150

Co-authored-by: Jason Mobarak <git@jason.mobarak.name>
Co-authored-by: Quentin Pradet <quentin.pradet@gmail.com>

* Update CHANGELOG

* Please the linter

---------

Co-authored-by: Jason Mobarak <git@jason.mobarak.name>
Co-authored-by: Quentin Pradet <quentin.pradet@gmail.com>

* regression-fix: retain httpx.URL type on request.url (open-telemetry#2359)

* fix: retain httpx.URL type on request.url

This fixes a regression caused in open-telemetry#2020 where request.url stopped being of `httpx.URL` type, causing issues with request/response hooks.

* Update CHANGELOG.md

* tests: adding assertions to verify request.url on hooks is a httpx.URL

* fixup: adjust check to consider httpx < 0.20.0

* fixup: keep code dry

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Leighton Chen <lechen@microsoft.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* Add cloud.account.id attribute by AwsLambdaInstrumentor (open-telemetry#2367)

* Add cloud.account.id attribute by AwsLambdaInstrumentor

* Changelog

* Update test

* lint

* Update version to 1.25.0.dev/0.46b0.dev (open-telemetry#2376)

* Remove context manager check (open-telemetry#2391)

* rename `type` to `asgi.event.type` in ASGI instrumentation (open-telemetry#2300)

* Change meta data service timeout to 200ms (open-telemetry#2387)

* Azure resource detector 0.1.4 (open-telemetry#2394)

* Update contrib repo approvers list (open-telemetry#2395)

* Add AWS resource detector entry points (open-telemetry#2382)

* feat: add opentelemetry-instrumentation-threading library (open-telemetry#2253)

* feat: add opentelemetry-instrumentation-threading library

* fix: update python file with black formatter

* fix: modified title underline too short issue

* fix: modified library sorted via isort tool

* fix: modified CHANGELOG.md and remove unused parameter

* test: migrated unit test cases from the open-telemetry#1582 to this project

* chroe: updated the tox.ini test commands

* fix: fixed the lint issue

* feat: support ThreadPool and update document

* fix: fixed the lint issue

* refactor: remove redundant class and simplify capture OTel context usage

* fix: removed unused parameter

* test: added a new test case for thread pool

* fix: remove unused return response

* refactor: compared the array

* fix: remove f-string

* fix: fixed pylint issue

* fix: test library

* fix: updated CHANGELOG.md

---------

Co-authored-by: Aaron Abbott <aaronabbott@google.com>

* feat: update otel dependencies

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Rahul Kumar <Rahul.Kumar@fmr.com>
Co-authored-by: Nahian-Al Hasan <nahian97@gmail.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: OpenTelemetry Bot <107717825+opentelemetrybot@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Sanket Mehta <sankmeht@cisco.com>
Co-authored-by: Leighton Chen <lechen@microsoft.com>
Co-authored-by: Tristan Sloughter <t@crashfast.com>
Co-authored-by: Matthew Grossman <matt@mrgrossman.com>
Co-authored-by: Nimrod Shlagman <nemos@cisco.com>
Co-authored-by: Phillip Verheyden <pverheyden@gmail.com>
Co-authored-by: Maciej Nachtygal <82878433+macieyng@users.noreply.github.com>
Co-authored-by: Filip Nikolovski <me@filipnikolovski.com>
Co-authored-by: Tammy Baylis <96076570+tammy-baylis-swi@users.noreply.github.com>
Co-authored-by: Yashaswi Makula <yashaswi.makula@gmail.com>
Co-authored-by: Iman Shafiei <imanshafiei540@gmail.com>
Co-authored-by: Akochavi <121871419+Akochavi@users.noreply.github.com>
Co-authored-by: David Gonoradsky <david@gethelios.dev>
Co-authored-by: Ran Nozik <ran@gethelios.dev>
Co-authored-by: Pablo Collins <pablo.collins@gmail.com>
Co-authored-by: Iman Shafiei <iman.shafiei@earthdaily.com>
Co-authored-by: Michael <mshebeko@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Matt Oberle <matt.r.oberle@gmail.com>
Co-authored-by: Matt Oberle <mattoberle@users.noreply.github.com>
Co-authored-by: Vivanov98 <66319645+Vivanov98@users.noreply.github.com>
Co-authored-by: Rytis Bagdziunas <rbagd@users.noreply.github.com>
Co-authored-by: Mario Jonke <mario.jonke@dynatrace.com>
Co-authored-by: Jeremy Voss <jerevoss@gmail.com>
Co-authored-by: Marc Dougherty <muncus@users.noreply.github.com>
Co-authored-by: Alexandre Papin <alexandre.papin@indaclouds.fr>
Co-authored-by: Ron Yishai <ronyish@cisco.com>
Co-authored-by: Thomas LÉVEIL <thomasleveil@users.noreply.github.com>
Co-authored-by: Jakub Warczarek <jakub.warczarek@gmail.com>
Co-authored-by: Raphael Philipe Mendes da Silva <rapphil@gmail.com>
Co-authored-by: Javier Fernández Rodríguez <rfjgoo@gmail.com>
Co-authored-by: mattcontinisio <mrcontinisio@gmail.com>
Co-authored-by: Noemi <45180344+unflxw@users.noreply.github.com>
Co-authored-by: João Thallis <joaothallis@icloud.com>
Co-authored-by: Allen Kim <clymeneAllen@gmail.com>
Co-authored-by: André "decko" de Brito <brito.afa@gmail.com>
Co-authored-by: Kenny Trytek <kenny.trytek@workiva.com>
Co-authored-by: Daniel Manchon <dmanchon@gmail.com>
Co-authored-by: Margaret Yu <yumarg@users.noreply.github.com>
Co-authored-by: Liudmila Molkova <limolkova@microsoft.com>
Co-authored-by: siminn-arnorgj <106159316+siminn-arnorgj@users.noreply.github.com>
Co-authored-by: Rahul Kumar <rahulkumar.10.06.1991@gmail.com>
Co-authored-by: Suryanarayana Peri <suryanarayana.peri@fmr.com>
Co-authored-by: Adrian Garcia Badaracco <1755071+adriangb@users.noreply.github.com>
Co-authored-by: Pierre Tessier <pierre@pierretessier.com>
Co-authored-by: Christian Hartung <christian.hartung@olist.com>
Co-authored-by: samypr100 <3933065+samypr100@users.noreply.github.com>
Co-authored-by: Bulygin Evgeny <41860443+nesb1@users.noreply.github.com>
Co-authored-by: Sean Kenny <sean.kenny@hotmail.com>
Co-authored-by: Jean Jordaan <jean.jordaan@gmail.com>
Co-authored-by: Denis Otkidach <denis.otkidach@gmail.com>
Co-authored-by: Kenny Guo <110429254+kennykguo@users.noreply.github.com>
Co-authored-by: Allen Kim <allen.k1m@kakaocorp.com>
Co-authored-by: Steve Flanders <sflanders@splunk.com>
Co-authored-by: Ben Beasley <code@musicinmybrain.net>
Co-authored-by: Sofiia Tesliuk <33581458+sofiia-tesliuk@users.noreply.github.com>
Co-authored-by: Bruno Guimarães <brunobastosg@gmail.com>
Co-authored-by: Marcus Lim <42759889+marcuslimdw@users.noreply.github.com>
Co-authored-by: Iuri de Silvio <iurisilvio@gmail.com>
Co-authored-by: Aaron Abbott <aaronabbott@google.com>
Co-authored-by: Federico Bond <federicobond@gmail.com>
Co-authored-by: Filip Nikolovski <filip.nikolovski@jwplayer.com>
Co-authored-by: Emanuele Fumagalli <emanuelef@users.noreply.github.com>
Co-authored-by: Andrew L <32132177+awhlam@users.noreply.github.com>
Co-authored-by: Markus <reiktar@gmail.com>
Co-authored-by: Rodrigo-Novas <rodrigog.novas@mercadolibre.com>
Co-authored-by: John Bley <johnbley@gmail.com>
Co-authored-by: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
Co-authored-by: Mario de Frutos Dieguez <mario@revenuecat.com>
Co-authored-by: Markus <markus.jonsson@axial.net>
Co-authored-by: Samuel Colvin <s@muelcolvin.com>
Co-authored-by: Jason Mobarak <git@jason.mobarak.name>
Co-authored-by: Quentin Pradet <quentin.pradet@gmail.com>
Co-authored-by: abstractOwl <abstractOwl@users.noreply.github.com>
Co-authored-by: Changemyminds <david7717318@gmail.com>
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.

httpx tests failing on httpx==0.23.1
4 participants