Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
85aa873
Add opentelemetry-instrumentation-exceptions package
iblancasa Apr 29, 2026
fec2c6d
Merge branch 'main' into 4209
iblancasa Apr 30, 2026
46d14f9
Merge branch 'main' into 4209
iblancasa May 4, 2026
4c17c53
Merge branch '4209' of github.com:iblancasa/opentelemetry-python-cont…
iblancasa May 4, 2026
1627498
Fix lint
iblancasa May 4, 2026
5b8fe9d
Merge branch 'main' of github.com:open-telemetry/opentelemetry-python…
iblancasa May 4, 2026
08536ed
Fix lint
iblancasa May 4, 2026
480a2b4
Fix lint
iblancasa May 4, 2026
331b01a
Apply changes requested in code review
iblancasa May 5, 2026
a55e03c
Fix ci
iblancasa May 5, 2026
dec2f81
Merge branch 'main' into 4209
iblancasa May 5, 2026
8421342
Merge branch 'main' into 4209
iblancasa May 6, 2026
30255b8
Merge branch 'main' into 4209
iblancasa May 7, 2026
0d0e650
Merge branch '4209' of github.com:iblancasa/opentelemetry-python-cont…
iblancasa May 12, 2026
db877c2
Merge branch 'main' of github.com:open-telemetry/opentelemetry-python…
iblancasa May 12, 2026
980a0af
Fix lint
iblancasa May 12, 2026
f91e977
Merge branch 'main' into 4209
iblancasa May 12, 2026
90de38d
Fix changelog
iblancasa May 13, 2026
93a9173
Merge branch '4209' of github.com:iblancasa/opentelemetry-python-cont…
iblancasa May 13, 2026
6144d78
Merge branch 'main' into 4209
iblancasa May 14, 2026
0c5bd59
Merge branch 'main' into 4209
iblancasa May 18, 2026
a57bad8
Merge branch 'main' into 4209
iblancasa May 19, 2026
285b16a
Merge branch 'main' of github.com:open-telemetry/opentelemetry-python…
iblancasa May 22, 2026
94d9d57
Merge branch 'main' into 4209
iblancasa May 25, 2026
307c92e
Merge branch 'main' into 4209
iblancasa Jun 1, 2026
b7e13b3
Merge branch 'main' into 4209
iblancasa Jun 3, 2026
f11a615
Merge branch 'main' into 4209
iblancasa Jun 8, 2026
506de09
Merge branch 'main' into 4209
iblancasa Jun 15, 2026
0e296d0
Merge branch '4209' of github.com:iblancasa/opentelemetry-python-cont…
iblancasa Jun 17, 2026
9c0cafa
Apply changes in code review
iblancasa Jun 17, 2026
7eace60
Merge branch 'main' into 4209
iblancasa Jun 17, 2026
c2b31e3
Fix ci
iblancasa Jun 17, 2026
da9f903
Merge branch '4209' of github.com:iblancasa/opentelemetry-python-cont…
iblancasa Jun 17, 2026
61292ff
Merge branch 'main' into 4209
xrmx Jun 17, 2026
c8e141a
Merge branch '4209' of github.com:iblancasa/opentelemetry-python-cont…
iblancasa Jun 18, 2026
015231a
Address changes requested in code review
iblancasa Jun 18, 2026
cf97831
Merge branch 'main' into 4209
iblancasa Jun 18, 2026
92384ea
Merge branch 'main' into 4209
iblancasa Jun 19, 2026
99ad369
Merge branch '4209' of github.com:iblancasa/opentelemetry-python-cont…
iblancasa Jun 22, 2026
93fb3b0
Make asyncio call_exception_handler wrapper a bit more robust against…
xrmx Jun 22, 2026
e4bc18f
Merge branch 'main' into 4209
xrmx Jun 22, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .changelog/4503.added
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
`opentelemetry-instrumentation-exceptions`: add instrumentation to emit OpenTelemetry logs for uncaught process, thread, and asyncio exceptions.
3 changes: 3 additions & 0 deletions .github/component_owners.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@ components:
instrumentation/opentelemetry-instrumentation-asyncio:
- bourbonkk

instrumentation/opentelemetry-instrumentation-exceptions:
- iblancasa

instrumentation/opentelemetry-instrumentation-botocore:
- lukeina2z
- yiyuan-he
Expand Down
30 changes: 30 additions & 0 deletions .github/workflows/core_contrib_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1857,6 +1857,36 @@ jobs:
- name: Run tests
run: tox -e py310-test-instrumentation-logging -- -ra

py310-test-instrumentation-exceptions:
name: instrumentation-exceptions
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout contrib repo @ SHA - ${{ env.CONTRIB_REPO_SHA }}
uses: actions/checkout@v4
with:
repository: open-telemetry/opentelemetry-python-contrib
ref: ${{ env.CONTRIB_REPO_SHA }}

- name: Checkout core repo @ SHA - ${{ env.CORE_REPO_SHA }}
uses: actions/checkout@v4
with:
repository: open-telemetry/opentelemetry-python
ref: ${{ env.CORE_REPO_SHA }}
path: opentelemetry-python

- name: Set up Python 3.10
uses: actions/setup-python@v5
with:
python-version: "3.10"
architecture: "x64"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py310-test-instrumentation-exceptions -- -ra

py310-test-exporter-richconsole:
name: exporter-richconsole
runs-on: ubuntu-latest
Expand Down
19 changes: 19 additions & 0 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -613,6 +613,25 @@ jobs:
- name: Run tests
run: tox -e lint-instrumentation-logging

lint-instrumentation-exceptions:
name: instrumentation-exceptions
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.14
uses: actions/setup-python@v5
with:
python-version: "3.14"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e lint-instrumentation-exceptions

lint-exporter-richconsole:
name: exporter-richconsole
runs-on: ubuntu-latest
Expand Down
114 changes: 114 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6275,6 +6275,120 @@ jobs:
- name: Run tests
run: tox -e pypy3-test-instrumentation-logging -- -ra

py310-test-instrumentation-exceptions_ubuntu-latest:
name: instrumentation-exceptions 3.10 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.10
uses: actions/setup-python@v5
with:
python-version: "3.10"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py310-test-instrumentation-exceptions -- -ra

py311-test-instrumentation-exceptions_ubuntu-latest:
name: instrumentation-exceptions 3.11 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.11
uses: actions/setup-python@v5
with:
python-version: "3.11"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py311-test-instrumentation-exceptions -- -ra

py312-test-instrumentation-exceptions_ubuntu-latest:
name: instrumentation-exceptions 3.12 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: "3.12"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py312-test-instrumentation-exceptions -- -ra

py313-test-instrumentation-exceptions_ubuntu-latest:
name: instrumentation-exceptions 3.13 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.13"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py313-test-instrumentation-exceptions -- -ra

py314-test-instrumentation-exceptions_ubuntu-latest:
name: instrumentation-exceptions 3.14 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python 3.14
uses: actions/setup-python@v5
with:
python-version: "3.14"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e py314-test-instrumentation-exceptions -- -ra

pypy3-test-instrumentation-exceptions_ubuntu-latest:
name: instrumentation-exceptions pypy-3.10 Ubuntu
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- name: Checkout repo @ SHA - ${{ github.sha }}
uses: actions/checkout@v4

- name: Set up Python pypy-3.10
uses: actions/setup-python@v5
with:
python-version: "pypy-3.10"

- name: Install tox
run: pip install tox-uv

- name: Run tests
run: tox -e pypy3-test-instrumentation-exceptions -- -ra

py310-test-exporter-richconsole_ubuntu-latest:
name: exporter-richconsole 3.10 Ubuntu
runs-on: ubuntu-latest
Expand Down
7 changes: 7 additions & 0 deletions docs/instrumentation/exceptions/exceptions.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
OpenTelemetry Exceptions Instrumentation
========================================

.. automodule:: opentelemetry.instrumentation.exceptions
:members:
:undoc-members:
:show-inheritance:
1 change: 1 addition & 0 deletions instrumentation/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
| [opentelemetry-instrumentation-dbapi](./opentelemetry-instrumentation-dbapi) | dbapi | No | migration
| [opentelemetry-instrumentation-django](./opentelemetry-instrumentation-django) | django >= 2.0 | Yes | development
| [opentelemetry-instrumentation-elasticsearch](./opentelemetry-instrumentation-elasticsearch) | elasticsearch >= 6.0 | No | development
| [opentelemetry-instrumentation-exceptions](./opentelemetry-instrumentation-exceptions) | exceptions | No | development
| [opentelemetry-instrumentation-falcon](./opentelemetry-instrumentation-falcon) | falcon >= 1.4.1, < 5.0.0 | Yes | migration
| [opentelemetry-instrumentation-fastapi](./opentelemetry-instrumentation-fastapi) | fastapi ~= 0.92 | Yes | migration
| [opentelemetry-instrumentation-flask](./opentelemetry-instrumentation-flask) | flask >= 1.0 | Yes | migration
Expand Down
Loading
Loading