From e7f647e91b95ae651e97032c9bc5c8f0ff549d2d Mon Sep 17 00:00:00 2001
From: Diego Hurtado
Date: Thu, 15 Aug 2024 17:05:45 -0600
Subject: [PATCH 01/26] Add skip clause for Public API check (#2801)
Fixes #2800
---
.../src/generate_workflows_lib/misc.yml.j2 | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/.github/workflows/generate_workflows_lib/src/generate_workflows_lib/misc.yml.j2 b/.github/workflows/generate_workflows_lib/src/generate_workflows_lib/misc.yml.j2
index fe479ae5b2..807da0eb1a 100644
--- a/.github/workflows/generate_workflows_lib/src/generate_workflows_lib/misc.yml.j2
+++ b/.github/workflows/generate_workflows_lib/src/generate_workflows_lib/misc.yml.j2
@@ -25,6 +25,11 @@ jobs:
!contains(github.event.pull_request.labels.*.name, 'Skip generate-workflows')
&& github.actor != 'opentelemetrybot'
{%- endif %}
+ {%- if job_data == "public-symbols-check" %}
+ if: |
+ !contains(github.event.pull_request.labels.*.name, 'Approve Public API check')
+ && github.actor != 'opentelemetrybot'
+ {%- endif %}
steps:
- name: Checkout repo @ SHA - ${% raw %}{{ github.sha }}{% endraw %}
uses: actions/checkout@v4
From 4108d57e7ae6bb38d1ac638a6392f3a53dac2853 Mon Sep 17 00:00:00 2001
From: B Ramshankar
Date: Fri, 16 Aug 2024 22:27:24 +0100
Subject: [PATCH 02/26] fix for Audit and test
opentelemetry-instrumentation-jinja2 #978 (#2799)
---
.../tests/test_jinja2.py | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/instrumentation/opentelemetry-instrumentation-jinja2/tests/test_jinja2.py b/instrumentation/opentelemetry-instrumentation-jinja2/tests/test_jinja2.py
index 542a65d220..26ba98e69b 100644
--- a/instrumentation/opentelemetry-instrumentation-jinja2/tests/test_jinja2.py
+++ b/instrumentation/opentelemetry-instrumentation-jinja2/tests/test_jinja2.py
@@ -219,3 +219,14 @@ def test_uninstrumented(self):
self.assertEqual(len(spans), 0)
Jinja2Instrumentor().instrument()
+
+ def test_no_op_tracer_provider(self):
+ self.memory_exporter.clear()
+ Jinja2Instrumentor().uninstrument()
+ Jinja2Instrumentor().instrument(
+ tracer_provider=trace_api.NoOpTracerProvider()
+ )
+ template = jinja2.environment.Template("Hello {{name}}!")
+ self.assertEqual(template.render(name="Jinja"), "Hello Jinja!")
+ spans = self.memory_exporter.get_finished_spans()
+ self.assertEqual(len(spans), 0)
From 560fd04962f11c2cfa68407c88c51442bc864fa6 Mon Sep 17 00:00:00 2001
From: Jordan Gibbings
Date: Mon, 19 Aug 2024 22:59:24 +0800
Subject: [PATCH 03/26] fix(tornado): ensure reading future.result() won't
throw an exception in client.py _finish_tracing_callback (#2563)
---
CHANGELOG.md | 2 +
.../instrumentation/tornado/client.py | 56 ++++++++++++-------
.../tests/test_instrumentation.py | 47 +++++++++++++++-
3 files changed, 83 insertions(+), 22 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 39236a33f3..8c31e01235 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -36,6 +36,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
([#2385](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2385))
- `opentelemetry-instrumentation-asyncio` Fixes async generator coroutines not being awaited
([#2792](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2792))
+- `opentelemetry-instrumentation-tornado` Handle http client exception and record exception info into span
+ ([#2563](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2563))
## Version 1.26.0/0.47b0 (2024-07-23)
diff --git a/instrumentation/opentelemetry-instrumentation-tornado/src/opentelemetry/instrumentation/tornado/client.py b/instrumentation/opentelemetry-instrumentation-tornado/src/opentelemetry/instrumentation/tornado/client.py
index 090f87a88b..fa0e53bf95 100644
--- a/instrumentation/opentelemetry-instrumentation-tornado/src/opentelemetry/instrumentation/tornado/client.py
+++ b/instrumentation/opentelemetry-instrumentation-tornado/src/opentelemetry/instrumentation/tornado/client.py
@@ -21,7 +21,7 @@
from opentelemetry.instrumentation.utils import http_status_to_status_code
from opentelemetry.propagate import inject
from opentelemetry.semconv.trace import SpanAttributes
-from opentelemetry.trace.status import Status
+from opentelemetry.trace.status import Status, StatusCode
from opentelemetry.util.http import remove_url_credentials
@@ -105,37 +105,53 @@ def _finish_tracing_callback(
request_size_histogram,
response_size_histogram,
):
+ response = None
status_code = None
+ status = None
description = None
- exc = future.exception()
-
- response = future.result()
- if span.is_recording() and exc:
+ exc = future.exception()
+ if exc:
+ description = f"{type(exc).__qualname__}: {exc}"
if isinstance(exc, HTTPError):
+ response = exc.response
status_code = exc.code
- description = f"{type(exc).__name__}: {exc}"
+ status = Status(
+ status_code=http_status_to_status_code(status_code),
+ description=description,
+ )
+ else:
+ status = Status(
+ status_code=StatusCode.ERROR,
+ description=description,
+ )
+ span.record_exception(exc)
else:
+ response = future.result()
status_code = response.code
+ status = Status(
+ status_code=http_status_to_status_code(status_code),
+ description=description,
+ )
if status_code is not None:
span.set_attribute(SpanAttributes.HTTP_STATUS_CODE, status_code)
- span.set_status(
- Status(
- status_code=http_status_to_status_code(status_code),
- description=description,
- )
- )
+ span.set_status(status)
- metric_attributes = _create_metric_attributes(response)
- request_size = int(response.request.headers.get("Content-Length", 0))
- response_size = int(response.headers.get("Content-Length", 0))
+ if response is not None:
+ metric_attributes = _create_metric_attributes(response)
+ request_size = int(response.request.headers.get("Content-Length", 0))
+ response_size = int(response.headers.get("Content-Length", 0))
- duration_histogram.record(
- response.request_time, attributes=metric_attributes
- )
- request_size_histogram.record(request_size, attributes=metric_attributes)
- response_size_histogram.record(response_size, attributes=metric_attributes)
+ duration_histogram.record(
+ response.request_time, attributes=metric_attributes
+ )
+ request_size_histogram.record(
+ request_size, attributes=metric_attributes
+ )
+ response_size_histogram.record(
+ response_size, attributes=metric_attributes
+ )
if response_hook:
response_hook(span, future)
diff --git a/instrumentation/opentelemetry-instrumentation-tornado/tests/test_instrumentation.py b/instrumentation/opentelemetry-instrumentation-tornado/tests/test_instrumentation.py
index 01cdddceed..daf2ddd846 100644
--- a/instrumentation/opentelemetry-instrumentation-tornado/tests/test_instrumentation.py
+++ b/instrumentation/opentelemetry-instrumentation-tornado/tests/test_instrumentation.py
@@ -16,6 +16,7 @@
from unittest.mock import Mock, patch
from http_server_mock import HttpServerMock
+from tornado.httpclient import HTTPClientError
from tornado.testing import AsyncHTTPTestCase
from opentelemetry import trace
@@ -32,7 +33,7 @@
from opentelemetry.semconv.trace import SpanAttributes
from opentelemetry.test.test_base import TestBase
from opentelemetry.test.wsgitestutil import WsgiTestBase
-from opentelemetry.trace import SpanKind
+from opentelemetry.trace import SpanKind, StatusCode
from opentelemetry.util.http import (
OTEL_INSTRUMENTATION_HTTP_CAPTURE_HEADERS_SERVER_REQUEST,
OTEL_INSTRUMENTATION_HTTP_CAPTURE_HEADERS_SERVER_RESPONSE,
@@ -493,7 +494,6 @@ def test_response_headers(self):
self.assertEqual(len(spans), 3)
self.assertTraceResponseHeaderMatchesSpan(response.headers, spans[1])
- self.memory_exporter.clear()
set_global_response_propagator(orig)
def test_credential_removal(self):
@@ -602,6 +602,49 @@ def client_response_hook(span, response):
self.memory_exporter.clear()
+class TestTornadoHTTPClientInstrumentation(TornadoTest, WsgiTestBase):
+ def test_http_client_success_response(self):
+ response = self.fetch("/")
+ self.assertEqual(response.code, 201)
+
+ spans = self.memory_exporter.get_finished_spans()
+ self.assertEqual(len(spans), 3)
+ manual, server, client = self.sorted_spans(spans)
+ self.assertEqual(manual.name, "manual")
+ self.assertEqual(server.name, "GET /")
+ self.assertEqual(client.name, "GET")
+ self.assertEqual(client.status.status_code, StatusCode.UNSET)
+ self.memory_exporter.clear()
+
+ def test_http_client_failed_response(self):
+ # when an exception isn't thrown
+ response = self.fetch("/some-404")
+ self.assertEqual(response.code, 404)
+
+ spans = self.memory_exporter.get_finished_spans()
+ self.assertEqual(len(spans), 2)
+ server, client = self.sorted_spans(spans)
+ self.assertEqual(server.name, "GET /some-404")
+ self.assertEqual(client.name, "GET")
+ self.assertEqual(client.status.status_code, StatusCode.ERROR)
+ self.memory_exporter.clear()
+
+ # when an exception is thrown
+ try:
+ response = self.fetch("/some-404", raise_error=True)
+ self.assertEqual(response.code, 404)
+ except HTTPClientError:
+ pass # expected exception - continue
+
+ spans = self.memory_exporter.get_finished_spans()
+ self.assertEqual(len(spans), 2)
+ server, client = self.sorted_spans(spans)
+ self.assertEqual(server.name, "GET /some-404")
+ self.assertEqual(client.name, "GET")
+ self.assertEqual(client.status.status_code, StatusCode.ERROR)
+ self.memory_exporter.clear()
+
+
class TestTornadoUninstrument(TornadoTest):
def test_uninstrument(self):
response = self.fetch("/")
From dda369b7247919b8d4351b6a2535c7ad9e7f0fc0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Em=C3=ADdio=20Neto?=
<9735060+emdneto@users.noreply.github.com>
Date: Mon, 19 Aug 2024 12:39:17 -0300
Subject: [PATCH 04/26] bump webob to 1.8.8 in test requirements (#2804)
---
.../opentelemetry-instrumentation-pyramid/test-requirements.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/instrumentation/opentelemetry-instrumentation-pyramid/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-pyramid/test-requirements.txt
index 56f89f8e8e..aa387f8177 100644
--- a/instrumentation/opentelemetry-instrumentation-pyramid/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-pyramid/test-requirements.txt
@@ -15,7 +15,7 @@ tomli==2.0.1
translationstring==1.4
typing_extensions==4.9.0
venusian==3.1.0
-WebOb==1.8.7
+WebOb==1.8.8
Werkzeug==3.0.3
wrapt==1.16.0
zipp==3.19.2
From 1ad9d9030880d260df3b52c2e2c334b07f1bde4a Mon Sep 17 00:00:00 2001
From: Mrugesh Master
Date: Wed, 21 Aug 2024 15:24:46 -0700
Subject: [PATCH 05/26] Divided proc_cpu_percent by 100 to get value between 0
and 1 (#2812)
---
CHANGELOG.md | 2 ++
.../opentelemetry/instrumentation/system_metrics/__init__.py | 2 +-
.../tests/test_system_metrics.py | 2 +-
3 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8c31e01235..5abca8227a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -20,6 +20,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## Fixed
+- `opentelemetry-instrumentation-system-metrics` fix `process.runtime.cpu.utilization` values to be shown in range of 0 to 1
+ ([2812](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2812))
- `opentelemetry-instrumentation-fastapi` fix `fastapi` auto-instrumentation by removing `fastapi-slim` support, `fastapi-slim` itself is discontinued from maintainers
([2783](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2783))
- `opentelemetry-instrumentation-aws-lambda` Avoid exception when a handler is not present.
diff --git a/instrumentation/opentelemetry-instrumentation-system-metrics/src/opentelemetry/instrumentation/system_metrics/__init__.py b/instrumentation/opentelemetry-instrumentation-system-metrics/src/opentelemetry/instrumentation/system_metrics/__init__.py
index b7ffb25431..1b9a36c4cb 100644
--- a/instrumentation/opentelemetry-instrumentation-system-metrics/src/opentelemetry/instrumentation/system_metrics/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-system-metrics/src/opentelemetry/instrumentation/system_metrics/__init__.py
@@ -729,7 +729,7 @@ def _get_runtime_cpu_utilization(
"""Observer callback for runtime CPU utilization"""
proc_cpu_percent = self._proc.cpu_percent()
yield Observation(
- proc_cpu_percent,
+ proc_cpu_percent / 100,
self._runtime_cpu_utilization_labels.copy(),
)
diff --git a/instrumentation/opentelemetry-instrumentation-system-metrics/tests/test_system_metrics.py b/instrumentation/opentelemetry-instrumentation-system-metrics/tests/test_system_metrics.py
index 1d6f08892e..bf3a5c6ee2 100644
--- a/instrumentation/opentelemetry-instrumentation-system-metrics/tests/test_system_metrics.py
+++ b/instrumentation/opentelemetry-instrumentation-system-metrics/tests/test_system_metrics.py
@@ -839,7 +839,7 @@ def test_runtime_thread_num(self, mock_process_thread_num):
def test_runtime_cpu_percent(self, mock_process_cpu_percent):
mock_process_cpu_percent.configure_mock(**{"return_value": 42})
- expected = [_SystemMetricsResult({}, 42)]
+ expected = [_SystemMetricsResult({}, 0.42)]
self._test_metrics(
f"process.runtime.{self.implementation}.cpu.utilization", expected
)
From fb75ac05d8dfffdd71c89a9af8eadd4a08da9f21 Mon Sep 17 00:00:00 2001
From: Ben C <108300492+benbo34@users.noreply.github.com>
Date: Fri, 23 Aug 2024 15:15:29 -0400
Subject: [PATCH 06/26] replaced broken link (#2815)
---
CONTRIBUTING.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 990d6b14a2..d01d43181f 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -15,7 +15,7 @@ and [**Maintainer**](https://github.com/open-telemetry/community/blob/main/commu
Before you can contribute, you will need to sign the [Contributor License Agreement](https://docs.linuxfoundation.org/lfx/easycla/contributors).
-Please also read the [OpenTelemetry Contributor Guide](https://github.com/open-telemetry/community/blob/main/CONTRIBUTING.md).
+Please also read the [OpenTelemetry Contributor Guide](https://github.com/open-telemetry/community/blob/main/guides/contributor/README.md).
## Index
From bc4d2c5b75e3e523c4be2da2fa01f2c02e4f9453 Mon Sep 17 00:00:00 2001
From: Leighton Chen
Date: Fri, 23 Aug 2024 16:56:36 -0700
Subject: [PATCH 07/26] Fix `http.host` and `net.peer.ip` new http semconv
mapping (#2814)
---
CHANGELOG.md | 2 +
.../instrumentation/asgi/__init__.py | 10 ++--
.../tests/test_asgi_middleware.py | 19 ++-----
.../instrumentation/httpx/__init__.py | 4 +-
.../instrumentation/requests/__init__.py | 6 +-
.../instrumentation/urllib3/__init__.py | 6 +-
.../instrumentation/wsgi/__init__.py | 4 +-
.../opentelemetry/instrumentation/_semconv.py | 56 ++++++++++++-------
8 files changed, 59 insertions(+), 48 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 5abca8227a..c5ce56423a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -40,6 +40,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
([#2792](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2792))
- `opentelemetry-instrumentation-tornado` Handle http client exception and record exception info into span
([#2563](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2563))
+- `opentelemetry-instrumentation` fix `http.host` new http semantic convention mapping to depend on `kind` of span
+ ([#2814](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2814))
## Version 1.26.0/0.47b0 (2024-07-23)
diff --git a/instrumentation/opentelemetry-instrumentation-asgi/src/opentelemetry/instrumentation/asgi/__init__.py b/instrumentation/opentelemetry-instrumentation-asgi/src/opentelemetry/instrumentation/asgi/__init__.py
index 8e3199cef8..295eb2a043 100644
--- a/instrumentation/opentelemetry-instrumentation-asgi/src/opentelemetry/instrumentation/asgi/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-asgi/src/opentelemetry/instrumentation/asgi/__init__.py
@@ -215,10 +215,10 @@ def client_response_hook(span: Span, scope: dict[str, Any], message: dict[str, A
_server_duration_attrs_new,
_server_duration_attrs_old,
_set_http_flavor_version,
- _set_http_host,
+ _set_http_host_server,
_set_http_method,
_set_http_net_host_port,
- _set_http_peer_ip,
+ _set_http_peer_ip_server,
_set_http_peer_port_server,
_set_http_scheme,
_set_http_target,
@@ -342,7 +342,7 @@ def collect_request_attributes(
if scheme:
_set_http_scheme(result, scheme, sem_conv_opt_in_mode)
if server_host:
- _set_http_host(result, server_host, sem_conv_opt_in_mode)
+ _set_http_host_server(result, server_host, sem_conv_opt_in_mode)
if port:
_set_http_net_host_port(result, port, sem_conv_opt_in_mode)
flavor = scope.get("http_version")
@@ -380,7 +380,9 @@ def collect_request_attributes(
_set_http_user_agent(result, http_user_agent[0], sem_conv_opt_in_mode)
if "client" in scope and scope["client"] is not None:
- _set_http_peer_ip(result, scope.get("client")[0], sem_conv_opt_in_mode)
+ _set_http_peer_ip_server(
+ result, scope.get("client")[0], sem_conv_opt_in_mode
+ )
_set_http_peer_port_server(
result, scope.get("client")[1], sem_conv_opt_in_mode
)
diff --git a/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py b/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py
index af51faa808..d89f4a54e0 100644
--- a/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py
+++ b/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py
@@ -53,10 +53,7 @@
from opentelemetry.semconv.attributes.network_attributes import (
NETWORK_PROTOCOL_VERSION,
)
-from opentelemetry.semconv.attributes.server_attributes import (
- SERVER_ADDRESS,
- SERVER_PORT,
-)
+from opentelemetry.semconv.attributes.server_attributes import SERVER_PORT
from opentelemetry.semconv.attributes.url_attributes import (
URL_PATH,
URL_QUERY,
@@ -406,7 +403,6 @@ def validate_outputs(
HTTP_REQUEST_METHOD: "GET",
URL_SCHEME: "http",
SERVER_PORT: 80,
- SERVER_ADDRESS: "127.0.0.1",
NETWORK_PROTOCOL_VERSION: "1.0",
URL_PATH: "/",
CLIENT_ADDRESS: "127.0.0.1",
@@ -442,7 +438,6 @@ def validate_outputs(
HTTP_REQUEST_METHOD: "GET",
URL_SCHEME: "http",
SERVER_PORT: 80,
- SERVER_ADDRESS: "127.0.0.1",
NETWORK_PROTOCOL_VERSION: "1.0",
URL_PATH: "/",
CLIENT_ADDRESS: "127.0.0.1",
@@ -688,7 +683,7 @@ def test_behavior_with_scope_server_as_none_new_semconv(self):
def update_expected_server(expected):
expected[3]["attributes"].update(
{
- SERVER_ADDRESS: "0.0.0.0",
+ CLIENT_ADDRESS: "0.0.0.0",
SERVER_PORT: 80,
}
)
@@ -715,7 +710,7 @@ def update_expected_server(expected):
SpanAttributes.HTTP_HOST: "0.0.0.0",
SpanAttributes.NET_HOST_PORT: 80,
SpanAttributes.HTTP_URL: "http://0.0.0.0/",
- SERVER_ADDRESS: "0.0.0.0",
+ CLIENT_ADDRESS: "0.0.0.0",
SERVER_PORT: 80,
}
)
@@ -1001,7 +996,6 @@ def test_websocket_new_semconv(self):
"attributes": {
URL_SCHEME: self.scope["scheme"],
SERVER_PORT: self.scope["server"][1],
- SERVER_ADDRESS: self.scope["server"][0],
NETWORK_PROTOCOL_VERSION: self.scope["http_version"],
URL_PATH: self.scope["path"],
CLIENT_ADDRESS: self.scope["client"][0],
@@ -1086,7 +1080,6 @@ def test_websocket_both_semconv(self):
SpanAttributes.HTTP_METHOD: self.scope["method"],
URL_SCHEME: self.scope["scheme"],
SERVER_PORT: self.scope["server"][1],
- SERVER_ADDRESS: self.scope["server"][0],
NETWORK_PROTOCOL_VERSION: self.scope["http_version"],
URL_PATH: self.scope["path"],
CLIENT_ADDRESS: self.scope["client"][0],
@@ -1629,7 +1622,6 @@ def test_request_attributes_new_semconv(self):
attrs,
{
HTTP_REQUEST_METHOD: "GET",
- SERVER_ADDRESS: "127.0.0.1",
URL_PATH: "/",
URL_QUERY: "foo=bar",
SERVER_PORT: 80,
@@ -1665,7 +1657,6 @@ def test_request_attributes_both_semconv(self):
SpanAttributes.NET_PEER_IP: "127.0.0.1",
SpanAttributes.NET_PEER_PORT: 32767,
HTTP_REQUEST_METHOD: "GET",
- SERVER_ADDRESS: "127.0.0.1",
URL_PATH: "/",
URL_QUERY: "foo=bar",
SERVER_PORT: 80,
@@ -1690,7 +1681,7 @@ def test_query_string_new_semconv(self):
_HTTPStabilityMode.HTTP,
)
self.assertEqual(attrs[URL_SCHEME], "http")
- self.assertEqual(attrs[SERVER_ADDRESS], "127.0.0.1")
+ self.assertEqual(attrs[CLIENT_ADDRESS], "127.0.0.1")
self.assertEqual(attrs[URL_PATH], "/")
self.assertEqual(attrs[URL_QUERY], "foo=bar")
@@ -1704,7 +1695,7 @@ def test_query_string_both_semconv(self):
attrs[SpanAttributes.HTTP_URL], "http://127.0.0.1/?foo=bar"
)
self.assertEqual(attrs[URL_SCHEME], "http")
- self.assertEqual(attrs[SERVER_ADDRESS], "127.0.0.1")
+ self.assertEqual(attrs[CLIENT_ADDRESS], "127.0.0.1")
self.assertEqual(attrs[URL_PATH], "/")
self.assertEqual(attrs[URL_QUERY], "foo=bar")
diff --git a/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py b/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py
index f2a18a2770..43db6c3a82 100644
--- a/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py
@@ -202,7 +202,7 @@ async def async_response_hook(span, request, response):
_OpenTelemetrySemanticConventionStability,
_OpenTelemetryStabilitySignalType,
_report_new,
- _set_http_host,
+ _set_http_host_client,
_set_http_method,
_set_http_network_protocol_version,
_set_http_peer_port_client,
@@ -342,7 +342,7 @@ def _apply_request_client_attributes_to_span(
if _report_new(semconv):
if url.host:
# http semconv transition: http.host -> server.address
- _set_http_host(span_attributes, url.host, semconv)
+ _set_http_host_client(span_attributes, url.host, semconv)
# http semconv transition: net.sock.peer.addr -> network.peer.address
span_attributes[NETWORK_PEER_ADDRESS] = url.host
if url.port:
diff --git a/instrumentation/opentelemetry-instrumentation-requests/src/opentelemetry/instrumentation/requests/__init__.py b/instrumentation/opentelemetry-instrumentation-requests/src/opentelemetry/instrumentation/requests/__init__.py
index 3aa1b476f5..db67d378d9 100644
--- a/instrumentation/opentelemetry-instrumentation-requests/src/opentelemetry/instrumentation/requests/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-requests/src/opentelemetry/instrumentation/requests/__init__.py
@@ -92,7 +92,7 @@ def response_hook(span, request_obj, response)
_OpenTelemetryStabilitySignalType,
_report_new,
_report_old,
- _set_http_host,
+ _set_http_host_client,
_set_http_method,
_set_http_net_peer_name_client,
_set_http_network_protocol_version,
@@ -212,14 +212,14 @@ def get_or_create_headers():
metric_labels, parsed_url.scheme, sem_conv_opt_in_mode
)
if parsed_url.hostname:
- _set_http_host(
+ _set_http_host_client(
metric_labels, parsed_url.hostname, sem_conv_opt_in_mode
)
_set_http_net_peer_name_client(
metric_labels, parsed_url.hostname, sem_conv_opt_in_mode
)
if _report_new(sem_conv_opt_in_mode):
- _set_http_host(
+ _set_http_host_client(
span_attributes,
parsed_url.hostname,
sem_conv_opt_in_mode,
diff --git a/instrumentation/opentelemetry-instrumentation-urllib3/src/opentelemetry/instrumentation/urllib3/__init__.py b/instrumentation/opentelemetry-instrumentation-urllib3/src/opentelemetry/instrumentation/urllib3/__init__.py
index 4bcd0816fd..1c83f3f447 100644
--- a/instrumentation/opentelemetry-instrumentation-urllib3/src/opentelemetry/instrumentation/urllib3/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-urllib3/src/opentelemetry/instrumentation/urllib3/__init__.py
@@ -103,7 +103,7 @@ def response_hook(
_OpenTelemetryStabilitySignalType,
_report_new,
_report_old,
- _set_http_host,
+ _set_http_host_client,
_set_http_method,
_set_http_net_peer_name_client,
_set_http_network_protocol_version,
@@ -491,7 +491,9 @@ def _set_metric_attributes(
sem_conv_opt_in_mode: _HTTPStabilityMode = _HTTPStabilityMode.DEFAULT,
) -> None:
- _set_http_host(metric_attributes, instance.host, sem_conv_opt_in_mode)
+ _set_http_host_client(
+ metric_attributes, instance.host, sem_conv_opt_in_mode
+ )
_set_http_scheme(metric_attributes, instance.scheme, sem_conv_opt_in_mode)
_set_http_method(
metric_attributes,
diff --git a/instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/__init__.py b/instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/__init__.py
index 355b1d7458..88704f35ab 100644
--- a/instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/__init__.py
@@ -231,7 +231,7 @@ def response_hook(span: Span, environ: WSGIEnvironment, status: str, response_he
_set_http_net_host,
_set_http_net_host_port,
_set_http_net_peer_name_server,
- _set_http_peer_ip,
+ _set_http_peer_ip_server,
_set_http_peer_port_server,
_set_http_scheme,
_set_http_target,
@@ -360,7 +360,7 @@ def collect_request_attributes(
remote_addr = environ.get("REMOTE_ADDR")
if remote_addr:
- _set_http_peer_ip(result, remote_addr, sem_conv_opt_in_mode)
+ _set_http_peer_ip_server(result, remote_addr, sem_conv_opt_in_mode)
peer_port = environ.get("REMOTE_PORT")
if peer_port:
diff --git a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/_semconv.py b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/_semconv.py
index 33668333ce..c4e720fd04 100644
--- a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/_semconv.py
+++ b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/_semconv.py
@@ -252,16 +252,32 @@ def _set_http_scheme(result, scheme, sem_conv_opt_in_mode):
set_string_attribute(result, URL_SCHEME, scheme)
-def _set_http_host(result, host, sem_conv_opt_in_mode):
+def _set_http_flavor_version(result, version, sem_conv_opt_in_mode):
if _report_old(sem_conv_opt_in_mode):
- set_string_attribute(result, SpanAttributes.HTTP_HOST, host)
+ set_string_attribute(result, SpanAttributes.HTTP_FLAVOR, version)
if _report_new(sem_conv_opt_in_mode):
- set_string_attribute(result, SERVER_ADDRESS, host)
+ set_string_attribute(result, NETWORK_PROTOCOL_VERSION, version)
+
+
+def _set_http_user_agent(result, user_agent, sem_conv_opt_in_mode):
+ if _report_old(sem_conv_opt_in_mode):
+ set_string_attribute(
+ result, SpanAttributes.HTTP_USER_AGENT, user_agent
+ )
+ if _report_new(sem_conv_opt_in_mode):
+ set_string_attribute(result, USER_AGENT_ORIGINAL, user_agent)
# Client
+def _set_http_host_client(result, host, sem_conv_opt_in_mode):
+ if _report_old(sem_conv_opt_in_mode):
+ set_string_attribute(result, SpanAttributes.HTTP_HOST, host)
+ if _report_new(sem_conv_opt_in_mode):
+ set_string_attribute(result, SERVER_ADDRESS, host)
+
+
def _set_http_net_peer_name_client(result, peer_name, sem_conv_opt_in_mode):
if _report_old(sem_conv_opt_in_mode):
set_string_attribute(result, SpanAttributes.NET_PEER_NAME, peer_name)
@@ -310,27 +326,32 @@ def _set_http_target(result, target, path, query, sem_conv_opt_in_mode):
set_string_attribute(result, URL_QUERY, query)
-def _set_http_peer_ip(result, ip, sem_conv_opt_in_mode):
+def _set_http_host_server(result, host, sem_conv_opt_in_mode):
if _report_old(sem_conv_opt_in_mode):
- set_string_attribute(result, SpanAttributes.NET_PEER_IP, ip)
+ set_string_attribute(result, SpanAttributes.HTTP_HOST, host)
if _report_new(sem_conv_opt_in_mode):
- set_string_attribute(result, CLIENT_ADDRESS, ip)
+ set_string_attribute(result, CLIENT_ADDRESS, host)
-def _set_http_peer_port_server(result, port, sem_conv_opt_in_mode):
+# net.peer.ip -> net.sock.peer.addr
+# https://github.com/open-telemetry/semantic-conventions/blob/40db676ca0e735aa84f242b5a0fb14e49438b69b/schemas/1.15.0#L18
+# net.sock.peer.addr -> client.socket.address for server spans (TODO) AND client.address if missing
+# https://github.com/open-telemetry/semantic-conventions/blob/v1.21.0/CHANGELOG.md#v1210-2023-07-13
+# https://github.com/open-telemetry/semantic-conventions/blob/main/docs/non-normative/http-migration.md#common-attributes-across-http-client-and-server-spans
+def _set_http_peer_ip_server(result, ip, sem_conv_opt_in_mode):
if _report_old(sem_conv_opt_in_mode):
- set_int_attribute(result, SpanAttributes.NET_PEER_PORT, port)
+ set_string_attribute(result, SpanAttributes.NET_PEER_IP, ip)
if _report_new(sem_conv_opt_in_mode):
- set_int_attribute(result, CLIENT_PORT, port)
+ # Only populate if not already populated
+ if not result.get(CLIENT_ADDRESS):
+ set_string_attribute(result, CLIENT_ADDRESS, ip)
-def _set_http_user_agent(result, user_agent, sem_conv_opt_in_mode):
+def _set_http_peer_port_server(result, port, sem_conv_opt_in_mode):
if _report_old(sem_conv_opt_in_mode):
- set_string_attribute(
- result, SpanAttributes.HTTP_USER_AGENT, user_agent
- )
+ set_int_attribute(result, SpanAttributes.NET_PEER_PORT, port)
if _report_new(sem_conv_opt_in_mode):
- set_string_attribute(result, USER_AGENT_ORIGINAL, user_agent)
+ set_int_attribute(result, CLIENT_PORT, port)
def _set_http_net_peer_name_server(result, name, sem_conv_opt_in_mode):
@@ -340,13 +361,6 @@ def _set_http_net_peer_name_server(result, name, sem_conv_opt_in_mode):
set_string_attribute(result, CLIENT_ADDRESS, name)
-def _set_http_flavor_version(result, version, sem_conv_opt_in_mode):
- if _report_old(sem_conv_opt_in_mode):
- set_string_attribute(result, SpanAttributes.HTTP_FLAVOR, version)
- if _report_new(sem_conv_opt_in_mode):
- set_string_attribute(result, NETWORK_PROTOCOL_VERSION, version)
-
-
def _set_status(
span,
metrics_attributes: dict,
From 19f8e775ce76841d097b11ec42c886e5ed46ea06 Mon Sep 17 00:00:00 2001
From: Riccardo Magliocchetti
Date: Mon, 26 Aug 2024 18:38:07 +0200
Subject: [PATCH 08/26] Prepare asgi tests to support newer asgiref version
(#2778)
---
.../tests/test_asgi_custom_headers.py | 98 ++++---
.../tests/test_asgi_middleware.py | 260 +++++++++---------
2 files changed, 195 insertions(+), 163 deletions(-)
diff --git a/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_custom_headers.py b/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_custom_headers.py
index 5394d62ff0..f6cb05fbda 100644
--- a/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_custom_headers.py
+++ b/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_custom_headers.py
@@ -1,7 +1,21 @@
+# Copyright The OpenTelemetry Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
import os
import opentelemetry.instrumentation.asgi as otel_asgi
-from opentelemetry.test.asgitestutil import AsgiTestBase
+from opentelemetry.test.asgitestutil import AsyncAsgiTestBase
from opentelemetry.test.test_base import TestBase
from opentelemetry.trace import SpanKind
from opentelemetry.util.http import (
@@ -90,7 +104,7 @@ async def websocket_app_with_custom_headers(scope, receive, send):
break
-class TestCustomHeaders(AsgiTestBase, TestBase):
+class TestCustomHeaders(AsyncAsgiTestBase):
constructor_params = {}
__test__ = False
@@ -108,7 +122,7 @@ def setUp(self):
**self.constructor_params,
)
- def test_http_custom_request_headers_in_span_attributes(self):
+ async def test_http_custom_request_headers_in_span_attributes(self):
self.scope["headers"].extend(
[
(b"custom-test-header-1", b"test-header-value-1"),
@@ -119,8 +133,8 @@ def test_http_custom_request_headers_in_span_attributes(self):
]
)
self.seed_app(self.app)
- self.send_default_request()
- self.get_all_output()
+ await self.send_default_request()
+ await self.get_all_output()
span_list = self.exporter.get_finished_spans()
expected = {
"http.request.header.custom_test_header_1": (
@@ -139,7 +153,7 @@ def test_http_custom_request_headers_in_span_attributes(self):
if span.kind == SpanKind.SERVER:
self.assertSpanHasAttributes(span, expected)
- def test_http_repeat_request_headers_in_span_attributes(self):
+ async def test_http_repeat_request_headers_in_span_attributes(self):
self.scope["headers"].extend(
[
(b"custom-test-header-1", b"test-header-value-1"),
@@ -147,8 +161,8 @@ def test_http_repeat_request_headers_in_span_attributes(self):
]
)
self.seed_app(self.app)
- self.send_default_request()
- self.get_all_output()
+ await self.send_default_request()
+ await self.get_all_output()
span_list = self.exporter.get_finished_spans()
expected = {
"http.request.header.custom_test_header_1": (
@@ -159,15 +173,15 @@ def test_http_repeat_request_headers_in_span_attributes(self):
span = next(span for span in span_list if span.kind == SpanKind.SERVER)
self.assertSpanHasAttributes(span, expected)
- def test_http_custom_request_headers_not_in_span_attributes(self):
+ async def test_http_custom_request_headers_not_in_span_attributes(self):
self.scope["headers"].extend(
[
(b"custom-test-header-1", b"test-header-value-1"),
]
)
self.seed_app(self.app)
- self.send_default_request()
- self.get_all_output()
+ await self.send_default_request()
+ await self.get_all_output()
span_list = self.exporter.get_finished_spans()
expected = {
"http.request.header.custom_test_header_1": (
@@ -185,15 +199,15 @@ def test_http_custom_request_headers_not_in_span_attributes(self):
for key, _ in not_expected.items():
self.assertNotIn(key, span.attributes)
- def test_http_custom_response_headers_in_span_attributes(self):
+ async def test_http_custom_response_headers_in_span_attributes(self):
self.app = otel_asgi.OpenTelemetryMiddleware(
http_app_with_custom_headers,
tracer_provider=self.tracer_provider,
**self.constructor_params,
)
self.seed_app(self.app)
- self.send_default_request()
- self.get_all_output()
+ await self.send_default_request()
+ await self.get_all_output()
span_list = self.exporter.get_finished_spans()
expected = {
"http.response.header.custom_test_header_1": (
@@ -214,15 +228,15 @@ def test_http_custom_response_headers_in_span_attributes(self):
if span.kind == SpanKind.SERVER:
self.assertSpanHasAttributes(span, expected)
- def test_http_repeat_response_headers_in_span_attributes(self):
+ async def test_http_repeat_response_headers_in_span_attributes(self):
self.app = otel_asgi.OpenTelemetryMiddleware(
http_app_with_repeat_headers,
tracer_provider=self.tracer_provider,
**self.constructor_params,
)
self.seed_app(self.app)
- self.send_default_request()
- self.get_all_output()
+ await self.send_default_request()
+ await self.get_all_output()
span_list = self.exporter.get_finished_spans()
expected = {
"http.response.header.custom_test_header_1": (
@@ -233,15 +247,15 @@ def test_http_repeat_response_headers_in_span_attributes(self):
span = next(span for span in span_list if span.kind == SpanKind.SERVER)
self.assertSpanHasAttributes(span, expected)
- def test_http_custom_response_headers_not_in_span_attributes(self):
+ async def test_http_custom_response_headers_not_in_span_attributes(self):
self.app = otel_asgi.OpenTelemetryMiddleware(
http_app_with_custom_headers,
tracer_provider=self.tracer_provider,
**self.constructor_params,
)
self.seed_app(self.app)
- self.send_default_request()
- self.get_all_output()
+ await self.send_default_request()
+ await self.get_all_output()
span_list = self.exporter.get_finished_spans()
not_expected = {
"http.response.header.custom_test_header_3": (
@@ -253,7 +267,7 @@ def test_http_custom_response_headers_not_in_span_attributes(self):
for key, _ in not_expected.items():
self.assertNotIn(key, span.attributes)
- def test_websocket_custom_request_headers_in_span_attributes(self):
+ async def test_websocket_custom_request_headers_in_span_attributes(self):
self.scope = {
"type": "websocket",
"http_version": "1.1",
@@ -271,11 +285,11 @@ def test_websocket_custom_request_headers_in_span_attributes(self):
"server": ("127.0.0.1", 80),
}
self.seed_app(self.app)
- self.send_input({"type": "websocket.connect"})
- self.send_input({"type": "websocket.receive", "text": "ping"})
- self.send_input({"type": "websocket.disconnect"})
+ await self.send_input({"type": "websocket.connect"})
+ await self.send_input({"type": "websocket.receive", "text": "ping"})
+ await self.send_input({"type": "websocket.disconnect"})
- self.get_all_output()
+ await self.get_all_output()
span_list = self.exporter.get_finished_spans()
expected = {
"http.request.header.custom_test_header_1": (
@@ -294,7 +308,9 @@ def test_websocket_custom_request_headers_in_span_attributes(self):
if span.kind == SpanKind.SERVER:
self.assertSpanHasAttributes(span, expected)
- def test_websocket_custom_request_headers_not_in_span_attributes(self):
+ async def test_websocket_custom_request_headers_not_in_span_attributes(
+ self,
+ ):
self.scope = {
"type": "websocket",
"http_version": "1.1",
@@ -309,11 +325,11 @@ def test_websocket_custom_request_headers_not_in_span_attributes(self):
"server": ("127.0.0.1", 80),
}
self.seed_app(self.app)
- self.send_input({"type": "websocket.connect"})
- self.send_input({"type": "websocket.receive", "text": "ping"})
- self.send_input({"type": "websocket.disconnect"})
+ await self.send_input({"type": "websocket.connect"})
+ await self.send_input({"type": "websocket.receive", "text": "ping"})
+ await self.send_input({"type": "websocket.disconnect"})
- self.get_all_output()
+ await self.get_all_output()
span_list = self.exporter.get_finished_spans()
not_expected = {
"http.request.header.custom_test_header_3": (
@@ -325,7 +341,7 @@ def test_websocket_custom_request_headers_not_in_span_attributes(self):
for key, _ in not_expected.items():
self.assertNotIn(key, span.attributes)
- def test_websocket_custom_response_headers_in_span_attributes(self):
+ async def test_websocket_custom_response_headers_in_span_attributes(self):
self.scope = {
"type": "websocket",
"http_version": "1.1",
@@ -342,10 +358,10 @@ def test_websocket_custom_response_headers_in_span_attributes(self):
**self.constructor_params,
)
self.seed_app(self.app)
- self.send_input({"type": "websocket.connect"})
- self.send_input({"type": "websocket.receive", "text": "ping"})
- self.send_input({"type": "websocket.disconnect"})
- self.get_all_output()
+ await self.send_input({"type": "websocket.connect"})
+ await self.send_input({"type": "websocket.receive", "text": "ping"})
+ await self.send_input({"type": "websocket.disconnect"})
+ await self.get_all_output()
span_list = self.exporter.get_finished_spans()
expected = {
"http.response.header.custom_test_header_1": (
@@ -366,7 +382,9 @@ def test_websocket_custom_response_headers_in_span_attributes(self):
if span.kind == SpanKind.SERVER:
self.assertSpanHasAttributes(span, expected)
- def test_websocket_custom_response_headers_not_in_span_attributes(self):
+ async def test_websocket_custom_response_headers_not_in_span_attributes(
+ self,
+ ):
self.scope = {
"type": "websocket",
"http_version": "1.1",
@@ -383,10 +401,10 @@ def test_websocket_custom_response_headers_not_in_span_attributes(self):
**self.constructor_params,
)
self.seed_app(self.app)
- self.send_input({"type": "websocket.connect"})
- self.send_input({"type": "websocket.receive", "text": "ping"})
- self.send_input({"type": "websocket.disconnect"})
- self.get_all_output()
+ await self.send_input({"type": "websocket.connect"})
+ await self.send_input({"type": "websocket.receive", "text": "ping"})
+ await self.send_input({"type": "websocket.disconnect"})
+ await self.get_all_output()
span_list = self.exporter.get_finished_spans()
not_expected = {
"http.response.header.custom_test_header_3": (
diff --git a/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py b/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py
index d89f4a54e0..a21dd626c8 100644
--- a/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py
+++ b/instrumentation/opentelemetry-instrumentation-asgi/tests/test_asgi_middleware.py
@@ -14,7 +14,6 @@
# pylint: disable=too-many-lines
-import asyncio
import sys
import time
import unittest
@@ -64,7 +63,7 @@
)
from opentelemetry.semconv.trace import SpanAttributes
from opentelemetry.test.asgitestutil import (
- AsgiTestBase,
+ AsyncAsgiTestBase,
setup_testing_defaults,
)
from opentelemetry.test.test_base import TestBase
@@ -275,7 +274,7 @@ async def error_asgi(scope, receive, send):
# pylint: disable=too-many-public-methods
-class TestAsgiApplication(AsgiTestBase):
+class TestAsgiApplication(AsyncAsgiTestBase):
def setUp(self):
super().setUp()
@@ -477,31 +476,31 @@ def validate_outputs(
"opentelemetry.instrumentation.asgi",
)
- def test_basic_asgi_call(self):
+ async def test_basic_asgi_call(self):
"""Test that spans are emitted as expected."""
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(outputs)
- def test_basic_asgi_call_new_semconv(self):
+ async def test_basic_asgi_call_new_semconv(self):
"""Test that spans are emitted as expected."""
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(outputs, old_sem_conv=False, new_sem_conv=True)
- def test_basic_asgi_call_both_semconv(self):
+ async def test_basic_asgi_call_both_semconv(self):
"""Test that spans are emitted as expected."""
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(outputs, old_sem_conv=True, new_sem_conv=True)
- def test_asgi_not_recording(self):
+ async def test_asgi_not_recording(self):
mock_tracer = mock.Mock()
mock_span = mock.Mock()
mock_span.is_recording.return_value = False
@@ -514,21 +513,21 @@ def test_asgi_not_recording(self):
tracer.return_value = mock_tracer
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
self.assertFalse(mock_span.is_recording())
self.assertTrue(mock_span.is_recording.called)
self.assertFalse(mock_span.set_attribute.called)
self.assertFalse(mock_span.set_status.called)
- def test_asgi_exc_info(self):
+ async def test_asgi_exc_info(self):
"""Test that exception information is emitted as expected."""
app = otel_asgi.OpenTelemetryMiddleware(error_asgi)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(outputs, error=ValueError)
- def test_long_response(self):
+ async def test_long_response(self):
"""Test that the server span is ended on the final response body message.
If the server span is ended early then this test will fail due
@@ -536,8 +535,8 @@ def test_long_response(self):
"""
app = otel_asgi.OpenTelemetryMiddleware(long_response_asgi)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
def add_more_body_spans(expected: list):
more_body_span = {
@@ -551,12 +550,12 @@ def add_more_body_spans(expected: list):
self.validate_outputs(outputs, modifiers=[add_more_body_spans])
- def test_background_execution(self):
+ async def test_background_execution(self):
"""Test that the server span is ended BEFORE the background task is finished."""
app = otel_asgi.OpenTelemetryMiddleware(background_execution_asgi)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(outputs)
span_list = self.memory_exporter.get_finished_spans()
server_span = span_list[-1]
@@ -567,15 +566,15 @@ def test_background_execution(self):
_SIMULATED_BACKGROUND_TASK_EXECUTION_TIME_S * 10**9,
)
- def test_trailers(self):
+ async def test_trailers(self):
"""Test that trailers are emitted as expected and that the server span is ended
BEFORE the background task is finished."""
app = otel_asgi.OpenTelemetryMiddleware(
background_execution_trailers_asgi
)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
def add_body_and_trailer_span(expected: list):
body_span = {
@@ -602,7 +601,7 @@ def add_body_and_trailer_span(expected: list):
_SIMULATED_BACKGROUND_TASK_EXECUTION_TIME_S * 10**9,
)
- def test_override_span_name(self):
+ async def test_override_span_name(self):
"""Test that default span_names can be overwritten by our callback function."""
span_name = "Dymaxion"
@@ -623,11 +622,11 @@ def update_expected_span_name(expected):
simple_asgi, default_span_details=get_predefined_span_details
)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(outputs, modifiers=[update_expected_span_name])
- def test_custom_tracer_provider_otel_asgi(self):
+ async def test_custom_tracer_provider_otel_asgi(self):
resource = resources.Resource.create({"service-test-key": "value"})
result = TestBase.create_tracer_provider(resource=resource)
tracer_provider, exporter = result
@@ -636,28 +635,28 @@ def test_custom_tracer_provider_otel_asgi(self):
simple_asgi, tracer_provider=tracer_provider
)
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
span_list = exporter.get_finished_spans()
for span in span_list:
self.assertEqual(
span.resource.attributes["service-test-key"], "value"
)
- def test_no_op_tracer_provider_otel_asgi(self):
+ async def test_no_op_tracer_provider_otel_asgi(self):
app = otel_asgi.OpenTelemetryMiddleware(
simple_asgi, tracer_provider=trace_api.NoOpTracerProvider()
)
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
- response_start, response_body, *_ = self.get_all_output()
+ response_start, response_body, *_ = await self.get_all_output()
self.assertEqual(response_body["body"], b"*")
self.assertEqual(response_start["status"], 200)
span_list = self.memory_exporter.get_finished_spans()
self.assertEqual(len(span_list), 0)
- def test_behavior_with_scope_server_as_none(self):
+ async def test_behavior_with_scope_server_as_none(self):
"""Test that middleware is ok when server is none in scope."""
def update_expected_server(expected):
@@ -673,11 +672,11 @@ def update_expected_server(expected):
self.scope["server"] = None
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(outputs, modifiers=[update_expected_server])
- def test_behavior_with_scope_server_as_none_new_semconv(self):
+ async def test_behavior_with_scope_server_as_none_new_semconv(self):
"""Test that middleware is ok when server is none in scope."""
def update_expected_server(expected):
@@ -692,8 +691,8 @@ def update_expected_server(expected):
self.scope["server"] = None
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(
outputs,
modifiers=[update_expected_server],
@@ -701,7 +700,7 @@ def update_expected_server(expected):
new_sem_conv=True,
)
- def test_behavior_with_scope_server_as_none_both_semconv(self):
+ async def test_behavior_with_scope_server_as_none_both_semconv(self):
"""Test that middleware is ok when server is none in scope."""
def update_expected_server(expected):
@@ -719,8 +718,8 @@ def update_expected_server(expected):
self.scope["server"] = None
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(
outputs,
modifiers=[update_expected_server],
@@ -728,7 +727,7 @@ def update_expected_server(expected):
new_sem_conv=True,
)
- def test_host_header(self):
+ async def test_host_header(self):
"""Test that host header is converted to http.server_name."""
hostname = b"server_name_1"
@@ -741,11 +740,11 @@ def update_expected_server(expected):
self.scope["headers"].append([b"host", hostname])
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(outputs, modifiers=[update_expected_server])
- def test_host_header_both_semconv(self):
+ async def test_host_header_both_semconv(self):
"""Test that host header is converted to http.server_name."""
hostname = b"server_name_1"
@@ -758,8 +757,8 @@ def update_expected_server(expected):
self.scope["headers"].append([b"host", hostname])
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(
outputs,
modifiers=[update_expected_server],
@@ -767,7 +766,7 @@ def update_expected_server(expected):
new_sem_conv=True,
)
- def test_user_agent(self):
+ async def test_user_agent(self):
"""Test that host header is converted to http.server_name."""
user_agent = b"test-agent"
@@ -780,11 +779,11 @@ def update_expected_user_agent(expected):
self.scope["headers"].append([b"user-agent", user_agent])
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(outputs, modifiers=[update_expected_user_agent])
- def test_user_agent_new_semconv(self):
+ async def test_user_agent_new_semconv(self):
"""Test that host header is converted to http.server_name."""
user_agent = b"test-agent"
@@ -797,8 +796,8 @@ def update_expected_user_agent(expected):
self.scope["headers"].append([b"user-agent", user_agent])
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(
outputs,
modifiers=[update_expected_user_agent],
@@ -806,7 +805,7 @@ def update_expected_user_agent(expected):
new_sem_conv=True,
)
- def test_user_agent_both_semconv(self):
+ async def test_user_agent_both_semconv(self):
"""Test that host header is converted to http.server_name."""
user_agent = b"test-agent"
@@ -822,8 +821,8 @@ def update_expected_user_agent(expected):
self.scope["headers"].append([b"user-agent", user_agent])
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(
outputs,
modifiers=[update_expected_user_agent],
@@ -831,7 +830,7 @@ def update_expected_user_agent(expected):
new_sem_conv=True,
)
- def test_traceresponse_header(self):
+ async def test_traceresponse_header(self):
"""Test a traceresponse header is sent when a global propagator is set."""
orig = get_global_response_propagator()
@@ -839,12 +838,12 @@ def test_traceresponse_header(self):
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
+ response_start, response_body, *_ = await self.get_all_output()
span = self.memory_exporter.get_finished_spans()[-1]
self.assertEqual(trace_api.SpanKind.SERVER, span.kind)
- response_start, response_body, *_ = self.get_all_output()
self.assertEqual(response_body["body"], b"*")
self.assertEqual(response_start["status"], 200)
@@ -864,7 +863,7 @@ def test_traceresponse_header(self):
set_global_response_propagator(orig)
- def test_websocket(self):
+ async def test_websocket(self):
self.scope = {
"method": "GET",
"type": "websocket",
@@ -878,10 +877,10 @@ def test_websocket(self):
}
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_input({"type": "websocket.connect"})
- self.send_input({"type": "websocket.receive", "text": "ping"})
- self.send_input({"type": "websocket.disconnect"})
- self.get_all_output()
+ await self.send_input({"type": "websocket.connect"})
+ await self.send_input({"type": "websocket.receive", "text": "ping"})
+ await self.send_input({"type": "websocket.disconnect"})
+ await self.get_all_output()
span_list = self.memory_exporter.get_finished_spans()
self.assertEqual(len(span_list), 6)
expected = [
@@ -938,7 +937,7 @@ def test_websocket(self):
self.assertEqual(span.kind, expected["kind"])
self.assertDictEqual(dict(span.attributes), expected["attributes"])
- def test_websocket_new_semconv(self):
+ async def test_websocket_new_semconv(self):
self.scope = {
"method": "GET",
"type": "websocket",
@@ -952,10 +951,10 @@ def test_websocket_new_semconv(self):
}
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_input({"type": "websocket.connect"})
- self.send_input({"type": "websocket.receive", "text": "ping"})
- self.send_input({"type": "websocket.disconnect"})
- self.get_all_output()
+ await self.send_input({"type": "websocket.connect"})
+ await self.send_input({"type": "websocket.receive", "text": "ping"})
+ await self.send_input({"type": "websocket.disconnect"})
+ await self.get_all_output()
span_list = self.memory_exporter.get_finished_spans()
self.assertEqual(len(span_list), 6)
expected = [
@@ -1010,7 +1009,7 @@ def test_websocket_new_semconv(self):
self.assertEqual(span.kind, expected["kind"])
self.assertDictEqual(dict(span.attributes), expected["attributes"])
- def test_websocket_both_semconv(self):
+ async def test_websocket_both_semconv(self):
self.scope = {
"method": "GET",
"type": "websocket",
@@ -1024,10 +1023,10 @@ def test_websocket_both_semconv(self):
}
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_input({"type": "websocket.connect"})
- self.send_input({"type": "websocket.receive", "text": "ping"})
- self.send_input({"type": "websocket.disconnect"})
- self.get_all_output()
+ await self.send_input({"type": "websocket.connect"})
+ await self.send_input({"type": "websocket.receive", "text": "ping"})
+ await self.send_input({"type": "websocket.disconnect"})
+ await self.get_all_output()
span_list = self.memory_exporter.get_finished_spans()
self.assertEqual(len(span_list), 6)
expected = [
@@ -1094,7 +1093,7 @@ def test_websocket_both_semconv(self):
self.assertEqual(span.kind, expected["kind"])
self.assertDictEqual(dict(span.attributes), expected["attributes"])
- def test_websocket_traceresponse_header(self):
+ async def test_websocket_traceresponse_header(self):
"""Test a traceresponse header is set for websocket messages"""
orig = get_global_response_propagator()
@@ -1112,10 +1111,10 @@ def test_websocket_traceresponse_header(self):
}
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_input({"type": "websocket.connect"})
- self.send_input({"type": "websocket.receive", "text": "ping"})
- self.send_input({"type": "websocket.disconnect"})
- _, socket_send, *_ = self.get_all_output()
+ await self.send_input({"type": "websocket.connect"})
+ await self.send_input({"type": "websocket.receive", "text": "ping"})
+ await self.send_input({"type": "websocket.disconnect"})
+ _, socket_send, *_ = await self.get_all_output()
span = self.memory_exporter.get_finished_spans()[-1]
self.assertEqual(trace_api.SpanKind.SERVER, span.kind)
@@ -1134,15 +1133,15 @@ def test_websocket_traceresponse_header(self):
set_global_response_propagator(orig)
- def test_lifespan(self):
+ async def test_lifespan(self):
self.scope["type"] = "lifespan"
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
span_list = self.memory_exporter.get_finished_spans()
self.assertEqual(len(span_list), 0)
- def test_hooks(self):
+ async def test_hooks(self):
def server_request_hook(span, scope):
span.update_name("name from server hook")
@@ -1169,20 +1168,23 @@ def update_expected_hook_results(expected):
client_response_hook=client_response_hook,
)
self.seed_app(app)
- self.send_default_request()
- outputs = self.get_all_output()
+ await self.send_default_request()
+ outputs = await self.get_all_output()
self.validate_outputs(
outputs, modifiers=[update_expected_hook_results]
)
- def test_asgi_metrics(self):
+ async def test_asgi_metrics(self):
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
+ await self.get_all_output()
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
+ await self.get_all_output()
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
+ await self.get_all_output()
metrics_list = self.memory_metrics_reader.get_metrics_data()
number_data_point_seen = False
histogram_data_point_seen = False
@@ -1211,14 +1213,17 @@ def test_asgi_metrics(self):
)
self.assertTrue(number_data_point_seen and histogram_data_point_seen)
- def test_asgi_metrics_new_semconv(self):
+ async def test_asgi_metrics_new_semconv(self):
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
+ await self.get_all_output()
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
+ await self.get_all_output()
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
+ await self.get_all_output()
metrics_list = self.memory_metrics_reader.get_metrics_data()
number_data_point_seen = False
histogram_data_point_seen = False
@@ -1247,14 +1252,17 @@ def test_asgi_metrics_new_semconv(self):
)
self.assertTrue(number_data_point_seen and histogram_data_point_seen)
- def test_asgi_metrics_both_semconv(self):
+ async def test_asgi_metrics_both_semconv(self):
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
+ await self.get_all_output()
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
+ await self.get_all_output()
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
+ await self.get_all_output()
metrics_list = self.memory_metrics_reader.get_metrics_data()
number_data_point_seen = False
histogram_data_point_seen = False
@@ -1283,12 +1291,13 @@ def test_asgi_metrics_both_semconv(self):
)
self.assertTrue(number_data_point_seen and histogram_data_point_seen)
- def test_basic_metric_success(self):
+ async def test_basic_metric_success(self):
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
start = default_timer()
- self.send_default_request()
+ await self.send_default_request()
duration = max(round((default_timer() - start) * 1000), 0)
+ await self.get_all_output()
expected_duration_attributes = {
"http.method": "GET",
"http.host": "127.0.0.1",
@@ -1330,7 +1339,7 @@ def test_basic_metric_success(self):
)
self.assertEqual(point.value, 0)
- def test_basic_metric_success_nonrecording_span(self):
+ async def test_basic_metric_success_nonrecording_span(self):
mock_tracer = mock.Mock()
mock_span = mock.Mock()
mock_span.is_recording.return_value = False
@@ -1344,8 +1353,9 @@ def test_basic_metric_success_nonrecording_span(self):
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
start = default_timer()
- self.send_default_request()
+ await self.send_default_request()
duration = max(round((default_timer() - start) * 1000), 0)
+ await self.get_all_output()
expected_duration_attributes = {
"http.method": "GET",
"http.host": "127.0.0.1",
@@ -1374,7 +1384,7 @@ def test_basic_metric_success_nonrecording_span(self):
self.assertEqual(point.count, 1)
if metric.name == "http.server.duration":
self.assertAlmostEqual(
- duration, point.sum, delta=5
+ duration, point.sum, delta=15
)
elif (
metric.name == "http.server.response.size"
@@ -1389,12 +1399,13 @@ def test_basic_metric_success_nonrecording_span(self):
)
self.assertEqual(point.value, 0)
- def test_basic_metric_success_new_semconv(self):
+ async def test_basic_metric_success_new_semconv(self):
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
start = default_timer()
- self.send_default_request()
+ await self.send_default_request()
duration_s = max(default_timer() - start, 0)
+ await self.get_all_output()
expected_duration_attributes = {
"http.request.method": "GET",
"url.scheme": "http",
@@ -1436,13 +1447,14 @@ def test_basic_metric_success_new_semconv(self):
)
self.assertEqual(point.value, 0)
- def test_basic_metric_success_both_semconv(self):
+ async def test_basic_metric_success_both_semconv(self):
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
start = default_timer()
- self.send_default_request()
+ await self.send_default_request()
duration = max(round((default_timer() - start) * 1000), 0)
duration_s = max(default_timer() - start, 0)
+ await self.get_all_output()
expected_duration_attributes_old = {
"http.method": "GET",
"http.host": "127.0.0.1",
@@ -1524,7 +1536,7 @@ def test_basic_metric_success_both_semconv(self):
)
self.assertEqual(point.value, 0)
- def test_metric_target_attribute(self):
+ async def test_metric_target_attribute(self):
expected_target = "/api/user/{id}"
class TestRoute:
@@ -1540,7 +1552,8 @@ async def target_asgi(scope, receive, send):
app = otel_asgi.OpenTelemetryMiddleware(target_asgi)
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
+ await self.get_all_output()
metrics_list = self.memory_metrics_reader.get_metrics_data()
assertions = 0
for resource_metric in metrics_list.resource_metrics:
@@ -1557,7 +1570,7 @@ async def target_asgi(scope, receive, send):
assertions += 1
self.assertEqual(assertions, 3)
- def test_no_metric_for_websockets(self):
+ async def test_no_metric_for_websockets(self):
self.scope = {
"type": "websocket",
"http_version": "1.1",
@@ -1570,10 +1583,10 @@ def test_no_metric_for_websockets(self):
}
app = otel_asgi.OpenTelemetryMiddleware(simple_asgi)
self.seed_app(app)
- self.send_input({"type": "websocket.connect"})
- self.send_input({"type": "websocket.receive", "text": "ping"})
- self.send_input({"type": "websocket.disconnect"})
- self.get_all_output()
+ await self.send_input({"type": "websocket.connect"})
+ await self.send_input({"type": "websocket.receive", "text": "ping"})
+ await self.send_input({"type": "websocket.disconnect"})
+ await self.get_all_output()
self.assertIsNone(self.memory_metrics_reader.get_metrics_data())
@@ -1790,8 +1803,10 @@ def test_collect_target_attribute_fastapi_starlette_invalid(self):
)
-class TestWrappedApplication(AsgiTestBase):
- def test_mark_span_internal_in_presence_of_span_from_other_framework(self):
+class TestWrappedApplication(AsyncAsgiTestBase):
+ async def test_mark_span_internal_in_presence_of_span_from_other_framework(
+ self,
+ ):
tracer_provider, exporter = TestBase.create_tracer_provider()
tracer = tracer_provider.get_tracer(__name__)
app = otel_asgi.OpenTelemetryMiddleware(
@@ -1806,7 +1821,8 @@ async def wrapped_app(scope, receive, send):
await app(scope, receive, send)
self.seed_app(wrapped_app)
- self.send_default_request()
+ await self.send_default_request()
+ await self.get_all_output()
span_list = exporter.get_finished_spans()
self.assertEqual(SpanKind.INTERNAL, span_list[0].kind)
@@ -1823,11 +1839,11 @@ async def wrapped_app(scope, receive, send):
)
-class TestAsgiApplicationRaisingError(AsgiTestBase):
+class TestAsgiApplicationRaisingError(AsyncAsgiTestBase):
def tearDown(self):
pass
- def test_asgi_issue_1883(self):
+ async def test_asgi_value_error_exception(self):
"""
Test that exception UnboundLocalError local variable 'start' referenced before assignment is not raised
See https://github.com/open-telemetry/opentelemetry-python-contrib/issues/1883
@@ -1838,11 +1854,9 @@ async def bad_app(_scope, _receive, _send):
app = otel_asgi.OpenTelemetryMiddleware(bad_app)
self.seed_app(app)
- self.send_default_request()
+ await self.send_default_request()
try:
- asyncio.get_event_loop().run_until_complete(
- self.communicator.stop()
- )
+ await self.communicator.wait()
except ValueError as exc_info:
self.assertEqual(exc_info.args[0], "whatever")
except Exception as exc_info: # pylint: disable=W0703
From 830397ecbf332e469ff5adc99ba6dea7a79359c5 Mon Sep 17 00:00:00 2001
From: Riccardo Magliocchetti
Date: Mon, 26 Aug 2024 18:54:57 +0200
Subject: [PATCH 09/26] httpx: fix handling of async hooks (#2823)
---
CHANGELOG.md | 12 +++--
.../instrumentation/httpx/__init__.py | 13 +++--
.../tests/test_httpx_integration.py | 49 ++++++++++++++++++-
3 files changed, 63 insertions(+), 11 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index c5ce56423a..3dd53582ec 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -7,23 +7,25 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## Unreleased
-## Added
+### Added
- `opentelemetry-instrumentation-kafka-python` Instrument temporary fork, kafka-python-ng
inside kafka-python's instrumentation
([#2537](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2537))
-## Breaking changes
+### Breaking changes
- `opentelemetry-bootstrap` Remove `opentelemetry-instrumentation-aws-lambda` from the defaults instrumentations
([#2786](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2786))
-## Fixed
+### Fixed
+- `opentelemetry-instrumentation-httpx` fix handling of async hooks
+ ([#2823](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2823))
- `opentelemetry-instrumentation-system-metrics` fix `process.runtime.cpu.utilization` values to be shown in range of 0 to 1
- ([2812](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2812))
+ ([#2812](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2812))
- `opentelemetry-instrumentation-fastapi` fix `fastapi` auto-instrumentation by removing `fastapi-slim` support, `fastapi-slim` itself is discontinued from maintainers
- ([2783](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2783))
+ ([#2783](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2783))
- `opentelemetry-instrumentation-aws-lambda` Avoid exception when a handler is not present.
([#2750](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2750))
- `opentelemetry-instrumentation-django` Fix regression - `http.target` re-added back to old semconv duration metrics
diff --git a/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py b/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py
index 43db6c3a82..15ee59a183 100644
--- a/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py
@@ -192,6 +192,7 @@ async def async_response_hook(span, request, response):
"""
import logging
import typing
+from asyncio import iscoroutinefunction
from types import TracebackType
import httpx
@@ -731,15 +732,19 @@ def _instrument(self, **kwargs):
self._original_async_client = httpx.AsyncClient
request_hook = kwargs.get("request_hook")
response_hook = kwargs.get("response_hook")
- async_request_hook = kwargs.get("async_request_hook", request_hook)
- async_response_hook = kwargs.get("async_response_hook", response_hook)
+ async_request_hook = kwargs.get("async_request_hook")
+ async_response_hook = kwargs.get("async_response_hook")
if callable(request_hook):
_InstrumentedClient._request_hook = request_hook
- if callable(async_request_hook):
+ if callable(async_request_hook) and iscoroutinefunction(
+ async_request_hook
+ ):
_InstrumentedAsyncClient._request_hook = async_request_hook
if callable(response_hook):
_InstrumentedClient._response_hook = response_hook
- if callable(async_response_hook):
+ if callable(async_response_hook) and iscoroutinefunction(
+ async_response_hook
+ ):
_InstrumentedAsyncClient._response_hook = async_response_hook
tracer_provider = kwargs.get("tracer_provider")
_InstrumentedClient._tracer_provider = tracer_provider
diff --git a/instrumentation/opentelemetry-instrumentation-httpx/tests/test_httpx_integration.py b/instrumentation/opentelemetry-instrumentation-httpx/tests/test_httpx_integration.py
index 011b5e57d2..78938eb337 100644
--- a/instrumentation/opentelemetry-instrumentation-httpx/tests/test_httpx_integration.py
+++ b/instrumentation/opentelemetry-instrumentation-httpx/tests/test_httpx_integration.py
@@ -780,9 +780,15 @@ def test_custom_tracer_provider(self):
HTTPXClientInstrumentor().uninstrument()
def test_response_hook(self):
+ response_hook_key = (
+ "async_response_hook"
+ if asyncio.iscoroutinefunction(self.response_hook)
+ else "response_hook"
+ )
+ response_hook_kwargs = {response_hook_key: self.response_hook}
HTTPXClientInstrumentor().instrument(
tracer_provider=self.tracer_provider,
- response_hook=self.response_hook,
+ **response_hook_kwargs,
)
client = self.create_client()
result = self.perform_request(self.URL, client=client)
@@ -823,9 +829,15 @@ def test_response_hook_sync_async_kwargs(self):
HTTPXClientInstrumentor().uninstrument()
def test_request_hook(self):
+ request_hook_key = (
+ "async_request_hook"
+ if asyncio.iscoroutinefunction(self.request_hook)
+ else "request_hook"
+ )
+ request_hook_kwargs = {request_hook_key: self.request_hook}
HTTPXClientInstrumentor().instrument(
tracer_provider=self.tracer_provider,
- request_hook=self.request_hook,
+ **request_hook_kwargs,
)
client = self.create_client()
result = self.perform_request(self.URL, client=client)
@@ -1214,3 +1226,36 @@ def test_basic_multiple(self):
self.perform_request(self.URL, client=self.client)
self.perform_request(self.URL, client=self.client2)
self.assert_span(num_spans=2)
+
+ def test_async_response_hook_does_nothing_if_not_coroutine(self):
+ HTTPXClientInstrumentor().instrument(
+ tracer_provider=self.tracer_provider,
+ async_response_hook=_response_hook,
+ )
+ client = self.create_client()
+ result = self.perform_request(self.URL, client=client)
+
+ self.assertEqual(result.text, "Hello!")
+ span = self.assert_span()
+ self.assertEqual(
+ dict(span.attributes),
+ {
+ SpanAttributes.HTTP_METHOD: "GET",
+ SpanAttributes.HTTP_URL: self.URL,
+ SpanAttributes.HTTP_STATUS_CODE: 200,
+ },
+ )
+ HTTPXClientInstrumentor().uninstrument()
+
+ def test_async_request_hook_does_nothing_if_not_coroutine(self):
+ HTTPXClientInstrumentor().instrument(
+ tracer_provider=self.tracer_provider,
+ async_request_hook=_request_hook,
+ )
+ client = self.create_client()
+ result = self.perform_request(self.URL, client=client)
+
+ self.assertEqual(result.text, "Hello!")
+ span = self.assert_span()
+ self.assertEqual(span.name, "GET")
+ HTTPXClientInstrumentor().uninstrument()
From 5558e78d8c1755fbe36413c03d8fead572bff0d2 Mon Sep 17 00:00:00 2001
From: Riccardo Magliocchetti
Date: Mon, 26 Aug 2024 21:24:53 +0200
Subject: [PATCH 10/26] httpx: decouple tests from proxy related environment
variables (#2822)
---
.../tests/test_httpx_integration.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/instrumentation/opentelemetry-instrumentation-httpx/tests/test_httpx_integration.py b/instrumentation/opentelemetry-instrumentation-httpx/tests/test_httpx_integration.py
index 78938eb337..27535800cb 100644
--- a/instrumentation/opentelemetry-instrumentation-httpx/tests/test_httpx_integration.py
+++ b/instrumentation/opentelemetry-instrumentation-httpx/tests/test_httpx_integration.py
@@ -723,6 +723,7 @@ def test_client_mounts_with_instrumented_transport(self):
spans[1].attributes[SpanAttributes.HTTP_URL], https_url
)
+ @mock.patch.dict("os.environ", {"NO_PROXY": ""}, clear=True)
class BaseInstrumentorTest(BaseTest, metaclass=abc.ABCMeta):
@abc.abstractmethod
def create_client(
From 476f6e245a68881796b96f171429a4ce31fed635 Mon Sep 17 00:00:00 2001
From: Riccardo Magliocchetti
Date: Mon, 26 Aug 2024 21:46:08 +0200
Subject: [PATCH 11/26] bootstrap: don't strip \n for last item on listing
(#2820)
---
.../src/opentelemetry/instrumentation/bootstrap.py | 2 +-
opentelemetry-instrumentation/tests/test_bootstrap.py | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap.py b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap.py
index 6f86a539b2..1cc28abca4 100644
--- a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap.py
+++ b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap.py
@@ -119,7 +119,7 @@ def _find_installed_libraries():
def _run_requirements():
logger.setLevel(logging.ERROR)
- print("\n".join(_find_installed_libraries()), end="")
+ print("\n".join(_find_installed_libraries()))
def _run_install():
diff --git a/opentelemetry-instrumentation/tests/test_bootstrap.py b/opentelemetry-instrumentation/tests/test_bootstrap.py
index bbe2f5623b..4807f0beb7 100644
--- a/opentelemetry-instrumentation/tests/test_bootstrap.py
+++ b/opentelemetry-instrumentation/tests/test_bootstrap.py
@@ -77,7 +77,7 @@ def test_run_cmd_print(self):
bootstrap.run()
self.assertEqual(
fake_out.getvalue(),
- "\n".join(self.installed_libraries),
+ "\n".join(self.installed_libraries) + "\n",
)
@patch("sys.argv", ["bootstrap", "-a", "install"])
From 3ec1b9717ce47eb876dba3e6037b3d8fd72c1d3f Mon Sep 17 00:00:00 2001
From: Leighton Chen
Date: Tue, 27 Aug 2024 10:44:37 -0700
Subject: [PATCH 12/26] Add new maintainers aabmass and xrmx (#2825)
Congratulations and welcome @aabmass and @xrmx as new Python maintainers! We greatly appreciate your help and expertise.
Co-authored-by: Diego Hurtado
---
README.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index dcb2ebbba5..d33c1ca4d4 100644
--- a/README.md
+++ b/README.md
@@ -109,12 +109,10 @@ Meeting notes are available as a public [Google doc](https://docs.google.com/doc
Approvers ([@open-telemetry/python-approvers](https://github.com/orgs/open-telemetry/teams/python-approvers)):
-- [Aaron Abbott](https://github.com/aabmass), Google
- [EmÃdio Neto](https://github.com/emdneto), Zenvia
- [Jeremy Voss](https://github.com/jeremydvoss), Microsoft
- [Owais Lone](https://github.com/owais), Splunk
- [Pablo Collins](https://github.com/pmcollins), Splunk
-- [Riccardo Magliocchetti](https://github.com/xrmx), Elastic
- [Sanket Mehta](https://github.com/sanketmehta28), Cisco
- [Srikanth Chekuri](https://github.com/srikanthccv), signoz.io
- [Tammy Baylis](https://github.com/tammy-baylis-swi), SolarWinds
@@ -131,8 +129,10 @@ Emeritus Approvers:
Maintainers ([@open-telemetry/python-maintainers](https://github.com/orgs/open-telemetry/teams/python-maintainers)):
+- [Aaron Abbott](https://github.com/aabmass), Google
- [Diego Hurtado](https://github.com/ocelotl), Lightstep
- [Leighton Chen](https://github.com/lzchen), Microsoft
+- [Riccardo Magliocchetti](https://github.com/xrmx), Elastic
- [Shalev Roda](https://github.com/shalevr), Cisco
Emeritus Maintainers:
From 5a0540ba8bb5824596e0d42adde77f630555b62b Mon Sep 17 00:00:00 2001
From: Diego Hurtado
Date: Tue, 27 Aug 2024 12:08:00 -0600
Subject: [PATCH 13/26] Remove references to test.yml (#2830)
* Remove references to test.yml
Fixes #2829
* Update scripts/update_sha.py
Co-authored-by: Riccardo Magliocchetti
---------
Co-authored-by: Riccardo Magliocchetti
---
CONTRIBUTING.md | 2 +-
README.md | 7 +++++--
scripts/update_sha.py | 18 ++++++++++++------
3 files changed, 18 insertions(+), 9 deletions(-)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index d01d43181f..9072a6a641 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -235,7 +235,7 @@ Some of the tox targets install packages from the [OpenTelemetry Python Core Rep
CORE_REPO_SHA=c49ad57bfe35cfc69bfa863d74058ca9bec55fc3 tox
```
-The continuous integration overrides that environment variable with as per the configuration [here](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/.github/workflows/test.yml#L9).
+The continuous integration overrides that environment variable with as per the configuration [here](https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/.github/workflows/test_0.yml#L14).
## Style Guide
diff --git a/README.md b/README.md
index d33c1ca4d4..1a2aaf4f8a 100644
--- a/README.md
+++ b/README.md
@@ -20,8 +20,11 @@
-
-
+
+
+
+
+
diff --git a/scripts/update_sha.py b/scripts/update_sha.py
index 1c913249a2..c63b9eda9b 100644
--- a/scripts/update_sha.py
+++ b/scripts/update_sha.py
@@ -22,7 +22,12 @@
API_URL = (
"https://api.github.com/repos/open-telemetry/opentelemetry-python/commits/"
)
-WORKFLOW_FILE = ".github/workflows/test.yml"
+workflow_files = [
+ ".github/workflows/test_0.yml"
+ ".github/workflows/test_1.yml"
+ ".github/workflows/misc_0.yml"
+ ".github/workflows/lint_0.yml"
+]
def get_sha(branch):
@@ -35,11 +40,12 @@ def get_sha(branch):
def update_sha(sha):
yaml = YAML()
yaml.preserve_quotes = True
- with open(WORKFLOW_FILE, "r") as file:
- workflow = yaml.load(file)
- workflow["env"]["CORE_REPO_SHA"] = sha
- with open(WORKFLOW_FILE, "w") as file:
- yaml.dump(workflow, file)
+ for workflow_file in workflow_files:
+ with open(workflow_file, "r") as file:
+ workflow = yaml.load(file)
+ workflow["env"]["CORE_REPO_SHA"] = sha
+ with open(workflow_file, "w") as file:
+ yaml.dump(workflow, file)
def main():
From b0129acbdf35c941f564058a4d5551fea6c8c2d5 Mon Sep 17 00:00:00 2001
From: Jack Gong <93988774+gongbenhua@users.noreply.github.com>
Date: Thu, 29 Aug 2024 01:02:42 +0800
Subject: [PATCH 14/26] fix ut in pypy (#2809)
---
.../tests/test_fastapi_instrumentation.py | 38 ++++++++++++-------
1 file changed, 25 insertions(+), 13 deletions(-)
diff --git a/instrumentation/opentelemetry-instrumentation-fastapi/tests/test_fastapi_instrumentation.py b/instrumentation/opentelemetry-instrumentation-fastapi/tests/test_fastapi_instrumentation.py
index 91ed514096..634c74af6b 100644
--- a/instrumentation/opentelemetry-instrumentation-fastapi/tests/test_fastapi_instrumentation.py
+++ b/instrumentation/opentelemetry-instrumentation-fastapi/tests/test_fastapi_instrumentation.py
@@ -530,7 +530,7 @@ def test_basic_metric_success(self):
dict(point.attributes),
)
self.assertEqual(point.count, 1)
- self.assertAlmostEqual(duration, point.sum, delta=40)
+ self.assertAlmostEqual(duration, point.sum, delta=350)
if isinstance(point, NumberDataPoint):
self.assertDictEqual(
expected_requests_count_attributes,
@@ -565,7 +565,9 @@ def test_basic_metric_success_new_semconv(self):
)
self.assertEqual(point.count, 1)
if metric.name == "http.server.request.duration":
- self.assertAlmostEqual(duration_s, point.sum, places=1)
+ self.assertAlmostEqual(
+ duration_s * 0.1, point.sum, places=1
+ )
elif metric.name == "http.server.response.body.size":
self.assertEqual(25, point.sum)
elif metric.name == "http.server.request.body.size":
@@ -615,9 +617,11 @@ def test_basic_metric_success_both_semconv(self):
for point in list(metric.data.data_points):
if isinstance(point, HistogramDataPoint):
self.assertEqual(point.count, 1)
- self.assertAlmostEqual(duration, point.sum, delta=40)
+ self.assertAlmostEqual(duration, point.sum, delta=350)
if metric.name == "http.server.request.duration":
- self.assertAlmostEqual(duration_s, point.sum, places=1)
+ self.assertAlmostEqual(
+ duration_s * 0.1, point.sum, places=1
+ )
self.assertDictEqual(
expected_duration_attributes_new,
dict(point.attributes),
@@ -635,7 +639,7 @@ def test_basic_metric_success_both_semconv(self):
dict(point.attributes),
)
elif metric.name == "http.server.duration":
- self.assertAlmostEqual(duration, point.sum, delta=40)
+ self.assertAlmostEqual(duration, point.sum, delta=350)
self.assertDictEqual(
expected_duration_attributes_old,
dict(point.attributes),
@@ -691,7 +695,7 @@ def test_basic_metric_nonstandard_http_method_success(self):
dict(point.attributes),
)
self.assertEqual(point.count, 1)
- self.assertAlmostEqual(duration, point.sum, delta=40)
+ self.assertAlmostEqual(duration, point.sum, delta=350)
if isinstance(point, NumberDataPoint):
self.assertDictEqual(
expected_requests_count_attributes,
@@ -726,7 +730,9 @@ def test_basic_metric_nonstandard_http_method_success_new_semconv(self):
)
self.assertEqual(point.count, 1)
if metric.name == "http.server.request.duration":
- self.assertAlmostEqual(duration_s, point.sum, places=1)
+ self.assertAlmostEqual(
+ duration_s * 0.1, point.sum, places=1
+ )
elif metric.name == "http.server.response.body.size":
self.assertEqual(31, point.sum)
elif metric.name == "http.server.request.body.size":
@@ -777,7 +783,9 @@ def test_basic_metric_nonstandard_http_method_success_both_semconv(self):
if isinstance(point, HistogramDataPoint):
self.assertEqual(point.count, 1)
if metric.name == "http.server.request.duration":
- self.assertAlmostEqual(duration_s, point.sum, places=1)
+ self.assertAlmostEqual(
+ duration_s * 0.1, point.sum, places=1
+ )
self.assertDictEqual(
expected_duration_attributes_new,
dict(point.attributes),
@@ -795,7 +803,7 @@ def test_basic_metric_nonstandard_http_method_success_both_semconv(self):
dict(point.attributes),
)
elif metric.name == "http.server.duration":
- self.assertAlmostEqual(duration, point.sum, delta=40)
+ self.assertAlmostEqual(duration, point.sum, delta=350)
self.assertDictEqual(
expected_duration_attributes_old,
dict(point.attributes),
@@ -836,7 +844,7 @@ def test_basic_post_request_metric_success(self):
if isinstance(point, HistogramDataPoint):
self.assertEqual(point.count, 1)
if metric.name == "http.server.duration":
- self.assertAlmostEqual(duration, point.sum, delta=40)
+ self.assertAlmostEqual(duration, point.sum, delta=350)
elif metric.name == "http.server.response.size":
self.assertEqual(response_size, point.sum)
elif metric.name == "http.server.request.size":
@@ -861,7 +869,9 @@ def test_basic_post_request_metric_success_new_semconv(self):
if isinstance(point, HistogramDataPoint):
self.assertEqual(point.count, 1)
if metric.name == "http.server.request.duration":
- self.assertAlmostEqual(duration_s, point.sum, places=1)
+ self.assertAlmostEqual(
+ duration_s * 0.1, point.sum, places=1
+ )
elif metric.name == "http.server.response.body.size":
self.assertEqual(response_size, point.sum)
elif metric.name == "http.server.request.body.size":
@@ -887,13 +897,15 @@ def test_basic_post_request_metric_success_both_semconv(self):
if isinstance(point, HistogramDataPoint):
self.assertEqual(point.count, 1)
if metric.name == "http.server.request.duration":
- self.assertAlmostEqual(duration_s, point.sum, places=1)
+ self.assertAlmostEqual(
+ duration_s * 0.1, point.sum, places=1
+ )
elif metric.name == "http.server.response.body.size":
self.assertEqual(response_size, point.sum)
elif metric.name == "http.server.request.body.size":
self.assertEqual(request_size, point.sum)
elif metric.name == "http.server.duration":
- self.assertAlmostEqual(duration, point.sum, delta=40)
+ self.assertAlmostEqual(duration, point.sum, delta=350)
elif metric.name == "http.server.response.size":
self.assertEqual(response_size, point.sum)
elif metric.name == "http.server.request.size":
From 161acbb8ca58f55d0c8da908de369f2cddb880a6 Mon Sep 17 00:00:00 2001
From: Diego Hurtado
Date: Wed, 28 Aug 2024 12:12:08 -0600
Subject: [PATCH 15/26] Skip generate-workflows when triggered by push (#2836)
Fixes #2835
---
.../src/generate_workflows_lib/misc.yml.j2 | 2 +-
.github/workflows/misc_0.yml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/generate_workflows_lib/src/generate_workflows_lib/misc.yml.j2 b/.github/workflows/generate_workflows_lib/src/generate_workflows_lib/misc.yml.j2
index 807da0eb1a..2b0735b432 100644
--- a/.github/workflows/generate_workflows_lib/src/generate_workflows_lib/misc.yml.j2
+++ b/.github/workflows/generate_workflows_lib/src/generate_workflows_lib/misc.yml.j2
@@ -23,7 +23,7 @@ jobs:
{%- if job_data == "generate-workflows" %}
if: |
!contains(github.event.pull_request.labels.*.name, 'Skip generate-workflows')
- && github.actor != 'opentelemetrybot'
+ && github.actor != 'opentelemetrybot' && github.event_name == 'pull_request'
{%- endif %}
{%- if job_data == "public-symbols-check" %}
if: |
diff --git a/.github/workflows/misc_0.yml b/.github/workflows/misc_0.yml
index f7b9faa9f3..3c3f7bfacf 100644
--- a/.github/workflows/misc_0.yml
+++ b/.github/workflows/misc_0.yml
@@ -96,7 +96,7 @@ jobs:
runs-on: ubuntu-latest
if: |
!contains(github.event.pull_request.labels.*.name, 'Skip generate-workflows')
- && github.actor != 'opentelemetrybot'
+ && github.actor != 'opentelemetrybot' && github.event_name == 'pull_request'
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4
From ee67ea8ba5380e55be1a9bb1f7e8bc916ff3bdec Mon Sep 17 00:00:00 2001
From: OpenTelemetry Bot <107717825+opentelemetrybot@users.noreply.github.com>
Date: Wed, 28 Aug 2024 16:20:37 -0500
Subject: [PATCH 16/26] Update version to 1.28.0.dev/0.49b0.dev (#2828)
* Update version to 1.28.0.dev/0.49b0.dev
* Update core SHA
---------
Co-authored-by: Diego Hurtado
---
.github/workflows/lint_0.yml | 2 +-
.github/workflows/misc_0.yml | 2 +-
.github/workflows/test_0.yml | 2 +-
.github/workflows/test_1.yml | 2 +-
CHANGELOG.md | 2 +
_template/version.py | 2 +-
eachdist.ini | 4 +-
.../prometheus_remote_write/version.py | 2 +-
.../pyproject.toml | 2 +-
.../exporter/richconsole/version.py | 2 +-
.../pyproject.toml | 2 +-
.../instrumentation/aio_pika/version.py | 2 +-
.../pyproject.toml | 6 +-
.../instrumentation/aiohttp_client/version.py | 2 +-
.../pyproject.toml | 6 +-
.../instrumentation/aiohttp_server/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/aiopg/version.py | 2 +-
.../pyproject.toml | 6 +-
.../instrumentation/asgi/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/asyncio/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/asyncpg/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/aws_lambda/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/boto/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/boto3sqs/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/botocore/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/cassandra/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/celery/version.py | 2 +-
.../pyproject.toml | 2 +-
.../confluent_kafka/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/dbapi/version.py | 2 +-
.../pyproject.toml | 10 +-
.../instrumentation/django/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/elasticsearch/version.py | 2 +-
.../pyproject.toml | 8 +-
.../instrumentation/falcon/version.py | 2 +-
.../pyproject.toml | 8 +-
.../instrumentation/fastapi/version.py | 2 +-
.../pyproject.toml | 8 +-
.../instrumentation/flask/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/grpc/version.py | 2 +-
.../pyproject.toml | 6 +-
.../instrumentation/httpx/version.py | 2 +-
.../pyproject.toml | 2 +-
.../instrumentation/jinja2/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/kafka/version.py | 2 +-
.../pyproject.toml | 2 +-
.../instrumentation/logging/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/mysql/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/mysqlclient/version.py | 2 +-
.../pyproject.toml | 2 +-
.../instrumentation/pika/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/psycopg/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/psycopg2/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/pymemcache/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/pymongo/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/pymysql/version.py | 2 +-
.../pyproject.toml | 8 +-
.../instrumentation/pyramid/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/redis/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/remoulade/version.py | 2 +-
.../pyproject.toml | 6 +-
.../instrumentation/requests/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/sqlalchemy/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/sqlite3/version.py | 2 +-
.../pyproject.toml | 8 +-
.../instrumentation/starlette/version.py | 2 +-
.../pyproject.toml | 2 +-
.../instrumentation/system_metrics/version.py | 2 +-
.../pyproject.toml | 2 +-
.../instrumentation/threading/version.py | 2 +-
.../pyproject.toml | 6 +-
.../instrumentation/tornado/version.py | 2 +-
.../pyproject.toml | 4 +-
.../instrumentation/tortoiseorm/version.py | 2 +-
.../pyproject.toml | 6 +-
.../instrumentation/urllib/version.py | 2 +-
.../pyproject.toml | 6 +-
.../instrumentation/urllib3/version.py | 2 +-
.../pyproject.toml | 6 +-
.../instrumentation/wsgi/version.py | 2 +-
.../pyproject.toml | 94 +++++++++---------
.../contrib-instrumentations/version.py | 2 +-
opentelemetry-distro/pyproject.toml | 4 +-
.../src/opentelemetry/distro/version.py | 2 +-
.../instrumentation/bootstrap_gen.py | 98 +++++++++----------
.../opentelemetry/instrumentation/version.py | 2 +-
.../processor/baggage/version.py | 2 +-
.../propagators/ot_trace/version.py | 2 +-
.../resource/detector/container/version.py | 2 +-
.../src/opentelemetry/util/http/version.py | 2 +-
114 files changed, 273 insertions(+), 271 deletions(-)
diff --git a/.github/workflows/lint_0.yml b/.github/workflows/lint_0.yml
index b5d20541e5..fa4f2e981a 100644
--- a/.github/workflows/lint_0.yml
+++ b/.github/workflows/lint_0.yml
@@ -10,7 +10,7 @@ on:
pull_request:
env:
- CORE_REPO_SHA: main
+ CORE_REPO_SHA: 8368b6305b4246aafa4ffa7d4890a692d1010b6e
CONTRIB_REPO_SHA: main
PIP_EXISTS_ACTION: w
diff --git a/.github/workflows/misc_0.yml b/.github/workflows/misc_0.yml
index 3c3f7bfacf..51cb5afea0 100644
--- a/.github/workflows/misc_0.yml
+++ b/.github/workflows/misc_0.yml
@@ -10,7 +10,7 @@ on:
pull_request:
env:
- CORE_REPO_SHA: main
+ CORE_REPO_SHA: 8368b6305b4246aafa4ffa7d4890a692d1010b6e
CONTRIB_REPO_SHA: main
PIP_EXISTS_ACTION: w
diff --git a/.github/workflows/test_0.yml b/.github/workflows/test_0.yml
index d251737227..d216e840ae 100644
--- a/.github/workflows/test_0.yml
+++ b/.github/workflows/test_0.yml
@@ -10,7 +10,7 @@ on:
pull_request:
env:
- CORE_REPO_SHA: main
+ CORE_REPO_SHA: 8368b6305b4246aafa4ffa7d4890a692d1010b6e
CONTRIB_REPO_SHA: main
PIP_EXISTS_ACTION: w
diff --git a/.github/workflows/test_1.yml b/.github/workflows/test_1.yml
index f7e71dd6b6..dc3afb6464 100644
--- a/.github/workflows/test_1.yml
+++ b/.github/workflows/test_1.yml
@@ -10,7 +10,7 @@ on:
pull_request:
env:
- CORE_REPO_SHA: main
+ CORE_REPO_SHA: 8368b6305b4246aafa4ffa7d4890a692d1010b6e
CONTRIB_REPO_SHA: main
PIP_EXISTS_ACTION: w
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 3dd53582ec..2a18ea7858 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## Unreleased
+## Version 1.27.0/0.48b0 (2024-08-26)
+
### Added
- `opentelemetry-instrumentation-kafka-python` Instrument temporary fork, kafka-python-ng
diff --git a/_template/version.py b/_template/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/_template/version.py
+++ b/_template/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/eachdist.ini b/eachdist.ini
index 2bcbde9c7c..79c865b334 100644
--- a/eachdist.ini
+++ b/eachdist.ini
@@ -16,7 +16,7 @@ sortfirst=
ext/*
[stable]
-version=1.27.0.dev
+version=1.28.0.dev
packages=
opentelemetry-sdk
@@ -34,7 +34,7 @@ packages=
opentelemetry-api
[prerelease]
-version=0.48b0.dev
+version=0.49b0.dev
packages=
all
diff --git a/exporter/opentelemetry-exporter-prometheus-remote-write/src/opentelemetry/exporter/prometheus_remote_write/version.py b/exporter/opentelemetry-exporter-prometheus-remote-write/src/opentelemetry/exporter/prometheus_remote_write/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/exporter/opentelemetry-exporter-prometheus-remote-write/src/opentelemetry/exporter/prometheus_remote_write/version.py
+++ b/exporter/opentelemetry-exporter-prometheus-remote-write/src/opentelemetry/exporter/prometheus_remote_write/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/exporter/opentelemetry-exporter-richconsole/pyproject.toml b/exporter/opentelemetry-exporter-richconsole/pyproject.toml
index 6d38226160..eb00eb0437 100644
--- a/exporter/opentelemetry-exporter-richconsole/pyproject.toml
+++ b/exporter/opentelemetry-exporter-richconsole/pyproject.toml
@@ -27,7 +27,7 @@ classifiers = [
dependencies = [
"opentelemetry-api ~= 1.12",
"opentelemetry-sdk ~= 1.12",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
"rich>=10.0.0",
]
diff --git a/exporter/opentelemetry-exporter-richconsole/src/opentelemetry/exporter/richconsole/version.py b/exporter/opentelemetry-exporter-richconsole/src/opentelemetry/exporter/richconsole/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/exporter/opentelemetry-exporter-richconsole/src/opentelemetry/exporter/richconsole/version.py
+++ b/exporter/opentelemetry-exporter-richconsole/src/opentelemetry/exporter/richconsole/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-aio-pika/pyproject.toml b/instrumentation/opentelemetry-instrumentation-aio-pika/pyproject.toml
index c8be384fe6..65dfe3c7ac 100644
--- a/instrumentation/opentelemetry-instrumentation-aio-pika/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-aio-pika/pyproject.toml
@@ -26,7 +26,7 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.5",
- "opentelemetry-instrumentation == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-aio-pika/src/opentelemetry/instrumentation/aio_pika/version.py b/instrumentation/opentelemetry-instrumentation-aio-pika/src/opentelemetry/instrumentation/aio_pika/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-aio-pika/src/opentelemetry/instrumentation/aio_pika/version.py
+++ b/instrumentation/opentelemetry-instrumentation-aio-pika/src/opentelemetry/instrumentation/aio_pika/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-aiohttp-client/pyproject.toml b/instrumentation/opentelemetry-instrumentation-aiohttp-client/pyproject.toml
index cfc53f723a..fbe663a50b 100644
--- a/instrumentation/opentelemetry-instrumentation-aiohttp-client/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-aiohttp-client/pyproject.toml
@@ -26,9 +26,9 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-aiohttp-client/src/opentelemetry/instrumentation/aiohttp_client/version.py b/instrumentation/opentelemetry-instrumentation-aiohttp-client/src/opentelemetry/instrumentation/aiohttp_client/version.py
index aa0c1a911f..49b83ce95e 100644
--- a/instrumentation/opentelemetry-instrumentation-aiohttp-client/src/opentelemetry/instrumentation/aiohttp_client/version.py
+++ b/instrumentation/opentelemetry-instrumentation-aiohttp-client/src/opentelemetry/instrumentation/aiohttp_client/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-aiohttp-server/pyproject.toml b/instrumentation/opentelemetry-instrumentation-aiohttp-server/pyproject.toml
index 6d62bd7956..a8e912e68d 100644
--- a/instrumentation/opentelemetry-instrumentation-aiohttp-server/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-aiohttp-server/pyproject.toml
@@ -26,9 +26,9 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-aiohttp-server/src/opentelemetry/instrumentation/aiohttp_server/version.py b/instrumentation/opentelemetry-instrumentation-aiohttp-server/src/opentelemetry/instrumentation/aiohttp_server/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-aiohttp-server/src/opentelemetry/instrumentation/aiohttp_server/version.py
+++ b/instrumentation/opentelemetry-instrumentation-aiohttp-server/src/opentelemetry/instrumentation/aiohttp_server/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-aiopg/pyproject.toml b/instrumentation/opentelemetry-instrumentation-aiopg/pyproject.toml
index 404bc9c445..3a583db3dd 100644
--- a/instrumentation/opentelemetry-instrumentation-aiopg/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-aiopg/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-instrumentation-dbapi == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-instrumentation-dbapi == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-aiopg/src/opentelemetry/instrumentation/aiopg/version.py b/instrumentation/opentelemetry-instrumentation-aiopg/src/opentelemetry/instrumentation/aiopg/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-aiopg/src/opentelemetry/instrumentation/aiopg/version.py
+++ b/instrumentation/opentelemetry-instrumentation-aiopg/src/opentelemetry/instrumentation/aiopg/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-asgi/pyproject.toml b/instrumentation/opentelemetry-instrumentation-asgi/pyproject.toml
index 480ca75df7..45c436aad4 100644
--- a/instrumentation/opentelemetry-instrumentation-asgi/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-asgi/pyproject.toml
@@ -27,9 +27,9 @@ classifiers = [
dependencies = [
"asgiref ~= 3.0",
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-asgi/src/opentelemetry/instrumentation/asgi/version.py b/instrumentation/opentelemetry-instrumentation-asgi/src/opentelemetry/instrumentation/asgi/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-asgi/src/opentelemetry/instrumentation/asgi/version.py
+++ b/instrumentation/opentelemetry-instrumentation-asgi/src/opentelemetry/instrumentation/asgi/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-asyncio/pyproject.toml b/instrumentation/opentelemetry-instrumentation-asyncio/pyproject.toml
index cda5403ef5..36ed960392 100644
--- a/instrumentation/opentelemetry-instrumentation-asyncio/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-asyncio/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.14",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-asyncio/src/opentelemetry/instrumentation/asyncio/version.py b/instrumentation/opentelemetry-instrumentation-asyncio/src/opentelemetry/instrumentation/asyncio/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-asyncio/src/opentelemetry/instrumentation/asyncio/version.py
+++ b/instrumentation/opentelemetry-instrumentation-asyncio/src/opentelemetry/instrumentation/asyncio/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-asyncpg/pyproject.toml b/instrumentation/opentelemetry-instrumentation-asyncpg/pyproject.toml
index 820c86070d..5a6632a028 100644
--- a/instrumentation/opentelemetry-instrumentation-asyncpg/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-asyncpg/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-asyncpg/src/opentelemetry/instrumentation/asyncpg/version.py b/instrumentation/opentelemetry-instrumentation-asyncpg/src/opentelemetry/instrumentation/asyncpg/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-asyncpg/src/opentelemetry/instrumentation/asyncpg/version.py
+++ b/instrumentation/opentelemetry-instrumentation-asyncpg/src/opentelemetry/instrumentation/asyncpg/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-aws-lambda/pyproject.toml b/instrumentation/opentelemetry-instrumentation-aws-lambda/pyproject.toml
index b512faa3eb..debc3ce033 100644
--- a/instrumentation/opentelemetry-instrumentation-aws-lambda/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-aws-lambda/pyproject.toml
@@ -25,9 +25,9 @@ classifiers = [
"Programming Language :: Python :: 3.12",
]
dependencies = [
- "opentelemetry-instrumentation == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
"opentelemetry-propagator-aws-xray ~= 1.0.1",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-aws-lambda/src/opentelemetry/instrumentation/aws_lambda/version.py b/instrumentation/opentelemetry-instrumentation-aws-lambda/src/opentelemetry/instrumentation/aws_lambda/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-aws-lambda/src/opentelemetry/instrumentation/aws_lambda/version.py
+++ b/instrumentation/opentelemetry-instrumentation-aws-lambda/src/opentelemetry/instrumentation/aws_lambda/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-boto/pyproject.toml b/instrumentation/opentelemetry-instrumentation-boto/pyproject.toml
index 3abda7b175..a2bdba302f 100644
--- a/instrumentation/opentelemetry-instrumentation-boto/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-boto/pyproject.toml
@@ -25,8 +25,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-boto/src/opentelemetry/instrumentation/boto/version.py b/instrumentation/opentelemetry-instrumentation-boto/src/opentelemetry/instrumentation/boto/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-boto/src/opentelemetry/instrumentation/boto/version.py
+++ b/instrumentation/opentelemetry-instrumentation-boto/src/opentelemetry/instrumentation/boto/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-boto3sqs/pyproject.toml b/instrumentation/opentelemetry-instrumentation-boto3sqs/pyproject.toml
index cbbf9cd679..72dc38cbec 100644
--- a/instrumentation/opentelemetry-instrumentation-boto3sqs/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-boto3sqs/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-boto3sqs/src/opentelemetry/instrumentation/boto3sqs/version.py b/instrumentation/opentelemetry-instrumentation-boto3sqs/src/opentelemetry/instrumentation/boto3sqs/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-boto3sqs/src/opentelemetry/instrumentation/boto3sqs/version.py
+++ b/instrumentation/opentelemetry-instrumentation-boto3sqs/src/opentelemetry/instrumentation/boto3sqs/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-botocore/pyproject.toml b/instrumentation/opentelemetry-instrumentation-botocore/pyproject.toml
index f286e7fc7b..797145b728 100644
--- a/instrumentation/opentelemetry-instrumentation-botocore/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-botocore/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
"opentelemetry-propagator-aws-xray ~= 1.0.1",
]
diff --git a/instrumentation/opentelemetry-instrumentation-botocore/src/opentelemetry/instrumentation/botocore/version.py b/instrumentation/opentelemetry-instrumentation-botocore/src/opentelemetry/instrumentation/botocore/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-botocore/src/opentelemetry/instrumentation/botocore/version.py
+++ b/instrumentation/opentelemetry-instrumentation-botocore/src/opentelemetry/instrumentation/botocore/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-cassandra/pyproject.toml b/instrumentation/opentelemetry-instrumentation-cassandra/pyproject.toml
index b2ee19bdd2..3e785d1e8b 100644
--- a/instrumentation/opentelemetry-instrumentation-cassandra/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-cassandra/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-cassandra/src/opentelemetry/instrumentation/cassandra/version.py b/instrumentation/opentelemetry-instrumentation-cassandra/src/opentelemetry/instrumentation/cassandra/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-cassandra/src/opentelemetry/instrumentation/cassandra/version.py
+++ b/instrumentation/opentelemetry-instrumentation-cassandra/src/opentelemetry/instrumentation/cassandra/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-celery/pyproject.toml b/instrumentation/opentelemetry-instrumentation-celery/pyproject.toml
index 0d302a4206..9f0f594581 100644
--- a/instrumentation/opentelemetry-instrumentation-celery/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-celery/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-celery/src/opentelemetry/instrumentation/celery/version.py b/instrumentation/opentelemetry-instrumentation-celery/src/opentelemetry/instrumentation/celery/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-celery/src/opentelemetry/instrumentation/celery/version.py
+++ b/instrumentation/opentelemetry-instrumentation-celery/src/opentelemetry/instrumentation/celery/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-confluent-kafka/pyproject.toml b/instrumentation/opentelemetry-instrumentation-confluent-kafka/pyproject.toml
index 13433ba9e2..2edfdeb038 100644
--- a/instrumentation/opentelemetry-instrumentation-confluent-kafka/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-confluent-kafka/pyproject.toml
@@ -25,7 +25,7 @@ classifiers = [
"Programming Language :: Python :: 3.12",
]
dependencies = [
- "opentelemetry-instrumentation == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
"opentelemetry-api ~= 1.12",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/version.py b/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/version.py
+++ b/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-dbapi/pyproject.toml b/instrumentation/opentelemetry-instrumentation-dbapi/pyproject.toml
index 991c7bb8af..bfa63dbcad 100644
--- a/instrumentation/opentelemetry-instrumentation-dbapi/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-dbapi/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-dbapi/src/opentelemetry/instrumentation/dbapi/version.py b/instrumentation/opentelemetry-instrumentation-dbapi/src/opentelemetry/instrumentation/dbapi/version.py
index e0bef4b1e3..79e27849a4 100644
--- a/instrumentation/opentelemetry-instrumentation-dbapi/src/opentelemetry/instrumentation/dbapi/version.py
+++ b/instrumentation/opentelemetry-instrumentation-dbapi/src/opentelemetry/instrumentation/dbapi/version.py
@@ -12,6 +12,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
_instruments = tuple()
diff --git a/instrumentation/opentelemetry-instrumentation-django/pyproject.toml b/instrumentation/opentelemetry-instrumentation-django/pyproject.toml
index a8b53820bc..27cdf157c4 100644
--- a/instrumentation/opentelemetry-instrumentation-django/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-django/pyproject.toml
@@ -26,15 +26,15 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-instrumentation-wsgi == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-instrumentation-wsgi == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
]
[project.optional-dependencies]
asgi = [
- "opentelemetry-instrumentation-asgi == 0.48b0.dev",
+ "opentelemetry-instrumentation-asgi == 0.49b0.dev",
]
instruments = [
"django >= 1.10",
diff --git a/instrumentation/opentelemetry-instrumentation-django/src/opentelemetry/instrumentation/django/version.py b/instrumentation/opentelemetry-instrumentation-django/src/opentelemetry/instrumentation/django/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-django/src/opentelemetry/instrumentation/django/version.py
+++ b/instrumentation/opentelemetry-instrumentation-django/src/opentelemetry/instrumentation/django/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-elasticsearch/pyproject.toml b/instrumentation/opentelemetry-instrumentation-elasticsearch/pyproject.toml
index 29d7bec6cc..e086d2c335 100644
--- a/instrumentation/opentelemetry-instrumentation-elasticsearch/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-elasticsearch/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-elasticsearch/src/opentelemetry/instrumentation/elasticsearch/version.py b/instrumentation/opentelemetry-instrumentation-elasticsearch/src/opentelemetry/instrumentation/elasticsearch/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-elasticsearch/src/opentelemetry/instrumentation/elasticsearch/version.py
+++ b/instrumentation/opentelemetry-instrumentation-elasticsearch/src/opentelemetry/instrumentation/elasticsearch/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-falcon/pyproject.toml b/instrumentation/opentelemetry-instrumentation-falcon/pyproject.toml
index 6f505f60ae..f118ff4296 100644
--- a/instrumentation/opentelemetry-instrumentation-falcon/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-falcon/pyproject.toml
@@ -26,10 +26,10 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-instrumentation-wsgi == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-instrumentation-wsgi == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
"packaging >= 20.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-falcon/src/opentelemetry/instrumentation/falcon/version.py b/instrumentation/opentelemetry-instrumentation-falcon/src/opentelemetry/instrumentation/falcon/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-falcon/src/opentelemetry/instrumentation/falcon/version.py
+++ b/instrumentation/opentelemetry-instrumentation-falcon/src/opentelemetry/instrumentation/falcon/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-fastapi/pyproject.toml b/instrumentation/opentelemetry-instrumentation-fastapi/pyproject.toml
index 3017dc040a..89f6602e86 100644
--- a/instrumentation/opentelemetry-instrumentation-fastapi/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-fastapi/pyproject.toml
@@ -26,10 +26,10 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-instrumentation-asgi == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-instrumentation-asgi == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-fastapi/src/opentelemetry/instrumentation/fastapi/version.py b/instrumentation/opentelemetry-instrumentation-fastapi/src/opentelemetry/instrumentation/fastapi/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-fastapi/src/opentelemetry/instrumentation/fastapi/version.py
+++ b/instrumentation/opentelemetry-instrumentation-fastapi/src/opentelemetry/instrumentation/fastapi/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-flask/pyproject.toml b/instrumentation/opentelemetry-instrumentation-flask/pyproject.toml
index ffafdbacc6..0e74ca331f 100644
--- a/instrumentation/opentelemetry-instrumentation-flask/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-flask/pyproject.toml
@@ -26,10 +26,10 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-instrumentation-wsgi == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-instrumentation-wsgi == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
"packaging >= 21.0",
"importlib-metadata >= 4.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-flask/src/opentelemetry/instrumentation/flask/version.py b/instrumentation/opentelemetry-instrumentation-flask/src/opentelemetry/instrumentation/flask/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-flask/src/opentelemetry/instrumentation/flask/version.py
+++ b/instrumentation/opentelemetry-instrumentation-flask/src/opentelemetry/instrumentation/flask/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-grpc/pyproject.toml b/instrumentation/opentelemetry-instrumentation-grpc/pyproject.toml
index d0a7d54298..e1956aeeea 100644
--- a/instrumentation/opentelemetry-instrumentation-grpc/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-grpc/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-grpc/src/opentelemetry/instrumentation/grpc/version.py b/instrumentation/opentelemetry-instrumentation-grpc/src/opentelemetry/instrumentation/grpc/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-grpc/src/opentelemetry/instrumentation/grpc/version.py
+++ b/instrumentation/opentelemetry-instrumentation-grpc/src/opentelemetry/instrumentation/grpc/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-httpx/pyproject.toml b/instrumentation/opentelemetry-instrumentation-httpx/pyproject.toml
index 5e4629e281..599091716b 100644
--- a/instrumentation/opentelemetry-instrumentation-httpx/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-httpx/pyproject.toml
@@ -26,9 +26,9 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/version.py b/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/version.py
+++ b/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-jinja2/pyproject.toml b/instrumentation/opentelemetry-instrumentation-jinja2/pyproject.toml
index f74b8ca488..40159c3485 100644
--- a/instrumentation/opentelemetry-instrumentation-jinja2/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-jinja2/pyproject.toml
@@ -26,7 +26,7 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-jinja2/src/opentelemetry/instrumentation/jinja2/version.py b/instrumentation/opentelemetry-instrumentation-jinja2/src/opentelemetry/instrumentation/jinja2/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-jinja2/src/opentelemetry/instrumentation/jinja2/version.py
+++ b/instrumentation/opentelemetry-instrumentation-jinja2/src/opentelemetry/instrumentation/jinja2/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-kafka-python/pyproject.toml b/instrumentation/opentelemetry-instrumentation-kafka-python/pyproject.toml
index c256c71b94..d47672fa07 100644
--- a/instrumentation/opentelemetry-instrumentation-kafka-python/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-kafka-python/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.5",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-kafka-python/src/opentelemetry/instrumentation/kafka/version.py b/instrumentation/opentelemetry-instrumentation-kafka-python/src/opentelemetry/instrumentation/kafka/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-kafka-python/src/opentelemetry/instrumentation/kafka/version.py
+++ b/instrumentation/opentelemetry-instrumentation-kafka-python/src/opentelemetry/instrumentation/kafka/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-logging/pyproject.toml b/instrumentation/opentelemetry-instrumentation-logging/pyproject.toml
index 2c1b2ad897..62656bea22 100644
--- a/instrumentation/opentelemetry-instrumentation-logging/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-logging/pyproject.toml
@@ -26,7 +26,7 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-logging/src/opentelemetry/instrumentation/logging/version.py b/instrumentation/opentelemetry-instrumentation-logging/src/opentelemetry/instrumentation/logging/version.py
index e0bef4b1e3..79e27849a4 100644
--- a/instrumentation/opentelemetry-instrumentation-logging/src/opentelemetry/instrumentation/logging/version.py
+++ b/instrumentation/opentelemetry-instrumentation-logging/src/opentelemetry/instrumentation/logging/version.py
@@ -12,6 +12,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
_instruments = tuple()
diff --git a/instrumentation/opentelemetry-instrumentation-mysql/pyproject.toml b/instrumentation/opentelemetry-instrumentation-mysql/pyproject.toml
index 3c7d0c9166..629ab5325e 100644
--- a/instrumentation/opentelemetry-instrumentation-mysql/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-mysql/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-instrumentation-dbapi == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-instrumentation-dbapi == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-mysql/src/opentelemetry/instrumentation/mysql/version.py b/instrumentation/opentelemetry-instrumentation-mysql/src/opentelemetry/instrumentation/mysql/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-mysql/src/opentelemetry/instrumentation/mysql/version.py
+++ b/instrumentation/opentelemetry-instrumentation-mysql/src/opentelemetry/instrumentation/mysql/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-mysqlclient/pyproject.toml b/instrumentation/opentelemetry-instrumentation-mysqlclient/pyproject.toml
index 0ede691e36..0cc4553384 100644
--- a/instrumentation/opentelemetry-instrumentation-mysqlclient/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-mysqlclient/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-instrumentation-dbapi == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-instrumentation-dbapi == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-mysqlclient/src/opentelemetry/instrumentation/mysqlclient/version.py b/instrumentation/opentelemetry-instrumentation-mysqlclient/src/opentelemetry/instrumentation/mysqlclient/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-mysqlclient/src/opentelemetry/instrumentation/mysqlclient/version.py
+++ b/instrumentation/opentelemetry-instrumentation-mysqlclient/src/opentelemetry/instrumentation/mysqlclient/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-pika/pyproject.toml b/instrumentation/opentelemetry-instrumentation-pika/pyproject.toml
index 145439b242..bc01323ee4 100644
--- a/instrumentation/opentelemetry-instrumentation-pika/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-pika/pyproject.toml
@@ -25,7 +25,7 @@ classifiers = [
"Programming Language :: Python :: 3.12",
]
dependencies = [
- "opentelemetry-instrumentation == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
"opentelemetry-api ~= 1.5",
"packaging >= 20.0",
"wrapt >= 1.0.0, < 2.0.0",
diff --git a/instrumentation/opentelemetry-instrumentation-pika/src/opentelemetry/instrumentation/pika/version.py b/instrumentation/opentelemetry-instrumentation-pika/src/opentelemetry/instrumentation/pika/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-pika/src/opentelemetry/instrumentation/pika/version.py
+++ b/instrumentation/opentelemetry-instrumentation-pika/src/opentelemetry/instrumentation/pika/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-psycopg/pyproject.toml b/instrumentation/opentelemetry-instrumentation-psycopg/pyproject.toml
index 717257821d..513064ae7f 100644
--- a/instrumentation/opentelemetry-instrumentation-psycopg/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-psycopg/pyproject.toml
@@ -27,8 +27,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-instrumentation-dbapi == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-instrumentation-dbapi == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-psycopg/src/opentelemetry/instrumentation/psycopg/version.py b/instrumentation/opentelemetry-instrumentation-psycopg/src/opentelemetry/instrumentation/psycopg/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-psycopg/src/opentelemetry/instrumentation/psycopg/version.py
+++ b/instrumentation/opentelemetry-instrumentation-psycopg/src/opentelemetry/instrumentation/psycopg/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-psycopg2/pyproject.toml b/instrumentation/opentelemetry-instrumentation-psycopg2/pyproject.toml
index 7db83dcc5c..592c15b4db 100644
--- a/instrumentation/opentelemetry-instrumentation-psycopg2/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-psycopg2/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-instrumentation-dbapi == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-instrumentation-dbapi == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-psycopg2/src/opentelemetry/instrumentation/psycopg2/version.py b/instrumentation/opentelemetry-instrumentation-psycopg2/src/opentelemetry/instrumentation/psycopg2/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-psycopg2/src/opentelemetry/instrumentation/psycopg2/version.py
+++ b/instrumentation/opentelemetry-instrumentation-psycopg2/src/opentelemetry/instrumentation/psycopg2/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-pymemcache/pyproject.toml b/instrumentation/opentelemetry-instrumentation-pymemcache/pyproject.toml
index 47df236c42..c20ffd3dee 100644
--- a/instrumentation/opentelemetry-instrumentation-pymemcache/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-pymemcache/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-pymemcache/src/opentelemetry/instrumentation/pymemcache/version.py b/instrumentation/opentelemetry-instrumentation-pymemcache/src/opentelemetry/instrumentation/pymemcache/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-pymemcache/src/opentelemetry/instrumentation/pymemcache/version.py
+++ b/instrumentation/opentelemetry-instrumentation-pymemcache/src/opentelemetry/instrumentation/pymemcache/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-pymongo/pyproject.toml b/instrumentation/opentelemetry-instrumentation-pymongo/pyproject.toml
index ccd75ffeaa..61f4fd2b72 100644
--- a/instrumentation/opentelemetry-instrumentation-pymongo/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-pymongo/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-pymongo/src/opentelemetry/instrumentation/pymongo/version.py b/instrumentation/opentelemetry-instrumentation-pymongo/src/opentelemetry/instrumentation/pymongo/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-pymongo/src/opentelemetry/instrumentation/pymongo/version.py
+++ b/instrumentation/opentelemetry-instrumentation-pymongo/src/opentelemetry/instrumentation/pymongo/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-pymysql/pyproject.toml b/instrumentation/opentelemetry-instrumentation-pymysql/pyproject.toml
index 08ee94fd9e..9e1bc1a881 100644
--- a/instrumentation/opentelemetry-instrumentation-pymysql/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-pymysql/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-instrumentation-dbapi == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-instrumentation-dbapi == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-pymysql/src/opentelemetry/instrumentation/pymysql/version.py b/instrumentation/opentelemetry-instrumentation-pymysql/src/opentelemetry/instrumentation/pymysql/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-pymysql/src/opentelemetry/instrumentation/pymysql/version.py
+++ b/instrumentation/opentelemetry-instrumentation-pymysql/src/opentelemetry/instrumentation/pymysql/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-pyramid/pyproject.toml b/instrumentation/opentelemetry-instrumentation-pyramid/pyproject.toml
index 9da43f444c..2a559e6c60 100644
--- a/instrumentation/opentelemetry-instrumentation-pyramid/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-pyramid/pyproject.toml
@@ -26,10 +26,10 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-instrumentation-wsgi == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-instrumentation-wsgi == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-pyramid/src/opentelemetry/instrumentation/pyramid/version.py b/instrumentation/opentelemetry-instrumentation-pyramid/src/opentelemetry/instrumentation/pyramid/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-pyramid/src/opentelemetry/instrumentation/pyramid/version.py
+++ b/instrumentation/opentelemetry-instrumentation-pyramid/src/opentelemetry/instrumentation/pyramid/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-redis/pyproject.toml b/instrumentation/opentelemetry-instrumentation-redis/pyproject.toml
index d39bda20a5..c262363fab 100644
--- a/instrumentation/opentelemetry-instrumentation-redis/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-redis/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
"wrapt >= 1.12.1",
]
diff --git a/instrumentation/opentelemetry-instrumentation-redis/src/opentelemetry/instrumentation/redis/version.py b/instrumentation/opentelemetry-instrumentation-redis/src/opentelemetry/instrumentation/redis/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-redis/src/opentelemetry/instrumentation/redis/version.py
+++ b/instrumentation/opentelemetry-instrumentation-redis/src/opentelemetry/instrumentation/redis/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-remoulade/pyproject.toml b/instrumentation/opentelemetry-instrumentation-remoulade/pyproject.toml
index 8b2b3679a9..7f3041b887 100644
--- a/instrumentation/opentelemetry-instrumentation-remoulade/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-remoulade/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-remoulade/src/opentelemetry/instrumentation/remoulade/version.py b/instrumentation/opentelemetry-instrumentation-remoulade/src/opentelemetry/instrumentation/remoulade/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-remoulade/src/opentelemetry/instrumentation/remoulade/version.py
+++ b/instrumentation/opentelemetry-instrumentation-remoulade/src/opentelemetry/instrumentation/remoulade/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-requests/pyproject.toml b/instrumentation/opentelemetry-instrumentation-requests/pyproject.toml
index 88996d2540..dafe3b4d3a 100644
--- a/instrumentation/opentelemetry-instrumentation-requests/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-requests/pyproject.toml
@@ -26,9 +26,9 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-requests/src/opentelemetry/instrumentation/requests/version.py b/instrumentation/opentelemetry-instrumentation-requests/src/opentelemetry/instrumentation/requests/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-requests/src/opentelemetry/instrumentation/requests/version.py
+++ b/instrumentation/opentelemetry-instrumentation-requests/src/opentelemetry/instrumentation/requests/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-sqlalchemy/pyproject.toml b/instrumentation/opentelemetry-instrumentation-sqlalchemy/pyproject.toml
index 21021fb590..d6cc3f71d9 100644
--- a/instrumentation/opentelemetry-instrumentation-sqlalchemy/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-sqlalchemy/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
"packaging >= 21.0",
"wrapt >= 1.11.2",
]
diff --git a/instrumentation/opentelemetry-instrumentation-sqlalchemy/src/opentelemetry/instrumentation/sqlalchemy/version.py b/instrumentation/opentelemetry-instrumentation-sqlalchemy/src/opentelemetry/instrumentation/sqlalchemy/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-sqlalchemy/src/opentelemetry/instrumentation/sqlalchemy/version.py
+++ b/instrumentation/opentelemetry-instrumentation-sqlalchemy/src/opentelemetry/instrumentation/sqlalchemy/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-sqlite3/pyproject.toml b/instrumentation/opentelemetry-instrumentation-sqlite3/pyproject.toml
index e86fb99235..60ec47b16e 100644
--- a/instrumentation/opentelemetry-instrumentation-sqlite3/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-sqlite3/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-instrumentation-dbapi == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-instrumentation-dbapi == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-sqlite3/src/opentelemetry/instrumentation/sqlite3/version.py b/instrumentation/opentelemetry-instrumentation-sqlite3/src/opentelemetry/instrumentation/sqlite3/version.py
index e0bef4b1e3..79e27849a4 100644
--- a/instrumentation/opentelemetry-instrumentation-sqlite3/src/opentelemetry/instrumentation/sqlite3/version.py
+++ b/instrumentation/opentelemetry-instrumentation-sqlite3/src/opentelemetry/instrumentation/sqlite3/version.py
@@ -12,6 +12,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
_instruments = tuple()
diff --git a/instrumentation/opentelemetry-instrumentation-starlette/pyproject.toml b/instrumentation/opentelemetry-instrumentation-starlette/pyproject.toml
index 6e6d370b53..9cdd968ca0 100644
--- a/instrumentation/opentelemetry-instrumentation-starlette/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-starlette/pyproject.toml
@@ -26,10 +26,10 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-instrumentation-asgi == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-instrumentation-asgi == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-starlette/src/opentelemetry/instrumentation/starlette/version.py b/instrumentation/opentelemetry-instrumentation-starlette/src/opentelemetry/instrumentation/starlette/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-starlette/src/opentelemetry/instrumentation/starlette/version.py
+++ b/instrumentation/opentelemetry-instrumentation-starlette/src/opentelemetry/instrumentation/starlette/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-system-metrics/pyproject.toml b/instrumentation/opentelemetry-instrumentation-system-metrics/pyproject.toml
index 6a1e83912f..a405c668f7 100644
--- a/instrumentation/opentelemetry-instrumentation-system-metrics/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-system-metrics/pyproject.toml
@@ -25,7 +25,7 @@ classifiers = [
"Programming Language :: Python :: 3.12",
]
dependencies = [
- "opentelemetry-instrumentation == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
"opentelemetry-api ~= 1.11",
"psutil >= 5.9.0, < 7",
]
diff --git a/instrumentation/opentelemetry-instrumentation-system-metrics/src/opentelemetry/instrumentation/system_metrics/version.py b/instrumentation/opentelemetry-instrumentation-system-metrics/src/opentelemetry/instrumentation/system_metrics/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-system-metrics/src/opentelemetry/instrumentation/system_metrics/version.py
+++ b/instrumentation/opentelemetry-instrumentation-system-metrics/src/opentelemetry/instrumentation/system_metrics/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-threading/pyproject.toml b/instrumentation/opentelemetry-instrumentation-threading/pyproject.toml
index 16088e7de3..43f92d2034 100644
--- a/instrumentation/opentelemetry-instrumentation-threading/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-threading/pyproject.toml
@@ -26,7 +26,7 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-threading/src/opentelemetry/instrumentation/threading/version.py b/instrumentation/opentelemetry-instrumentation-threading/src/opentelemetry/instrumentation/threading/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-threading/src/opentelemetry/instrumentation/threading/version.py
+++ b/instrumentation/opentelemetry-instrumentation-threading/src/opentelemetry/instrumentation/threading/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-tornado/pyproject.toml b/instrumentation/opentelemetry-instrumentation-tornado/pyproject.toml
index 0096deb8fd..f3f9a4b4fc 100644
--- a/instrumentation/opentelemetry-instrumentation-tornado/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-tornado/pyproject.toml
@@ -25,9 +25,9 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-tornado/src/opentelemetry/instrumentation/tornado/version.py b/instrumentation/opentelemetry-instrumentation-tornado/src/opentelemetry/instrumentation/tornado/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-tornado/src/opentelemetry/instrumentation/tornado/version.py
+++ b/instrumentation/opentelemetry-instrumentation-tornado/src/opentelemetry/instrumentation/tornado/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-tortoiseorm/pyproject.toml b/instrumentation/opentelemetry-instrumentation-tortoiseorm/pyproject.toml
index 04d81e1894..82ccbc6a79 100644
--- a/instrumentation/opentelemetry-instrumentation-tortoiseorm/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-tortoiseorm/pyproject.toml
@@ -26,8 +26,8 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-tortoiseorm/src/opentelemetry/instrumentation/tortoiseorm/version.py b/instrumentation/opentelemetry-instrumentation-tortoiseorm/src/opentelemetry/instrumentation/tortoiseorm/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-tortoiseorm/src/opentelemetry/instrumentation/tortoiseorm/version.py
+++ b/instrumentation/opentelemetry-instrumentation-tortoiseorm/src/opentelemetry/instrumentation/tortoiseorm/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-urllib/pyproject.toml b/instrumentation/opentelemetry-instrumentation-urllib/pyproject.toml
index 4f0d2681f9..97b611b095 100644
--- a/instrumentation/opentelemetry-instrumentation-urllib/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-urllib/pyproject.toml
@@ -26,9 +26,9 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-urllib/src/opentelemetry/instrumentation/urllib/version.py b/instrumentation/opentelemetry-instrumentation-urllib/src/opentelemetry/instrumentation/urllib/version.py
index e0bef4b1e3..79e27849a4 100644
--- a/instrumentation/opentelemetry-instrumentation-urllib/src/opentelemetry/instrumentation/urllib/version.py
+++ b/instrumentation/opentelemetry-instrumentation-urllib/src/opentelemetry/instrumentation/urllib/version.py
@@ -12,6 +12,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
_instruments = tuple()
diff --git a/instrumentation/opentelemetry-instrumentation-urllib3/pyproject.toml b/instrumentation/opentelemetry-instrumentation-urllib3/pyproject.toml
index 03c9f26fbc..3c1eaaa6d0 100644
--- a/instrumentation/opentelemetry-instrumentation-urllib3/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-urllib3/pyproject.toml
@@ -26,9 +26,9 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
"wrapt >= 1.0.0, < 2.0.0",
]
diff --git a/instrumentation/opentelemetry-instrumentation-urllib3/src/opentelemetry/instrumentation/urllib3/version.py b/instrumentation/opentelemetry-instrumentation-urllib3/src/opentelemetry/instrumentation/urllib3/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-urllib3/src/opentelemetry/instrumentation/urllib3/version.py
+++ b/instrumentation/opentelemetry-instrumentation-urllib3/src/opentelemetry/instrumentation/urllib3/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/instrumentation/opentelemetry-instrumentation-wsgi/pyproject.toml b/instrumentation/opentelemetry-instrumentation-wsgi/pyproject.toml
index b38f1829aa..a5e81ee8e5 100644
--- a/instrumentation/opentelemetry-instrumentation-wsgi/pyproject.toml
+++ b/instrumentation/opentelemetry-instrumentation-wsgi/pyproject.toml
@@ -26,9 +26,9 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
- "opentelemetry-semantic-conventions == 0.48b0.dev",
- "opentelemetry-util-http == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
+ "opentelemetry-semantic-conventions == 0.49b0.dev",
+ "opentelemetry-util-http == 0.49b0.dev",
]
[project.optional-dependencies]
diff --git a/instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/version.py b/instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/version.py
+++ b/instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/opentelemetry-contrib-instrumentations/pyproject.toml b/opentelemetry-contrib-instrumentations/pyproject.toml
index 6c7716bad2..9c40f9c2a3 100644
--- a/opentelemetry-contrib-instrumentations/pyproject.toml
+++ b/opentelemetry-contrib-instrumentations/pyproject.toml
@@ -29,53 +29,53 @@ classifiers = [
"Programming Language :: Python :: 3.12",
]
dependencies = [
- "opentelemetry-instrumentation-aio-pika==0.48b0.dev",
- "opentelemetry-instrumentation-aiohttp-client==0.48b0.dev",
- "opentelemetry-instrumentation-aiohttp-server==0.48b0.dev",
- "opentelemetry-instrumentation-aiopg==0.48b0.dev",
- "opentelemetry-instrumentation-asgi==0.48b0.dev",
- "opentelemetry-instrumentation-asyncio==0.48b0.dev",
- "opentelemetry-instrumentation-asyncpg==0.48b0.dev",
- "opentelemetry-instrumentation-aws-lambda==0.48b0.dev",
- "opentelemetry-instrumentation-boto==0.48b0.dev",
- "opentelemetry-instrumentation-boto3sqs==0.48b0.dev",
- "opentelemetry-instrumentation-botocore==0.48b0.dev",
- "opentelemetry-instrumentation-cassandra==0.48b0.dev",
- "opentelemetry-instrumentation-celery==0.48b0.dev",
- "opentelemetry-instrumentation-confluent-kafka==0.48b0.dev",
- "opentelemetry-instrumentation-dbapi==0.48b0.dev",
- "opentelemetry-instrumentation-django==0.48b0.dev",
- "opentelemetry-instrumentation-elasticsearch==0.48b0.dev",
- "opentelemetry-instrumentation-falcon==0.48b0.dev",
- "opentelemetry-instrumentation-fastapi==0.48b0.dev",
- "opentelemetry-instrumentation-flask==0.48b0.dev",
- "opentelemetry-instrumentation-grpc==0.48b0.dev",
- "opentelemetry-instrumentation-httpx==0.48b0.dev",
- "opentelemetry-instrumentation-jinja2==0.48b0.dev",
- "opentelemetry-instrumentation-kafka-python==0.48b0.dev",
- "opentelemetry-instrumentation-logging==0.48b0.dev",
- "opentelemetry-instrumentation-mysql==0.48b0.dev",
- "opentelemetry-instrumentation-mysqlclient==0.48b0.dev",
- "opentelemetry-instrumentation-pika==0.48b0.dev",
- "opentelemetry-instrumentation-psycopg==0.48b0.dev",
- "opentelemetry-instrumentation-psycopg2==0.48b0.dev",
- "opentelemetry-instrumentation-pymemcache==0.48b0.dev",
- "opentelemetry-instrumentation-pymongo==0.48b0.dev",
- "opentelemetry-instrumentation-pymysql==0.48b0.dev",
- "opentelemetry-instrumentation-pyramid==0.48b0.dev",
- "opentelemetry-instrumentation-redis==0.48b0.dev",
- "opentelemetry-instrumentation-remoulade==0.48b0.dev",
- "opentelemetry-instrumentation-requests==0.48b0.dev",
- "opentelemetry-instrumentation-sqlalchemy==0.48b0.dev",
- "opentelemetry-instrumentation-sqlite3==0.48b0.dev",
- "opentelemetry-instrumentation-starlette==0.48b0.dev",
- "opentelemetry-instrumentation-system-metrics==0.48b0.dev",
- "opentelemetry-instrumentation-threading==0.48b0.dev",
- "opentelemetry-instrumentation-tornado==0.48b0.dev",
- "opentelemetry-instrumentation-tortoiseorm==0.48b0.dev",
- "opentelemetry-instrumentation-urllib==0.48b0.dev",
- "opentelemetry-instrumentation-urllib3==0.48b0.dev",
- "opentelemetry-instrumentation-wsgi==0.48b0.dev",
+ "opentelemetry-instrumentation-aio-pika==0.49b0.dev",
+ "opentelemetry-instrumentation-aiohttp-client==0.49b0.dev",
+ "opentelemetry-instrumentation-aiohttp-server==0.49b0.dev",
+ "opentelemetry-instrumentation-aiopg==0.49b0.dev",
+ "opentelemetry-instrumentation-asgi==0.49b0.dev",
+ "opentelemetry-instrumentation-asyncio==0.49b0.dev",
+ "opentelemetry-instrumentation-asyncpg==0.49b0.dev",
+ "opentelemetry-instrumentation-aws-lambda==0.49b0.dev",
+ "opentelemetry-instrumentation-boto==0.49b0.dev",
+ "opentelemetry-instrumentation-boto3sqs==0.49b0.dev",
+ "opentelemetry-instrumentation-botocore==0.49b0.dev",
+ "opentelemetry-instrumentation-cassandra==0.49b0.dev",
+ "opentelemetry-instrumentation-celery==0.49b0.dev",
+ "opentelemetry-instrumentation-confluent-kafka==0.49b0.dev",
+ "opentelemetry-instrumentation-dbapi==0.49b0.dev",
+ "opentelemetry-instrumentation-django==0.49b0.dev",
+ "opentelemetry-instrumentation-elasticsearch==0.49b0.dev",
+ "opentelemetry-instrumentation-falcon==0.49b0.dev",
+ "opentelemetry-instrumentation-fastapi==0.49b0.dev",
+ "opentelemetry-instrumentation-flask==0.49b0.dev",
+ "opentelemetry-instrumentation-grpc==0.49b0.dev",
+ "opentelemetry-instrumentation-httpx==0.49b0.dev",
+ "opentelemetry-instrumentation-jinja2==0.49b0.dev",
+ "opentelemetry-instrumentation-kafka-python==0.49b0.dev",
+ "opentelemetry-instrumentation-logging==0.49b0.dev",
+ "opentelemetry-instrumentation-mysql==0.49b0.dev",
+ "opentelemetry-instrumentation-mysqlclient==0.49b0.dev",
+ "opentelemetry-instrumentation-pika==0.49b0.dev",
+ "opentelemetry-instrumentation-psycopg==0.49b0.dev",
+ "opentelemetry-instrumentation-psycopg2==0.49b0.dev",
+ "opentelemetry-instrumentation-pymemcache==0.49b0.dev",
+ "opentelemetry-instrumentation-pymongo==0.49b0.dev",
+ "opentelemetry-instrumentation-pymysql==0.49b0.dev",
+ "opentelemetry-instrumentation-pyramid==0.49b0.dev",
+ "opentelemetry-instrumentation-redis==0.49b0.dev",
+ "opentelemetry-instrumentation-remoulade==0.49b0.dev",
+ "opentelemetry-instrumentation-requests==0.49b0.dev",
+ "opentelemetry-instrumentation-sqlalchemy==0.49b0.dev",
+ "opentelemetry-instrumentation-sqlite3==0.49b0.dev",
+ "opentelemetry-instrumentation-starlette==0.49b0.dev",
+ "opentelemetry-instrumentation-system-metrics==0.49b0.dev",
+ "opentelemetry-instrumentation-threading==0.49b0.dev",
+ "opentelemetry-instrumentation-tornado==0.49b0.dev",
+ "opentelemetry-instrumentation-tortoiseorm==0.49b0.dev",
+ "opentelemetry-instrumentation-urllib==0.49b0.dev",
+ "opentelemetry-instrumentation-urllib3==0.49b0.dev",
+ "opentelemetry-instrumentation-wsgi==0.49b0.dev",
]
[project.urls]
diff --git a/opentelemetry-contrib-instrumentations/src/opentelemetry/contrib-instrumentations/version.py b/opentelemetry-contrib-instrumentations/src/opentelemetry/contrib-instrumentations/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/opentelemetry-contrib-instrumentations/src/opentelemetry/contrib-instrumentations/version.py
+++ b/opentelemetry-contrib-instrumentations/src/opentelemetry/contrib-instrumentations/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/opentelemetry-distro/pyproject.toml b/opentelemetry-distro/pyproject.toml
index 2397e9182a..686eeaba95 100644
--- a/opentelemetry-distro/pyproject.toml
+++ b/opentelemetry-distro/pyproject.toml
@@ -27,13 +27,13 @@ classifiers = [
]
dependencies = [
"opentelemetry-api ~= 1.12",
- "opentelemetry-instrumentation == 0.48b0.dev",
+ "opentelemetry-instrumentation == 0.49b0.dev",
"opentelemetry-sdk ~= 1.13",
]
[project.optional-dependencies]
otlp = [
- "opentelemetry-exporter-otlp == 1.27.0.dev",
+ "opentelemetry-exporter-otlp == 1.28.0.dev",
]
[project.entry-points.opentelemetry_configurator]
diff --git a/opentelemetry-distro/src/opentelemetry/distro/version.py b/opentelemetry-distro/src/opentelemetry/distro/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/opentelemetry-distro/src/opentelemetry/distro/version.py
+++ b/opentelemetry-distro/src/opentelemetry/distro/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
index c31863bd31..8c4293f261 100644
--- a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
+++ b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/bootstrap_gen.py
@@ -18,179 +18,179 @@
libraries = [
{
"library": "aio_pika >= 7.2.0, < 10.0.0",
- "instrumentation": "opentelemetry-instrumentation-aio-pika==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-aio-pika==0.49b0.dev",
},
{
"library": "aiohttp ~= 3.0",
- "instrumentation": "opentelemetry-instrumentation-aiohttp-client==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-aiohttp-client==0.49b0.dev",
},
{
"library": "aiohttp ~= 3.0",
- "instrumentation": "opentelemetry-instrumentation-aiohttp-server==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-aiohttp-server==0.49b0.dev",
},
{
"library": "aiopg >= 0.13.0, < 2.0.0",
- "instrumentation": "opentelemetry-instrumentation-aiopg==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-aiopg==0.49b0.dev",
},
{
"library": "asgiref ~= 3.0",
- "instrumentation": "opentelemetry-instrumentation-asgi==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-asgi==0.49b0.dev",
},
{
"library": "asyncpg >= 0.12.0",
- "instrumentation": "opentelemetry-instrumentation-asyncpg==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-asyncpg==0.49b0.dev",
},
{
"library": "boto~=2.0",
- "instrumentation": "opentelemetry-instrumentation-boto==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-boto==0.49b0.dev",
},
{
"library": "boto3 ~= 1.0",
- "instrumentation": "opentelemetry-instrumentation-boto3sqs==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-boto3sqs==0.49b0.dev",
},
{
"library": "botocore ~= 1.0",
- "instrumentation": "opentelemetry-instrumentation-botocore==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-botocore==0.49b0.dev",
},
{
"library": "cassandra-driver ~= 3.25",
- "instrumentation": "opentelemetry-instrumentation-cassandra==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-cassandra==0.49b0.dev",
},
{
"library": "scylla-driver ~= 3.25",
- "instrumentation": "opentelemetry-instrumentation-cassandra==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-cassandra==0.49b0.dev",
},
{
"library": "celery >= 4.0, < 6.0",
- "instrumentation": "opentelemetry-instrumentation-celery==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-celery==0.49b0.dev",
},
{
"library": "confluent-kafka >= 1.8.2, <= 2.4.0",
- "instrumentation": "opentelemetry-instrumentation-confluent-kafka==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-confluent-kafka==0.49b0.dev",
},
{
"library": "django >= 1.10",
- "instrumentation": "opentelemetry-instrumentation-django==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-django==0.49b0.dev",
},
{
"library": "elasticsearch >= 6.0",
- "instrumentation": "opentelemetry-instrumentation-elasticsearch==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-elasticsearch==0.49b0.dev",
},
{
"library": "falcon >= 1.4.1, < 3.1.2",
- "instrumentation": "opentelemetry-instrumentation-falcon==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-falcon==0.49b0.dev",
},
{
"library": "fastapi ~= 0.58",
- "instrumentation": "opentelemetry-instrumentation-fastapi==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-fastapi==0.49b0.dev",
},
{
"library": "flask >= 1.0",
- "instrumentation": "opentelemetry-instrumentation-flask==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-flask==0.49b0.dev",
},
{
"library": "grpcio ~= 1.27",
- "instrumentation": "opentelemetry-instrumentation-grpc==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-grpc==0.49b0.dev",
},
{
"library": "httpx >= 0.18.0",
- "instrumentation": "opentelemetry-instrumentation-httpx==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-httpx==0.49b0.dev",
},
{
"library": "jinja2 >= 2.7, < 4.0",
- "instrumentation": "opentelemetry-instrumentation-jinja2==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-jinja2==0.49b0.dev",
},
{
"library": "kafka-python >= 2.0, < 3.0",
- "instrumentation": "opentelemetry-instrumentation-kafka-python==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-kafka-python==0.49b0.dev",
},
{
"library": "kafka-python-ng >= 2.0, < 3.0",
- "instrumentation": "opentelemetry-instrumentation-kafka-python==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-kafka-python==0.49b0.dev",
},
{
"library": "mysql-connector-python >= 8.0, < 10.0",
- "instrumentation": "opentelemetry-instrumentation-mysql==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-mysql==0.49b0.dev",
},
{
"library": "mysqlclient < 3",
- "instrumentation": "opentelemetry-instrumentation-mysqlclient==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-mysqlclient==0.49b0.dev",
},
{
"library": "pika >= 0.12.0",
- "instrumentation": "opentelemetry-instrumentation-pika==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-pika==0.49b0.dev",
},
{
"library": "psycopg >= 3.1.0",
- "instrumentation": "opentelemetry-instrumentation-psycopg==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-psycopg==0.49b0.dev",
},
{
"library": "psycopg2 >= 2.7.3.1",
- "instrumentation": "opentelemetry-instrumentation-psycopg2==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-psycopg2==0.49b0.dev",
},
{
"library": "pymemcache >= 1.3.5, < 5",
- "instrumentation": "opentelemetry-instrumentation-pymemcache==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-pymemcache==0.49b0.dev",
},
{
"library": "pymongo >= 3.1, < 5.0",
- "instrumentation": "opentelemetry-instrumentation-pymongo==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-pymongo==0.49b0.dev",
},
{
"library": "PyMySQL < 2",
- "instrumentation": "opentelemetry-instrumentation-pymysql==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-pymysql==0.49b0.dev",
},
{
"library": "pyramid >= 1.7",
- "instrumentation": "opentelemetry-instrumentation-pyramid==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-pyramid==0.49b0.dev",
},
{
"library": "redis >= 2.6",
- "instrumentation": "opentelemetry-instrumentation-redis==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-redis==0.49b0.dev",
},
{
"library": "remoulade >= 0.50",
- "instrumentation": "opentelemetry-instrumentation-remoulade==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-remoulade==0.49b0.dev",
},
{
"library": "requests ~= 2.0",
- "instrumentation": "opentelemetry-instrumentation-requests==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-requests==0.49b0.dev",
},
{
"library": "sqlalchemy",
- "instrumentation": "opentelemetry-instrumentation-sqlalchemy==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-sqlalchemy==0.49b0.dev",
},
{
"library": "starlette ~= 0.13.0",
- "instrumentation": "opentelemetry-instrumentation-starlette==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-starlette==0.49b0.dev",
},
{
"library": "psutil >= 5",
- "instrumentation": "opentelemetry-instrumentation-system-metrics==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-system-metrics==0.49b0.dev",
},
{
"library": "tornado >= 5.1.1",
- "instrumentation": "opentelemetry-instrumentation-tornado==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-tornado==0.49b0.dev",
},
{
"library": "tortoise-orm >= 0.17.0",
- "instrumentation": "opentelemetry-instrumentation-tortoiseorm==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-tortoiseorm==0.49b0.dev",
},
{
"library": "pydantic >= 1.10.2",
- "instrumentation": "opentelemetry-instrumentation-tortoiseorm==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-tortoiseorm==0.49b0.dev",
},
{
"library": "urllib3 >= 1.0.0, < 3.0.0",
- "instrumentation": "opentelemetry-instrumentation-urllib3==0.48b0.dev",
+ "instrumentation": "opentelemetry-instrumentation-urllib3==0.49b0.dev",
},
]
default_instrumentations = [
- "opentelemetry-instrumentation-asyncio==0.48b0.dev",
- "opentelemetry-instrumentation-dbapi==0.48b0.dev",
- "opentelemetry-instrumentation-logging==0.48b0.dev",
- "opentelemetry-instrumentation-sqlite3==0.48b0.dev",
- "opentelemetry-instrumentation-threading==0.48b0.dev",
- "opentelemetry-instrumentation-urllib==0.48b0.dev",
- "opentelemetry-instrumentation-wsgi==0.48b0.dev",
+ "opentelemetry-instrumentation-asyncio==0.49b0.dev",
+ "opentelemetry-instrumentation-dbapi==0.49b0.dev",
+ "opentelemetry-instrumentation-logging==0.49b0.dev",
+ "opentelemetry-instrumentation-sqlite3==0.49b0.dev",
+ "opentelemetry-instrumentation-threading==0.49b0.dev",
+ "opentelemetry-instrumentation-urllib==0.49b0.dev",
+ "opentelemetry-instrumentation-wsgi==0.49b0.dev",
]
diff --git a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/version.py b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/opentelemetry-instrumentation/src/opentelemetry/instrumentation/version.py
+++ b/opentelemetry-instrumentation/src/opentelemetry/instrumentation/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/processor/opentelemetry-processor-baggage/src/opentelemetry/processor/baggage/version.py b/processor/opentelemetry-processor-baggage/src/opentelemetry/processor/baggage/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/processor/opentelemetry-processor-baggage/src/opentelemetry/processor/baggage/version.py
+++ b/processor/opentelemetry-processor-baggage/src/opentelemetry/processor/baggage/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/propagator/opentelemetry-propagator-ot-trace/src/opentelemetry/propagators/ot_trace/version.py b/propagator/opentelemetry-propagator-ot-trace/src/opentelemetry/propagators/ot_trace/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/propagator/opentelemetry-propagator-ot-trace/src/opentelemetry/propagators/ot_trace/version.py
+++ b/propagator/opentelemetry-propagator-ot-trace/src/opentelemetry/propagators/ot_trace/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/resource/opentelemetry-resource-detector-container/src/opentelemetry/resource/detector/container/version.py b/resource/opentelemetry-resource-detector-container/src/opentelemetry/resource/detector/container/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/resource/opentelemetry-resource-detector-container/src/opentelemetry/resource/detector/container/version.py
+++ b/resource/opentelemetry-resource-detector-container/src/opentelemetry/resource/detector/container/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
diff --git a/util/opentelemetry-util-http/src/opentelemetry/util/http/version.py b/util/opentelemetry-util-http/src/opentelemetry/util/http/version.py
index 4d21fcb843..ee5a6342e7 100644
--- a/util/opentelemetry-util-http/src/opentelemetry/util/http/version.py
+++ b/util/opentelemetry-util-http/src/opentelemetry/util/http/version.py
@@ -12,4 +12,4 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-__version__ = "0.48b0.dev"
+__version__ = "0.49b0.dev"
From f8a4f1ebf8b22a983c4bc8937268c2fc2b61beb9 Mon Sep 17 00:00:00 2001
From: OpenTelemetry Bot <107717825+opentelemetrybot@users.noreply.github.com>
Date: Wed, 28 Aug 2024 17:54:08 -0500
Subject: [PATCH 17/26] Copy change log updates from release/v1.27.x-0.48bx
(#2839)
---
CHANGELOG.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2a18ea7858..d4c03d3b38 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -7,7 +7,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## Unreleased
-## Version 1.27.0/0.48b0 (2024-08-26)
+## Version 1.27.0/0.48b0 ()
### Added
From f7878e761373f70a67acac1c8efa16e89b9c1974 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Em=C3=ADdio=20Neto?=
<9735060+emdneto@users.noreply.github.com>
Date: Thu, 29 Aug 2024 14:07:04 -0300
Subject: [PATCH 18/26] fix core repo sha in workflows (#2842)
---
.github/workflows/lint_0.yml | 2 +-
.github/workflows/misc_0.yml | 2 +-
.github/workflows/test_0.yml | 2 +-
.github/workflows/test_1.yml | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/lint_0.yml b/.github/workflows/lint_0.yml
index fa4f2e981a..b5d20541e5 100644
--- a/.github/workflows/lint_0.yml
+++ b/.github/workflows/lint_0.yml
@@ -10,7 +10,7 @@ on:
pull_request:
env:
- CORE_REPO_SHA: 8368b6305b4246aafa4ffa7d4890a692d1010b6e
+ CORE_REPO_SHA: main
CONTRIB_REPO_SHA: main
PIP_EXISTS_ACTION: w
diff --git a/.github/workflows/misc_0.yml b/.github/workflows/misc_0.yml
index 51cb5afea0..3c3f7bfacf 100644
--- a/.github/workflows/misc_0.yml
+++ b/.github/workflows/misc_0.yml
@@ -10,7 +10,7 @@ on:
pull_request:
env:
- CORE_REPO_SHA: 8368b6305b4246aafa4ffa7d4890a692d1010b6e
+ CORE_REPO_SHA: main
CONTRIB_REPO_SHA: main
PIP_EXISTS_ACTION: w
diff --git a/.github/workflows/test_0.yml b/.github/workflows/test_0.yml
index d216e840ae..d251737227 100644
--- a/.github/workflows/test_0.yml
+++ b/.github/workflows/test_0.yml
@@ -10,7 +10,7 @@ on:
pull_request:
env:
- CORE_REPO_SHA: 8368b6305b4246aafa4ffa7d4890a692d1010b6e
+ CORE_REPO_SHA: main
CONTRIB_REPO_SHA: main
PIP_EXISTS_ACTION: w
diff --git a/.github/workflows/test_1.yml b/.github/workflows/test_1.yml
index dc3afb6464..f7e71dd6b6 100644
--- a/.github/workflows/test_1.yml
+++ b/.github/workflows/test_1.yml
@@ -10,7 +10,7 @@ on:
pull_request:
env:
- CORE_REPO_SHA: 8368b6305b4246aafa4ffa7d4890a692d1010b6e
+ CORE_REPO_SHA: main
CONTRIB_REPO_SHA: main
PIP_EXISTS_ACTION: w
From 98958b6f1ef09d332e13ea1d7bc308f8e9edd351 Mon Sep 17 00:00:00 2001
From: JianQiao
Date: Fri, 30 Aug 2024 18:42:33 +0800
Subject: [PATCH 19/26] Fix description of http.server.duration and
http.server.request.duration (#2817)
* fix httpserverduration and httpserverrequestduration
Signed-off-by: Steven Pan
* add change log
---------
Signed-off-by: Steven Pan
---
CHANGELOG.md | 2 ++
.../instrumentation/aiohttp_server/__init__.py | 2 +-
.../src/opentelemetry/instrumentation/asgi/__init__.py | 2 +-
.../src/opentelemetry/instrumentation/django/__init__.py | 2 +-
.../src/opentelemetry/instrumentation/falcon/__init__.py | 2 +-
.../src/opentelemetry/instrumentation/flask/__init__.py | 8 ++++----
.../opentelemetry/instrumentation/pyramid/callbacks.py | 2 +-
.../src/opentelemetry/instrumentation/tornado/__init__.py | 2 +-
.../src/opentelemetry/instrumentation/wsgi/__init__.py | 4 ++--
9 files changed, 14 insertions(+), 12 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index d4c03d3b38..003f8054f6 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -46,6 +46,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
([#2563](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2563))
- `opentelemetry-instrumentation` fix `http.host` new http semantic convention mapping to depend on `kind` of span
([#2814](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2814))
+- `opentelemetry-instrumentation` Fix the description of `http.server.duration` and `http.server.request.duration`
+ ([#2753](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/2753))
## Version 1.26.0/0.47b0 (2024-07-23)
diff --git a/instrumentation/opentelemetry-instrumentation-aiohttp-server/src/opentelemetry/instrumentation/aiohttp_server/__init__.py b/instrumentation/opentelemetry-instrumentation-aiohttp-server/src/opentelemetry/instrumentation/aiohttp_server/__init__.py
index 659ff24af6..6db7719c76 100644
--- a/instrumentation/opentelemetry-instrumentation-aiohttp-server/src/opentelemetry/instrumentation/aiohttp_server/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-aiohttp-server/src/opentelemetry/instrumentation/aiohttp_server/__init__.py
@@ -207,7 +207,7 @@ async def middleware(request, handler):
duration_histogram = meter.create_histogram(
name=MetricInstruments.HTTP_SERVER_DURATION,
unit="ms",
- description="Duration of HTTP server requests.",
+ description="Measures the duration of inbound HTTP requests.",
)
active_requests_counter = meter.create_up_down_counter(
diff --git a/instrumentation/opentelemetry-instrumentation-asgi/src/opentelemetry/instrumentation/asgi/__init__.py b/instrumentation/opentelemetry-instrumentation-asgi/src/opentelemetry/instrumentation/asgi/__init__.py
index 295eb2a043..420fd512d6 100644
--- a/instrumentation/opentelemetry-instrumentation-asgi/src/opentelemetry/instrumentation/asgi/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-asgi/src/opentelemetry/instrumentation/asgi/__init__.py
@@ -579,7 +579,7 @@ def __init__(
self.duration_histogram_old = self.meter.create_histogram(
name=MetricInstruments.HTTP_SERVER_DURATION,
unit="ms",
- description="Duration of HTTP server requests.",
+ description="Measures the duration of inbound HTTP requests.",
)
self.duration_histogram_new = None
if _report_new(sem_conv_opt_in_mode):
diff --git a/instrumentation/opentelemetry-instrumentation-django/src/opentelemetry/instrumentation/django/__init__.py b/instrumentation/opentelemetry-instrumentation-django/src/opentelemetry/instrumentation/django/__init__.py
index 651df12043..d37c45993c 100644
--- a/instrumentation/opentelemetry-instrumentation-django/src/opentelemetry/instrumentation/django/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-django/src/opentelemetry/instrumentation/django/__init__.py
@@ -344,7 +344,7 @@ def _instrument(self, **kwargs):
_DjangoMiddleware._duration_histogram_old = meter.create_histogram(
name=MetricInstruments.HTTP_SERVER_DURATION,
unit="ms",
- description="Duration of HTTP server requests.",
+ description="Measures the duration of inbound HTTP requests.",
)
_DjangoMiddleware._duration_histogram_new = None
if _report_new(sem_conv_opt_in_mode):
diff --git a/instrumentation/opentelemetry-instrumentation-falcon/src/opentelemetry/instrumentation/falcon/__init__.py b/instrumentation/opentelemetry-instrumentation-falcon/src/opentelemetry/instrumentation/falcon/__init__.py
index 1a252b9a16..2dce5f1ef5 100644
--- a/instrumentation/opentelemetry-instrumentation-falcon/src/opentelemetry/instrumentation/falcon/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-falcon/src/opentelemetry/instrumentation/falcon/__init__.py
@@ -268,7 +268,7 @@ def __init__(self, *args, **kwargs):
self.duration_histogram = self._otel_meter.create_histogram(
name=MetricInstruments.HTTP_SERVER_DURATION,
unit="ms",
- description="Duration of HTTP server requests.",
+ description="Measures the duration of inbound HTTP requests.",
)
self.active_requests_counter = self._otel_meter.create_up_down_counter(
name=MetricInstruments.HTTP_SERVER_ACTIVE_REQUESTS,
diff --git a/instrumentation/opentelemetry-instrumentation-flask/src/opentelemetry/instrumentation/flask/__init__.py b/instrumentation/opentelemetry-instrumentation-flask/src/opentelemetry/instrumentation/flask/__init__.py
index 0093715ae1..192e044655 100644
--- a/instrumentation/opentelemetry-instrumentation-flask/src/opentelemetry/instrumentation/flask/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-flask/src/opentelemetry/instrumentation/flask/__init__.py
@@ -568,14 +568,14 @@ def __init__(self, *args, **kwargs):
duration_histogram_old = meter.create_histogram(
name=MetricInstruments.HTTP_SERVER_DURATION,
unit="ms",
- description="measures the duration of the inbound HTTP request",
+ description="Measures the duration of inbound HTTP requests.",
)
duration_histogram_new = None
if _report_new(_InstrumentedFlask._sem_conv_opt_in_mode):
duration_histogram_new = meter.create_histogram(
name=HTTP_SERVER_REQUEST_DURATION,
unit="s",
- description="measures the duration of the inbound HTTP request",
+ description="Duration of HTTP server requests.",
)
active_requests_counter = meter.create_up_down_counter(
name=MetricInstruments.HTTP_SERVER_ACTIVE_REQUESTS,
@@ -701,14 +701,14 @@ def instrument_app(
duration_histogram_old = meter.create_histogram(
name=MetricInstruments.HTTP_SERVER_DURATION,
unit="ms",
- description="measures the duration of the inbound HTTP request",
+ description="Measures the duration of inbound HTTP requests.",
)
duration_histogram_new = None
if _report_new(sem_conv_opt_in_mode):
duration_histogram_new = meter.create_histogram(
name=HTTP_SERVER_REQUEST_DURATION,
unit="s",
- description="measures the duration of the inbound HTTP request",
+ description="Duration of HTTP server requests.",
)
active_requests_counter = meter.create_up_down_counter(
name=MetricInstruments.HTTP_SERVER_ACTIVE_REQUESTS,
diff --git a/instrumentation/opentelemetry-instrumentation-pyramid/src/opentelemetry/instrumentation/pyramid/callbacks.py b/instrumentation/opentelemetry-instrumentation-pyramid/src/opentelemetry/instrumentation/pyramid/callbacks.py
index 09f1645384..6a526f2235 100644
--- a/instrumentation/opentelemetry-instrumentation-pyramid/src/opentelemetry/instrumentation/pyramid/callbacks.py
+++ b/instrumentation/opentelemetry-instrumentation-pyramid/src/opentelemetry/instrumentation/pyramid/callbacks.py
@@ -141,7 +141,7 @@ def trace_tween_factory(handler, registry):
duration_histogram = meter.create_histogram(
name=MetricInstruments.HTTP_SERVER_DURATION,
unit="ms",
- description="Duration of HTTP server requests.",
+ description="Measures the duration of inbound HTTP requests.",
)
active_requests_counter = meter.create_up_down_counter(
name=MetricInstruments.HTTP_SERVER_ACTIVE_REQUESTS,
diff --git a/instrumentation/opentelemetry-instrumentation-tornado/src/opentelemetry/instrumentation/tornado/__init__.py b/instrumentation/opentelemetry-instrumentation-tornado/src/opentelemetry/instrumentation/tornado/__init__.py
index 1b56db3876..0b5e06b526 100644
--- a/instrumentation/opentelemetry-instrumentation-tornado/src/opentelemetry/instrumentation/tornado/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-tornado/src/opentelemetry/instrumentation/tornado/__init__.py
@@ -296,7 +296,7 @@ def _create_server_histograms(meter) -> Dict[str, Histogram]:
MetricInstruments.HTTP_SERVER_DURATION: meter.create_histogram(
name=MetricInstruments.HTTP_SERVER_DURATION,
unit="ms",
- description="Duration of HTTP server requests.",
+ description="Measures the duration of inbound HTTP requests.",
),
MetricInstruments.HTTP_SERVER_REQUEST_SIZE: meter.create_histogram(
name=MetricInstruments.HTTP_SERVER_REQUEST_SIZE,
diff --git a/instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/__init__.py b/instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/__init__.py
index 88704f35ab..c0384d594b 100644
--- a/instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/__init__.py
@@ -571,14 +571,14 @@ def __init__(
self.duration_histogram_old = self.meter.create_histogram(
name=MetricInstruments.HTTP_SERVER_DURATION,
unit="ms",
- description="measures the duration of the inbound HTTP request",
+ description="Measures the duration of inbound HTTP requests.",
)
self.duration_histogram_new = None
if _report_new(sem_conv_opt_in_mode):
self.duration_histogram_new = self.meter.create_histogram(
name=HTTP_SERVER_REQUEST_DURATION,
unit="s",
- description="measures the duration of the inbound HTTP request",
+ description="Duration of HTTP server requests.",
)
# We don't need a separate active request counter for old/new semantic conventions
# because the new attributes are a subset of the old attributes
From f5868df7f898d5134d8e38b81ee99b5a2d04bc36 Mon Sep 17 00:00:00 2001
From: Karoline Pauls <43616133+karolinepauls@users.noreply.github.com>
Date: Mon, 2 Sep 2024 16:06:57 +0100
Subject: [PATCH 20/26] opentelemetry-instrumentation-asyncio: package name
typo (#2844)
---
.../src/opentelemetry/instrumentation/asyncio/__init__.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/instrumentation/opentelemetry-instrumentation-asyncio/src/opentelemetry/instrumentation/asyncio/__init__.py b/instrumentation/opentelemetry-instrumentation-asyncio/src/opentelemetry/instrumentation/asyncio/__init__.py
index ae10560861..e83f384a8c 100644
--- a/instrumentation/opentelemetry-instrumentation-asyncio/src/opentelemetry/instrumentation/asyncio/__init__.py
+++ b/instrumentation/opentelemetry-instrumentation-asyncio/src/opentelemetry/instrumentation/asyncio/__init__.py
@@ -14,7 +14,7 @@
"""
.. asyncio: https://github.com/python/asyncio
-The opentelemetry-instrumentation-asycnio package allows tracing asyncio applications.
+The opentelemetry-instrumentation-asyncio package allows tracing asyncio applications.
The metric for coroutine, future, is generated even if there is no setting to generate a span.
Run instrumented application
From 40c3363e9d30dbafac81f7ee43576552050e5b06 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Em=C3=ADdio=20Neto?=
<9735060+emdneto@users.noreply.github.com>
Date: Tue, 3 Sep 2024 16:28:53 -0300
Subject: [PATCH 21/26] bump asgiref to 3.8.1 in test-requirements (#2841)
Co-authored-by: Riccardo Magliocchetti
---
.../test-requirements.txt | 2 +-
.../opentelemetry-exporter-richconsole/test-requirements.txt | 2 +-
.../test-requirements-0.txt | 2 +-
.../test-requirements-1.txt | 2 +-
.../test-requirements-2.txt | 2 +-
.../test-requirements-3.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../opentelemetry-instrumentation-aiopg/test-requirements.txt | 2 +-
.../opentelemetry-instrumentation-asgi/test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../opentelemetry-instrumentation-boto/test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements-0.txt | 2 +-
.../test-requirements-1.txt | 2 +-
.../test-requirements.txt | 2 +-
.../opentelemetry-instrumentation-dbapi/test-requirements.txt | 2 +-
.../test-requirements-0.txt | 2 +-
.../test-requirements-1.txt | 2 +-
.../test-requirements-2.txt | 2 +-
.../test-requirements-3.txt | 2 +-
.../test-requirements-0.txt | 2 +-
.../test-requirements-1.txt | 2 +-
.../test-requirements-2.txt | 2 +-
.../test-requirements-0.txt | 2 +-
.../test-requirements-1.txt | 2 +-
.../test-requirements-2.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements-0.txt | 2 +-
.../test-requirements-1.txt | 2 +-
.../test-requirements-2.txt | 2 +-
.../test-requirements-0.txt | 2 +-
.../test-requirements-1.txt | 2 +-
.../test-requirements-0.txt | 2 +-
.../test-requirements-1.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements-ng.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements-0.txt | 2 +-
.../test-requirements-1.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements-0.txt | 2 +-
.../test-requirements-1.txt | 2 +-
.../test-requirements-0.txt | 2 +-
.../test-requirements-1.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements-0.txt | 2 +-
.../test-requirements-1.txt | 2 +-
.../test-requirements-2.txt | 2 +-
.../test-requirements-3.txt | 2 +-
.../test-requirements-4.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../opentelemetry-instrumentation-redis/test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements-0.txt | 2 +-
.../test-requirements-1.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements-0.txt | 2 +-
.../test-requirements-1.txt | 2 +-
.../opentelemetry-instrumentation-wsgi/test-requirements.txt | 2 +-
opentelemetry-distro/test-requirements.txt | 2 +-
opentelemetry-instrumentation/test-requirements.txt | 2 +-
.../opentelemetry-propagator-aws-xray/test-requirements.txt | 2 +-
.../opentelemetry-propagator-ot-trace/test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../test-requirements.txt | 2 +-
.../opentelemetry-sdk-extension-aws/test-requirements.txt | 2 +-
tox.ini | 2 +-
util/opentelemetry-util-http/test-requirements.txt | 4 ++--
83 files changed, 84 insertions(+), 84 deletions(-)
diff --git a/exporter/opentelemetry-exporter-prometheus-remote-write/test-requirements.txt b/exporter/opentelemetry-exporter-prometheus-remote-write/test-requirements.txt
index f7e66ddd13..5836dc9764 100644
--- a/exporter/opentelemetry-exporter-prometheus-remote-write/test-requirements.txt
+++ b/exporter/opentelemetry-exporter-prometheus-remote-write/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
certifi==2024.7.4
charset-normalizer==3.3.2
# We can drop this after bumping baseline to pypy-39
diff --git a/exporter/opentelemetry-exporter-richconsole/test-requirements.txt b/exporter/opentelemetry-exporter-richconsole/test-requirements.txt
index dee47c7880..0ef562821f 100644
--- a/exporter/opentelemetry-exporter-richconsole/test-requirements.txt
+++ b/exporter/opentelemetry-exporter-richconsole/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
flaky==3.7.0
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-0.txt b/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-0.txt
index a08f6427db..de853e16c9 100644
--- a/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-0.txt
+++ b/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-0.txt
@@ -1,6 +1,6 @@
aio-pika==7.2.0
aiormq==6.2.3
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
idna==3.7
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-1.txt b/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-1.txt
index 99b5fdfd1f..dbfb89fe82 100644
--- a/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-1.txt
+++ b/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-1.txt
@@ -1,6 +1,6 @@
aio-pika==8.3.0
aiormq==6.6.4
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
idna==3.7
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-2.txt b/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-2.txt
index 7051299461..6a95bd69f0 100644
--- a/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-2.txt
+++ b/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-2.txt
@@ -1,6 +1,6 @@
aio-pika==9.0.5
aiormq==6.7.1
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
idna==3.7
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-3.txt b/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-3.txt
index de5e8b310f..82e742a1f4 100644
--- a/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-3.txt
+++ b/instrumentation/opentelemetry-instrumentation-aio-pika/test-requirements-3.txt
@@ -1,6 +1,6 @@
aio-pika==9.4.1
aiormq==6.8.0
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
idna==3.7
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-aiohttp-client/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-aiohttp-client/test-requirements.txt
index be0311238f..dee4736133 100644
--- a/instrumentation/opentelemetry-instrumentation-aiohttp-client/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-aiohttp-client/test-requirements.txt
@@ -1,6 +1,6 @@
aiohttp==3.10.2
aiosignal==1.3.1
-asgiref==3.7.2
+asgiref==3.8.1
async-timeout==4.0.3
blinker==1.7.0
certifi==2024.7.4
diff --git a/instrumentation/opentelemetry-instrumentation-aiohttp-server/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-aiohttp-server/test-requirements.txt
index 9cd6a3c111..e6dff52db9 100644
--- a/instrumentation/opentelemetry-instrumentation-aiohttp-server/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-aiohttp-server/test-requirements.txt
@@ -1,6 +1,6 @@
aiohttp==3.10.2
aiosignal==1.3.1
-asgiref==3.7.2
+asgiref==3.8.1
async-timeout==4.0.3
Deprecated==1.2.14
frozenlist==1.4.1
diff --git a/instrumentation/opentelemetry-instrumentation-aiopg/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-aiopg/test-requirements.txt
index bc61c3d6fc..1443104081 100644
--- a/instrumentation/opentelemetry-instrumentation-aiopg/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-aiopg/test-requirements.txt
@@ -1,5 +1,5 @@
aiopg==1.4.0
-asgiref==3.7.2
+asgiref==3.8.1
async-timeout==4.0.3
Deprecated==1.2.14
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-asgi/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-asgi/test-requirements.txt
index ebe439d1d2..18a11500e1 100644
--- a/instrumentation/opentelemetry-instrumentation-asgi/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-asgi/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-asyncio/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-asyncio/test-requirements.txt
index a196e8d4e3..7f20d1497c 100644
--- a/instrumentation/opentelemetry-instrumentation-asyncio/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-asyncio/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-asyncpg/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-asyncpg/test-requirements.txt
index badc61cde8..60cef50a7a 100644
--- a/instrumentation/opentelemetry-instrumentation-asyncpg/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-asyncpg/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
async-timeout==4.0.3
asyncpg==0.29.0
Deprecated==1.2.14
diff --git a/instrumentation/opentelemetry-instrumentation-aws-lambda/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-aws-lambda/test-requirements.txt
index 6540349a2e..8d9fe19483 100644
--- a/instrumentation/opentelemetry-instrumentation-aws-lambda/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-aws-lambda/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-boto/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-boto/test-requirements.txt
index ab4819b538..fe6467d1c4 100644
--- a/instrumentation/opentelemetry-instrumentation-boto/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-boto/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
boto==2.49.0
boto3==1.34.44
botocore==1.34.44
diff --git a/instrumentation/opentelemetry-instrumentation-boto3sqs/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-boto3sqs/test-requirements.txt
index c5942b6a72..d8a9c38315 100644
--- a/instrumentation/opentelemetry-instrumentation-boto3sqs/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-boto3sqs/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
boto3==1.34.44
botocore==1.34.44
Deprecated==1.2.14
diff --git a/instrumentation/opentelemetry-instrumentation-botocore/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-botocore/test-requirements.txt
index e45fa6ba44..a89fdf2e30 100644
--- a/instrumentation/opentelemetry-instrumentation-botocore/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-botocore/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
aws-xray-sdk==2.12.1
boto3==1.28.80
botocore==1.31.80
diff --git a/instrumentation/opentelemetry-instrumentation-cassandra/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-cassandra/test-requirements.txt
index dc2090627d..189b2f65d0 100644
--- a/instrumentation/opentelemetry-instrumentation-cassandra/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-cassandra/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
cassandra-driver==3.29.0
click==8.1.7
Deprecated==1.2.14
diff --git a/instrumentation/opentelemetry-instrumentation-celery/test-requirements-0.txt b/instrumentation/opentelemetry-instrumentation-celery/test-requirements-0.txt
index 401921f5e4..fcf838fc32 100644
--- a/instrumentation/opentelemetry-instrumentation-celery/test-requirements-0.txt
+++ b/instrumentation/opentelemetry-instrumentation-celery/test-requirements-0.txt
@@ -1,5 +1,5 @@
amqp==5.2.0
-asgiref==3.7.2
+asgiref==3.8.1
backports.zoneinfo==0.2.1
billiard==4.2.0
celery==5.3.6
diff --git a/instrumentation/opentelemetry-instrumentation-celery/test-requirements-1.txt b/instrumentation/opentelemetry-instrumentation-celery/test-requirements-1.txt
index 1c5aad2c07..76b2f03d12 100644
--- a/instrumentation/opentelemetry-instrumentation-celery/test-requirements-1.txt
+++ b/instrumentation/opentelemetry-instrumentation-celery/test-requirements-1.txt
@@ -1,5 +1,5 @@
amqp==5.2.0
-asgiref==3.7.2
+asgiref==3.8.1
billiard==4.2.0
celery==5.3.6
click==8.1.7
diff --git a/instrumentation/opentelemetry-instrumentation-confluent-kafka/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-confluent-kafka/test-requirements.txt
index 5400e507f5..f78f498620 100644
--- a/instrumentation/opentelemetry-instrumentation-confluent-kafka/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-confluent-kafka/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
confluent-kafka==2.4.0
Deprecated==1.2.14
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-dbapi/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-dbapi/test-requirements.txt
index 0d98d28069..f76b488d90 100644
--- a/instrumentation/opentelemetry-instrumentation-dbapi/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-dbapi/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-django/test-requirements-0.txt b/instrumentation/opentelemetry-instrumentation-django/test-requirements-0.txt
index 5f22f2cadb..9d7ee964fe 100644
--- a/instrumentation/opentelemetry-instrumentation-django/test-requirements-0.txt
+++ b/instrumentation/opentelemetry-instrumentation-django/test-requirements-0.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
Django==2.2.28
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-django/test-requirements-1.txt b/instrumentation/opentelemetry-instrumentation-django/test-requirements-1.txt
index 0a042a1bf5..9c21d2dfd4 100644
--- a/instrumentation/opentelemetry-instrumentation-django/test-requirements-1.txt
+++ b/instrumentation/opentelemetry-instrumentation-django/test-requirements-1.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
Django==3.2.25
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-django/test-requirements-2.txt b/instrumentation/opentelemetry-instrumentation-django/test-requirements-2.txt
index 4f49efb39e..d3a55aae34 100644
--- a/instrumentation/opentelemetry-instrumentation-django/test-requirements-2.txt
+++ b/instrumentation/opentelemetry-instrumentation-django/test-requirements-2.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
backports.zoneinfo==0.2.1
Deprecated==1.2.14
Django==4.2.15
diff --git a/instrumentation/opentelemetry-instrumentation-django/test-requirements-3.txt b/instrumentation/opentelemetry-instrumentation-django/test-requirements-3.txt
index 9be1266014..89923379d3 100644
--- a/instrumentation/opentelemetry-instrumentation-django/test-requirements-3.txt
+++ b/instrumentation/opentelemetry-instrumentation-django/test-requirements-3.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
Django==4.2.15
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-0.txt b/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-0.txt
index 07ea98e4d6..55eabe1ef5 100644
--- a/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-0.txt
+++ b/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-0.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
elasticsearch==6.8.2
elasticsearch-dsl==6.4.0
diff --git a/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-1.txt b/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-1.txt
index 228601485d..2fab7287ad 100644
--- a/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-1.txt
+++ b/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-1.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
elasticsearch==7.17.9
elasticsearch-dsl==7.4.1
diff --git a/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-2.txt b/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-2.txt
index 272675c119..5f2ccd41ac 100644
--- a/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-2.txt
+++ b/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-2.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
elasticsearch==8.13.1
elasticsearch-dsl==8.13.1
diff --git a/instrumentation/opentelemetry-instrumentation-falcon/test-requirements-0.txt b/instrumentation/opentelemetry-instrumentation-falcon/test-requirements-0.txt
index d0f6381b42..6967c57b6d 100644
--- a/instrumentation/opentelemetry-instrumentation-falcon/test-requirements-0.txt
+++ b/instrumentation/opentelemetry-instrumentation-falcon/test-requirements-0.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
falcon==1.4.1
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-falcon/test-requirements-1.txt b/instrumentation/opentelemetry-instrumentation-falcon/test-requirements-1.txt
index 5a84f224f1..e535925b14 100644
--- a/instrumentation/opentelemetry-instrumentation-falcon/test-requirements-1.txt
+++ b/instrumentation/opentelemetry-instrumentation-falcon/test-requirements-1.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
falcon==2.0.0
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-falcon/test-requirements-2.txt b/instrumentation/opentelemetry-instrumentation-falcon/test-requirements-2.txt
index 0790e8a4cb..30d21e2773 100644
--- a/instrumentation/opentelemetry-instrumentation-falcon/test-requirements-2.txt
+++ b/instrumentation/opentelemetry-instrumentation-falcon/test-requirements-2.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
falcon==3.1.1
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-fastapi/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-fastapi/test-requirements.txt
index 00242d5410..927e68f94e 100644
--- a/instrumentation/opentelemetry-instrumentation-fastapi/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-fastapi/test-requirements.txt
@@ -1,6 +1,6 @@
annotated-types==0.6.0
anyio==4.3.0
-asgiref==3.7.2
+asgiref==3.8.1
certifi==2024.7.4
charset-normalizer==3.3.2
Deprecated==1.2.14
diff --git a/instrumentation/opentelemetry-instrumentation-flask/test-requirements-0.txt b/instrumentation/opentelemetry-instrumentation-flask/test-requirements-0.txt
index a222e011a7..0bd176848d 100644
--- a/instrumentation/opentelemetry-instrumentation-flask/test-requirements-0.txt
+++ b/instrumentation/opentelemetry-instrumentation-flask/test-requirements-0.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
click==8.1.7
Deprecated==1.2.14
Flask==2.1.3
diff --git a/instrumentation/opentelemetry-instrumentation-flask/test-requirements-1.txt b/instrumentation/opentelemetry-instrumentation-flask/test-requirements-1.txt
index e799218273..d73ab497b5 100644
--- a/instrumentation/opentelemetry-instrumentation-flask/test-requirements-1.txt
+++ b/instrumentation/opentelemetry-instrumentation-flask/test-requirements-1.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
click==8.1.7
Deprecated==1.2.14
Flask==2.2.0
diff --git a/instrumentation/opentelemetry-instrumentation-flask/test-requirements-2.txt b/instrumentation/opentelemetry-instrumentation-flask/test-requirements-2.txt
index 91ae64700c..299a347d66 100644
--- a/instrumentation/opentelemetry-instrumentation-flask/test-requirements-2.txt
+++ b/instrumentation/opentelemetry-instrumentation-flask/test-requirements-2.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
blinker==1.7.0
click==8.1.7
Deprecated==1.2.14
diff --git a/instrumentation/opentelemetry-instrumentation-grpc/test-requirements-0.txt b/instrumentation/opentelemetry-instrumentation-grpc/test-requirements-0.txt
index 457c285715..83ec6e8e70 100644
--- a/instrumentation/opentelemetry-instrumentation-grpc/test-requirements-0.txt
+++ b/instrumentation/opentelemetry-instrumentation-grpc/test-requirements-0.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
grpcio==1.62.0
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-grpc/test-requirements-1.txt b/instrumentation/opentelemetry-instrumentation-grpc/test-requirements-1.txt
index 221359e184..d77d67148a 100644
--- a/instrumentation/opentelemetry-instrumentation-grpc/test-requirements-1.txt
+++ b/instrumentation/opentelemetry-instrumentation-grpc/test-requirements-1.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
grpcio==1.63.0
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-httpx/test-requirements-0.txt b/instrumentation/opentelemetry-instrumentation-httpx/test-requirements-0.txt
index 35ebe6b954..28b475a3a4 100644
--- a/instrumentation/opentelemetry-instrumentation-httpx/test-requirements-0.txt
+++ b/instrumentation/opentelemetry-instrumentation-httpx/test-requirements-0.txt
@@ -1,5 +1,5 @@
anyio==3.7.1
-asgiref==3.7.2
+asgiref==3.8.1
certifi==2024.7.4
Deprecated==1.2.14
exceptiongroup==1.2.0
diff --git a/instrumentation/opentelemetry-instrumentation-httpx/test-requirements-1.txt b/instrumentation/opentelemetry-instrumentation-httpx/test-requirements-1.txt
index c70677f06b..42c032a546 100644
--- a/instrumentation/opentelemetry-instrumentation-httpx/test-requirements-1.txt
+++ b/instrumentation/opentelemetry-instrumentation-httpx/test-requirements-1.txt
@@ -1,5 +1,5 @@
anyio==4.3.0
-asgiref==3.7.2
+asgiref==3.8.1
certifi==2024.7.4
Deprecated==1.2.14
exceptiongroup==1.2.0
diff --git a/instrumentation/opentelemetry-instrumentation-jinja2/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-jinja2/test-requirements.txt
index 05d94d6fb0..59eabe6997 100644
--- a/instrumentation/opentelemetry-instrumentation-jinja2/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-jinja2/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-kafka-python/test-requirements-ng.txt b/instrumentation/opentelemetry-instrumentation-kafka-python/test-requirements-ng.txt
index 7b587031ec..05e169a7e3 100644
--- a/instrumentation/opentelemetry-instrumentation-kafka-python/test-requirements-ng.txt
+++ b/instrumentation/opentelemetry-instrumentation-kafka-python/test-requirements-ng.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-kafka-python/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-kafka-python/test-requirements.txt
index 4adc515de7..6582cf875b 100644
--- a/instrumentation/opentelemetry-instrumentation-kafka-python/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-kafka-python/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-logging/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-logging/test-requirements.txt
index eca8ce5f34..c0d2f044c8 100644
--- a/instrumentation/opentelemetry-instrumentation-logging/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-logging/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-mysql/test-requirements-0.txt b/instrumentation/opentelemetry-instrumentation-mysql/test-requirements-0.txt
index 75ee9797b8..bf93434850 100644
--- a/instrumentation/opentelemetry-instrumentation-mysql/test-requirements-0.txt
+++ b/instrumentation/opentelemetry-instrumentation-mysql/test-requirements-0.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-mysql/test-requirements-1.txt b/instrumentation/opentelemetry-instrumentation-mysql/test-requirements-1.txt
index dd609e594a..1a58c16a05 100644
--- a/instrumentation/opentelemetry-instrumentation-mysql/test-requirements-1.txt
+++ b/instrumentation/opentelemetry-instrumentation-mysql/test-requirements-1.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-mysqlclient/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-mysqlclient/test-requirements.txt
index 534c7869cb..8c3ed72f35 100644
--- a/instrumentation/opentelemetry-instrumentation-mysqlclient/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-mysqlclient/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-pika/test-requirements-0.txt b/instrumentation/opentelemetry-instrumentation-pika/test-requirements-0.txt
index cc874af2cc..e06bc0b395 100644
--- a/instrumentation/opentelemetry-instrumentation-pika/test-requirements-0.txt
+++ b/instrumentation/opentelemetry-instrumentation-pika/test-requirements-0.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-pika/test-requirements-1.txt b/instrumentation/opentelemetry-instrumentation-pika/test-requirements-1.txt
index 4a09147744..8928f655c8 100644
--- a/instrumentation/opentelemetry-instrumentation-pika/test-requirements-1.txt
+++ b/instrumentation/opentelemetry-instrumentation-pika/test-requirements-1.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-psycopg/test-requirements-0.txt b/instrumentation/opentelemetry-instrumentation-psycopg/test-requirements-0.txt
index e60531b112..42bbac77d9 100644
--- a/instrumentation/opentelemetry-instrumentation-psycopg/test-requirements-0.txt
+++ b/instrumentation/opentelemetry-instrumentation-psycopg/test-requirements-0.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
backports.zoneinfo==0.2.1
Deprecated==1.2.14
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-psycopg/test-requirements-1.txt b/instrumentation/opentelemetry-instrumentation-psycopg/test-requirements-1.txt
index 6ad211f9c0..1f7fb59f2d 100644
--- a/instrumentation/opentelemetry-instrumentation-psycopg/test-requirements-1.txt
+++ b/instrumentation/opentelemetry-instrumentation-psycopg/test-requirements-1.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-psycopg2/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-psycopg2/test-requirements.txt
index 4d6682b3d6..aa98fa93d0 100644
--- a/instrumentation/opentelemetry-instrumentation-psycopg2/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-psycopg2/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-0.txt b/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-0.txt
index 28a62d84b4..2c6e0e2749 100644
--- a/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-0.txt
+++ b/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-0.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-1.txt b/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-1.txt
index 4be0dbee52..36db8d4416 100644
--- a/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-1.txt
+++ b/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-1.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-2.txt b/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-2.txt
index f07d79374a..3e0359f731 100644
--- a/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-2.txt
+++ b/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-2.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-3.txt b/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-3.txt
index 4e4871147c..916c9c9c3a 100644
--- a/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-3.txt
+++ b/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-3.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-4.txt b/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-4.txt
index 28fe27f0ef..e90a138ff8 100644
--- a/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-4.txt
+++ b/instrumentation/opentelemetry-instrumentation-pymemcache/test-requirements-4.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-pymongo/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-pymongo/test-requirements.txt
index eb41ee6bd9..6c8de553b6 100644
--- a/instrumentation/opentelemetry-instrumentation-pymongo/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-pymongo/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
dnspython==2.6.1
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-pymysql/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-pymysql/test-requirements.txt
index 8338f79b65..7ad69f2b81 100644
--- a/instrumentation/opentelemetry-instrumentation-pymysql/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-pymysql/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-pyramid/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-pyramid/test-requirements.txt
index aa387f8177..6f33f33449 100644
--- a/instrumentation/opentelemetry-instrumentation-pyramid/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-pyramid/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
hupper==1.12.1
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-redis/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-redis/test-requirements.txt
index 43d4bd9788..7b8d8459b7 100644
--- a/instrumentation/opentelemetry-instrumentation-redis/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-redis/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
async-timeout==4.0.3
Deprecated==1.2.14
fakeredis==2.23.3
diff --git a/instrumentation/opentelemetry-instrumentation-remoulade/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-remoulade/test-requirements.txt
index 727c15ec4e..b850e46f9f 100644
--- a/instrumentation/opentelemetry-instrumentation-remoulade/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-remoulade/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-requests/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-requests/test-requirements.txt
index 03d0a793a6..9f40c6d5b2 100644
--- a/instrumentation/opentelemetry-instrumentation-requests/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-requests/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
certifi==2024.7.4
charset-normalizer==3.3.2
Deprecated==1.2.14
diff --git a/instrumentation/opentelemetry-instrumentation-sqlalchemy/test-requirements-0.txt b/instrumentation/opentelemetry-instrumentation-sqlalchemy/test-requirements-0.txt
index 407222e8f6..45992bc2e1 100644
--- a/instrumentation/opentelemetry-instrumentation-sqlalchemy/test-requirements-0.txt
+++ b/instrumentation/opentelemetry-instrumentation-sqlalchemy/test-requirements-0.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
cffi==1.15.1
Deprecated==1.2.14
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-sqlalchemy/test-requirements-1.txt b/instrumentation/opentelemetry-instrumentation-sqlalchemy/test-requirements-1.txt
index 9b1b15debc..eb1ee371b7 100644
--- a/instrumentation/opentelemetry-instrumentation-sqlalchemy/test-requirements-1.txt
+++ b/instrumentation/opentelemetry-instrumentation-sqlalchemy/test-requirements-1.txt
@@ -1,5 +1,5 @@
aiosqlite==0.20.0
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
greenlet==3.0.3
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-sqlite3/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-sqlite3/test-requirements.txt
index 8c98e702b4..e260861814 100644
--- a/instrumentation/opentelemetry-instrumentation-sqlite3/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-sqlite3/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-starlette/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-starlette/test-requirements.txt
index 1d5b91e188..d81a15a40c 100644
--- a/instrumentation/opentelemetry-instrumentation-starlette/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-starlette/test-requirements.txt
@@ -1,5 +1,5 @@
anyio==4.3.0
-asgiref==3.7.2
+asgiref==3.8.1
certifi==2024.7.4
charset-normalizer==3.3.2
Deprecated==1.2.14
diff --git a/instrumentation/opentelemetry-instrumentation-system-metrics/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-system-metrics/test-requirements.txt
index 506499ea13..76f2f2a4e7 100644
--- a/instrumentation/opentelemetry-instrumentation-system-metrics/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-system-metrics/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-threading/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-threading/test-requirements.txt
index 45ee66cf01..2d13857e9e 100644
--- a/instrumentation/opentelemetry-instrumentation-threading/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-threading/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-tornado/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-tornado/test-requirements.txt
index fb542966de..236c45f87b 100644
--- a/instrumentation/opentelemetry-instrumentation-tornado/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-tornado/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
blinker==1.7.0
certifi==2024.7.4
charset-normalizer==3.3.2
diff --git a/instrumentation/opentelemetry-instrumentation-tortoiseorm/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-tortoiseorm/test-requirements.txt
index cb31845d66..31b044a2f3 100644
--- a/instrumentation/opentelemetry-instrumentation-tortoiseorm/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-tortoiseorm/test-requirements.txt
@@ -1,6 +1,6 @@
aiosqlite==0.17.0
annotated-types==0.6.0
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/instrumentation/opentelemetry-instrumentation-urllib/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-urllib/test-requirements.txt
index 9e11fb272f..06bc8322dc 100644
--- a/instrumentation/opentelemetry-instrumentation-urllib/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-urllib/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
httpretty==1.1.4
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-urllib3/test-requirements-0.txt b/instrumentation/opentelemetry-instrumentation-urllib3/test-requirements-0.txt
index 1d6ebc18af..e7392b0c31 100644
--- a/instrumentation/opentelemetry-instrumentation-urllib3/test-requirements-0.txt
+++ b/instrumentation/opentelemetry-instrumentation-urllib3/test-requirements-0.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
httpretty==1.1.4
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-urllib3/test-requirements-1.txt b/instrumentation/opentelemetry-instrumentation-urllib3/test-requirements-1.txt
index 06df34d16b..21cb3acbe6 100644
--- a/instrumentation/opentelemetry-instrumentation-urllib3/test-requirements-1.txt
+++ b/instrumentation/opentelemetry-instrumentation-urllib3/test-requirements-1.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
httpretty==1.1.4
importlib-metadata==6.11.0
diff --git a/instrumentation/opentelemetry-instrumentation-wsgi/test-requirements.txt b/instrumentation/opentelemetry-instrumentation-wsgi/test-requirements.txt
index 0f7c7ced73..d63bd5a637 100644
--- a/instrumentation/opentelemetry-instrumentation-wsgi/test-requirements.txt
+++ b/instrumentation/opentelemetry-instrumentation-wsgi/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/opentelemetry-distro/test-requirements.txt b/opentelemetry-distro/test-requirements.txt
index d9190daa26..050054c39b 100644
--- a/opentelemetry-distro/test-requirements.txt
+++ b/opentelemetry-distro/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/opentelemetry-instrumentation/test-requirements.txt b/opentelemetry-instrumentation/test-requirements.txt
index 6cd12fad24..31f1ef76ab 100644
--- a/opentelemetry-instrumentation/test-requirements.txt
+++ b/opentelemetry-instrumentation/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/propagator/opentelemetry-propagator-aws-xray/test-requirements.txt b/propagator/opentelemetry-propagator-aws-xray/test-requirements.txt
index 8589a794a4..4587d87629 100644
--- a/propagator/opentelemetry-propagator-aws-xray/test-requirements.txt
+++ b/propagator/opentelemetry-propagator-aws-xray/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
certifi==2024.7.4
charset-normalizer==3.3.2
Deprecated==1.2.14
diff --git a/propagator/opentelemetry-propagator-ot-trace/test-requirements.txt b/propagator/opentelemetry-propagator-ot-trace/test-requirements.txt
index 0a72c3c823..b556c4f0cc 100644
--- a/propagator/opentelemetry-propagator-ot-trace/test-requirements.txt
+++ b/propagator/opentelemetry-propagator-ot-trace/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/resource/opentelemetry-resource-detector-azure/test-requirements.txt b/resource/opentelemetry-resource-detector-azure/test-requirements.txt
index 028c41e65d..2b29359fbb 100644
--- a/resource/opentelemetry-resource-detector-azure/test-requirements.txt
+++ b/resource/opentelemetry-resource-detector-azure/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/resource/opentelemetry-resource-detector-container/test-requirements.txt b/resource/opentelemetry-resource-detector-container/test-requirements.txt
index 8a926fff71..f7b5b71fcf 100644
--- a/resource/opentelemetry-resource-detector-container/test-requirements.txt
+++ b/resource/opentelemetry-resource-detector-container/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/sdk-extension/opentelemetry-sdk-extension-aws/test-requirements.txt b/sdk-extension/opentelemetry-sdk-extension-aws/test-requirements.txt
index 27199627a1..1fa968a8b3 100644
--- a/sdk-extension/opentelemetry-sdk-extension-aws/test-requirements.txt
+++ b/sdk-extension/opentelemetry-sdk-extension-aws/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
diff --git a/tox.ini b/tox.ini
index 8552948b6b..600929a6ec 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1190,7 +1190,7 @@ basepython: python3
deps =
aiopg==1.4.0
amqp==5.2.0
- asgiref==3.7.2
+ asgiref==3.8.1
async-timeout==4.0.3
asyncpg==0.29.0
attrs==23.2.0
diff --git a/util/opentelemetry-util-http/test-requirements.txt b/util/opentelemetry-util-http/test-requirements.txt
index cb1ffe135b..1769daa094 100644
--- a/util/opentelemetry-util-http/test-requirements.txt
+++ b/util/opentelemetry-util-http/test-requirements.txt
@@ -1,4 +1,4 @@
-asgiref==3.7.2
+asgiref==3.8.1
Deprecated==1.2.14
importlib-metadata==6.11.0
iniconfig==2.0.0
@@ -8,4 +8,4 @@ py-cpuinfo==9.0.0
pytest==7.4.4
tomli==2.0.1
typing_extensions==4.10.0
--e opentelemetry-instrumentation
\ No newline at end of file
+-e opentelemetry-instrumentation
From d6e667f3eb975a369f5e40eea05add3bb701d425 Mon Sep 17 00:00:00 2001
From: Blueswen
Date: Wed, 4 Sep 2024 19:55:00 +0800
Subject: [PATCH 22/26] Update README.rst (#2849)
The URL link is incorrect; it should be a repository in the open-telemetry account.
---
opentelemetry-instrumentation/README.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/opentelemetry-instrumentation/README.rst b/opentelemetry-instrumentation/README.rst
index 6f66edb623..3ed88c213f 100644
--- a/opentelemetry-instrumentation/README.rst
+++ b/opentelemetry-instrumentation/README.rst
@@ -40,7 +40,7 @@ to figure out which instrumentation packages the user might want to install. By
prints out a list of the default and detected instrumentation packages that can be added to a
requirements.txt file. It also supports installing the packages when run with
:code:`--action=install` or :code:`-a install` flag. All default and detectable
-instrumentation packages are defined `here `.
+instrumentation packages are defined `here `.
opentelemetry-instrument
From 6c5730f31a430da360c6d1cf8abc0ee3166a0376 Mon Sep 17 00:00:00 2001
From: rama280290 <131746267+rama280290@users.noreply.github.com>
Date: Wed, 4 Sep 2024 17:54:25 +0530
Subject: [PATCH 23/26] Update test_jinja2.py (#2491)
Cross-site scripting (XSS) attacks can occur if untrusted input is not escaped. This applies to templates as well as code. The jinja2 templates may be vulnerable to XSS if the environment has autoescape set to False. Unfortunately, jinja2 sets autoescape to False by default. Explicitly setting autoescape to True when creating an Environment object will prevent this.
Signed-off-by: Rajendran, Ramasubramanian
---
.../opentelemetry-instrumentation-jinja2/tests/test_jinja2.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/instrumentation/opentelemetry-instrumentation-jinja2/tests/test_jinja2.py b/instrumentation/opentelemetry-instrumentation-jinja2/tests/test_jinja2.py
index 26ba98e69b..98344c47e4 100644
--- a/instrumentation/opentelemetry-instrumentation-jinja2/tests/test_jinja2.py
+++ b/instrumentation/opentelemetry-instrumentation-jinja2/tests/test_jinja2.py
@@ -143,7 +143,7 @@ def test_generate_inline_template(self):
def test_file_template_with_root(self):
with self.tracer.start_as_current_span("root"):
loader = jinja2.loaders.FileSystemLoader(TMPL_DIR)
- env = jinja2.Environment(loader=loader)
+ env = jinja2.Environment(loader=loader, autoescape=True)
template = env.get_template("template.html")
self.assertEqual(
template.render(name="Jinja"), "Message: Hello Jinja!"
@@ -164,7 +164,7 @@ def test_file_template_with_root(self):
def test_file_template(self):
loader = jinja2.loaders.FileSystemLoader(TMPL_DIR)
- env = jinja2.Environment(loader=loader)
+ env = jinja2.Environment(loader=loader, autoescape=True)
template = env.get_template("template.html")
self.assertEqual(
template.render(name="Jinja"), "Message: Hello Jinja!"
From afb7f54b50faf5444ba6498fe6cf7c13181f9cd2 Mon Sep 17 00:00:00 2001
From: Diego Hurtado
Date: Wed, 4 Sep 2024 08:06:58 -0600
Subject: [PATCH 24/26] Remove ocelotl from component owners (#2848)
---
.github/component_owners.yml | 14 --------------
1 file changed, 14 deletions(-)
diff --git a/.github/component_owners.yml b/.github/component_owners.yml
index b092d5d2c3..e3ca06b450 100644
--- a/.github/component_owners.yml
+++ b/.github/component_owners.yml
@@ -45,27 +45,13 @@ components:
instrumentation/opentelemetry-instrumentation-urllib:
- shalevr
- - ocelotl
instrumentation/opentelemetry-instrumentation-urllib3:
- shalevr
- - ocelotl
instrumentation/opentelemetry-instrumentation-sqlalchemy:
- shalevr
- instrumentation/opentelemetry-instrumentation-flask:
- - ocelotl
-
- instrumentation/opentelemetry-instrumentation-jinja2:
- - ocelotl
-
- instrumentation/opentelemetry-instrumentation-logging:
- - ocelotl
-
- instrumentation/opentelemetry-instrumentation-requests:
- - ocelotl
-
instrumentation/opentelemetry-instrumentation-cassandra:
- mattcontinisio
From f1d91097d88335ac39c8b3ed949e224d80f6105e Mon Sep 17 00:00:00 2001
From: kaushik95
Date: Wed, 4 Sep 2024 22:09:17 +0530
Subject: [PATCH 25/26] 973 opentelemetry instrumentation psycopg2 (#2840)
---
.../tests/test_psycopg2_integration.py | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/instrumentation/opentelemetry-instrumentation-psycopg2/tests/test_psycopg2_integration.py b/instrumentation/opentelemetry-instrumentation-psycopg2/tests/test_psycopg2_integration.py
index 369d63d5cf..6671073043 100644
--- a/instrumentation/opentelemetry-instrumentation-psycopg2/tests/test_psycopg2_integration.py
+++ b/instrumentation/opentelemetry-instrumentation-psycopg2/tests/test_psycopg2_integration.py
@@ -18,6 +18,7 @@
import psycopg2
import opentelemetry.instrumentation.psycopg2
+from opentelemetry import trace
from opentelemetry.instrumentation.psycopg2 import Psycopg2Instrumentor
from opentelemetry.sdk import resources
from opentelemetry.test.test_base import TestBase
@@ -269,3 +270,14 @@ def test_sqlcommenter_disabled(self, event_mocked):
cursor.execute(query)
kwargs = event_mocked.call_args[1]
self.assertEqual(kwargs["enable_commenter"], False)
+
+ def test_no_op_tracer_provider(self):
+ Psycopg2Instrumentor().instrument(
+ tracer_provider=trace.NoOpTracerProvider()
+ )
+ cnx = psycopg2.connect(database="test")
+ cursor = cnx.cursor()
+ query = "SELECT * FROM test"
+ cursor.execute(query)
+ spans_list = self.memory_exporter.get_finished_spans()
+ self.assertEqual(len(spans_list), 0)
From 9cced9757ace5688de08ae1d58acf87c7da92cf8 Mon Sep 17 00:00:00 2001
From: Riccardo Magliocchetti
Date: Wed, 4 Sep 2024 19:45:06 +0200
Subject: [PATCH 26/26] CONTRIBUTING: add a note about instrumentation
versioning and depdendencies (#2851)
---
CONTRIBUTING.md | 1 +
1 file changed, 1 insertion(+)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 9072a6a641..61f261f001 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -275,6 +275,7 @@ Below is a checklist of things to be mindful of when implementing a new instrume
- Isolate sync and async test
- For synchronous tests, the typical test case class is inherited from `opentelemetry.test.test_base.TestBase`. However, if you want to write asynchronous tests, the test case class should inherit also from `IsolatedAsyncioTestCase`. Adding asynchronous tests to a common test class can lead to tests passing without actually running, which can be misleading.
- ex.
+- All instrumentations have the same version. If you are going to develop a new instrumentation it would probably have `X.Y.dev` version and depends on `opentelemetry-instrumentation` and `opentelemetry-semantic-conventions` for the same version. That means that if you want to install your instrumentation you need to install its dependencies from this repo and the core repo also from git.
## Expectations from contributors