Skip to content

Commit c5abec7

Browse files
Merge branch 'main' into feat/openai-responses-create-instrumentation-first-part
2 parents d4ff5af + c9be5e1 commit c5abec7

32 files changed

Lines changed: 631 additions & 63 deletions

File tree

.github/workflows/check-links.yml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
name: check-links
2+
on:
3+
push:
4+
branches: [ main ]
5+
paths:
6+
- '**/*.md'
7+
- '**/*.rst'
8+
- '.github/workflows/check-links.yml'
9+
- '.github/workflows/check_links_config.json'
10+
pull_request:
11+
paths:
12+
- '**/*.md'
13+
- '**/*.rst'
14+
- '.github/workflows/check-links.yml'
15+
- '.github/workflows/check_links_config.json'
16+
17+
permissions:
18+
contents: read
19+
20+
concurrency:
21+
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }}
22+
cancel-in-progress: true
23+
24+
jobs:
25+
check-links:
26+
runs-on: ubuntu-latest
27+
if: ${{ github.actor != 'dependabot[bot]' && github.actor != 'otelbot[bot]' }}
28+
timeout-minutes: 15
29+
steps:
30+
- name: Checkout Repo
31+
uses: actions/checkout@v6
32+
33+
- name: Get changed markdown files
34+
id: changed-files
35+
uses: tj-actions/changed-files@v46
36+
with:
37+
files: |
38+
**/*.md
39+
**/*.rst
40+
41+
- name: Install markdown-link-check
42+
if: steps.changed-files.outputs.any_changed == 'true'
43+
run: npm install -g markdown-link-check@v3.12.2
44+
45+
- name: Run markdown-link-check
46+
if: steps.changed-files.outputs.any_changed == 'true'
47+
run: |
48+
markdown-link-check \
49+
--verbose \
50+
--config .github/workflows/check_links_config.json \
51+
${{ steps.changed-files.outputs.all_changed_files }} \
52+
|| { echo "Check that anchor links are lowercase"; exit 1; }
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"ignorePatterns": [
3+
{
4+
"pattern": "http(s)?://\\d+\\.\\d+\\.\\d+\\.\\d+"
5+
},
6+
{
7+
"pattern": "http(s)?://localhost"
8+
},
9+
{
10+
"pattern": "http(s)?://example.com"
11+
}
12+
],
13+
"aliveStatusCodes": [429, 200]
14+
}

CHANGELOG.md

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1515

1616
- Bump `pylint` to `4.0.5`
1717
([#4244](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/4244))
18+
- `opentelemetry-instrumentation-sqlite3`: Add uninstrument, error status, suppress, and no-op tests
19+
([#4335](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/4335))
20+
21+
### Fixed
22+
23+
- `opentelemetry-instrumentation-pika` Use `ObjectProxy` instead of `BaseObjectProxy` for `ReadyMessagesDequeProxy` to restore iterability with wrapt 2.x
24+
([#4461](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/4461))
25+
- `opentelemetry-instrumentation-dbapi` Use `ObjectProxy` instead of `BaseObjectProxy` for `TracedCursorProxy` to restore iterability with wrapt 2.x
26+
([#4427](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/4427))
27+
- `opentelemetry-instrumentation-flask`: Clean up environ keys in `_teardown_request` to prevent duplicate execution
28+
([#4341](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/4341))
1829

1930
### Breaking changes
2031

@@ -40,6 +51,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
4051

4152
### Fixed
4253

54+
- `opentelemetry-instrumentation-celery`: Coerce non-string values to strings in `CeleryGetter.get()` to prevent `TypeError` in `TraceState.from_header()` when Celery request attributes contain ints
55+
([#4360](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/4360))
4356
- `opentelemetry-docker-tests`: Replace deprecated `SpanAttributes` from `opentelemetry.semconv.trace` with `opentelemetry.semconv._incubating.attributes`
4457
([#4339](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/4339))
4558
- `opentelemetry-instrumentation-confluent-kafka`: Skip `recv` span creation when `poll()` returns no message or `consume()` returns an empty list, avoiding empty spans on idle polls
@@ -1162,15 +1175,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
11621175

11631176
### Added
11641177

1165-
- Support `aio_pika` 9.x (([#1670](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/1670])
1178+
- Support `aio_pika` 9.x ([#1670](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/1670))
11661179
- `opentelemetry-instrumentation-redis` Add `sanitize_query` config option to allow query sanitization. ([#1572](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/1572))
11671180
- `opentelemetry-instrumentation-elasticsearch` Add optional db.statement query sanitization.
11681181
([#1598](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/1598))
11691182
- `opentelemetry-instrumentation-celery` Record exceptions as events on the span.
11701183
([#1573](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/1573))
11711184
- Add metric instrumentation for urllib
11721185
([#1553](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/1553))
1173-
- `opentelemetry/sdk/extension/aws` Implement [`aws.ecs.*`](https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/resource/semantic_conventions/cloud_provider/aws/ecs.md) and [`aws.logs.*`](https://opentelemetry.io/docs/reference/specification/resource/semantic_conventions/cloud_provider/aws/logs/) resource attributes in the `AwsEcsResourceDetector` detector when the ECS Metadata v4 is available
1186+
- `opentelemetry/sdk/extension/aws` Implement [`aws.ecs.*`](https://opentelemetry.io/docs/specs/semconv/resource/cloud-provider/aws/ecs/) and [`aws.logs.*`](https://opentelemetry.io/docs/specs/semconv/resource/cloud-provider/aws/logs/) resource attributes in the `AwsEcsResourceDetector` detector when the ECS Metadata v4 is available
11741187
([#1212](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/1212))
11751188
- `opentelemetry-instrumentation-aio-pika` Support `aio_pika` 8.x
11761189
([#1481](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/1481))
@@ -1366,7 +1379,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
13661379
- Add a test for asgi using NoOpTracerProvider
13671380
([#1367](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/1367))
13681381

1369-
## [1.12.0rc2-0.32b0](https://github.com/open-telemetry/opentelemetry-python/releases/tag/v1.12.0rc2-0.32b0) - 2022-07-01
1382+
## [1.12.0rc2-0.32b0](https://github.com/open-telemetry/opentelemetry-python/releases/tag/v1.12.0rc2) - 2022-07-01
13701383

13711384
- Pyramid: Only categorize 500s server exceptions as errors
13721385
([#1037](https://github.com/open-telemetry/opentelemetry-python-contrib/issues/1037))
@@ -2000,7 +2013,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
20002013
- `opentelemetry-instrumentation-grpc` Add tests for grpc span attributes, grpc `abort()` conditions
20012014
([#236](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/236))
20022015
- Add README and example app for Prometheus Remote Write Exporter
2003-
([#227](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/227]))
2016+
([#227](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/227))
20042017
- `opentelemetry-instrumentation-botocore` Adds a field to report the number of retries it take to complete an API call
20052018
([#275](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/275))
20062019
- `opentelemetry-instrumentation-requests` Use instanceof to check if responses are valid Response objects
@@ -2387,8 +2400,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
23872400
- `opentelemetry-ext-http-requests` Updates for core library changes
23882401

23892402
- `Added support for PyPy3` Initial release
2390-
2391-
## [#1033](https://github.com/open-telemetryopentelemetry-python-contrib/issues/1033)
2403+
([#1033](https://github.com/open-telemetry/opentelemetry-python-contrib/issues/1033))
23922404

23932405
## Version 0.1a0 (2019-09-30)
23942406

docs-requirements.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ sqlalchemy>=1.0
4949
starlette~=0.50
5050
tornado>=5.1.1
5151
tortoise-orm>=0.17.0
52+
wrapt~=2.1
5253

5354
# required by opamp
5455
uuid_utils

docs/nitpick-exceptions.ini

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ py-class=
4444
psycopg.Connection
4545
psycopg.AsyncConnection
4646
ObjectProxy
47+
wrapt.proxies.ObjectProxy
4748
fastapi.applications.FastAPI
4849
starlette.applications.Starlette
4950
_contextvars.Token

instrumentation-genai/opentelemetry-instrumentation-anthropic/CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## Unreleased
99

10+
- Fix compatibility with wrapt 2.x by using positional arguments in `wrap_function_wrapper()` calls
11+
([#4445](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/4445))
12+
1013
### Added
1114

1215
- Add async Anthropic message stream wrappers and manager wrappers, with wrapper

instrumentation-genai/opentelemetry-instrumentation-anthropic/src/opentelemetry/instrumentation/anthropic/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -101,9 +101,9 @@ def _instrument(self, **kwargs: Any) -> None:
101101

102102
# Patch Messages.create
103103
wrap_function_wrapper(
104-
module="anthropic.resources.messages",
105-
name="Messages.create",
106-
wrapper=messages_create(handler),
104+
"anthropic.resources.messages",
105+
"Messages.create",
106+
messages_create(handler),
107107
)
108108

109109
def _uninstrument(self, **kwargs: Any) -> None:

instrumentation-genai/opentelemetry-instrumentation-anthropic/tests/requirements.latest.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ anthropic
4040
pytest==7.4.4
4141
pytest-vcr==1.0.2
4242
pytest-asyncio==0.21.0
43-
wrapt==1.16.0
43+
wrapt==2.1.2
4444
# test with the latest version of opentelemetry-api, sdk, and semantic conventions
4545

4646
-e opentelemetry-instrumentation

instrumentation-genai/opentelemetry-instrumentation-langchain/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## Unreleased
99

10+
- Fix compatibility with wrapt 2.x by using positional arguments in `wrap_function_wrapper()` calls
11+
([#4445](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/4445))
1012
- Added span support for genAI langchain llm invocation.
1113
([#3665](https://github.com/open-telemetry/opentelemetry-python-contrib/pull/3665))
1214
- Added support to call genai utils handler for langchain LLM invocations.

instrumentation-genai/opentelemetry-instrumentation-langchain/src/opentelemetry/instrumentation/langchain/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -83,9 +83,9 @@ def _instrument(self, **kwargs: Any):
8383
)
8484

8585
wrap_function_wrapper(
86-
module="langchain_core.callbacks",
87-
name="BaseCallbackManager.__init__",
88-
wrapper=_BaseCallbackManagerInitWrapper(otel_callback_handler),
86+
"langchain_core.callbacks",
87+
"BaseCallbackManager.__init__",
88+
_BaseCallbackManagerInitWrapper(otel_callback_handler),
8989
)
9090

9191
def _uninstrument(self, **kwargs: Any):

0 commit comments

Comments
 (0)