OpenTelemetry Exceptions Instrumentation
Instrument uncaught exceptions to emit OpenTelemetry logs.
Usage
from opentelemetry.instrumentation.exceptions import (
UnhandledExceptionInstrumentor,
)
UnhandledExceptionInstrumentor().instrument()
This instrumentation captures uncaught process exceptions, uncaught thread exceptions, and unhandled asyncio task exceptions and emits them as OpenTelemetry logs.
- class opentelemetry.instrumentation.exceptions.UnhandledExceptionInstrumentor(*args, **kwargs)[source]
Bases:
BaseInstrumentorEmit logs for uncaught exceptions and unhandled asyncio exceptions.
- instrumentation_dependencies()[source]
Return a list of python packages with versions that the will be instrumented.
The format should be the same as used in requirements.txt or pyproject.toml.
For example, if an instrumentation instruments requests 1.x, this method should look like: :rtype:
Collection[str]- def instrumentation_dependencies(self) -> Collection[str]:
return [‘requests ~= 1.0’]
This will ensure that the instrumentation will only be used when the specified library is present in the environment.