Files
crewAI/lib/crewai-core
Lucas Gomide 60f405fe54 fix: stop anonymous telemetry from globalizing the TracerProvider
`Telemetry.set_tracer()` installed crewAI's anonymous SDK
`TracerProvider` into OpenTelemetry's process-global slot, so the first
`Crew` constructed in a test or host application replaced the default
`ProxyTracerProvider` and exfiltrated every host span emitted via
`trace.get_tracer(...)` to crewAI's OTLP endpoint. Keep the provider
local to the `Telemetry` instance and route every anonymous span
through `self.provider.get_tracer("crewai.telemetry")` so the global
slot stays untouched. Mirrors the fix in `crewai_core.telemetry`,
drops the now-dead `set_tracer()` calls in `event_listener.py` and
`crewai_cli.command`, and adds regression coverage that asserts the
provider stays a `ProxyTracerProvider` after constructing a `Crew`.
2026-06-23 13:46:55 -03:00
..

crewai-core

Shared utilities used by both crewai and crewai-cli: version lookup, storage paths, user-data helpers, telemetry, and the printer.

This package is a leaf — it has no dependency on the crewai framework — and is pulled in transitively by crewai and crewai-cli. End users do not normally install it directly.