Instrumentación sin código para Python

The content of this page may be outdated and some links may be invalid. A newer version of this page exists in English.

More information ...

To see the changes to the English page since this page was last updated: visit GitHub compare 2d447daa..de42414b and search for content/en/docs/zero-code/python/_index.md.

La instrumentación automática con Python utiliza un agente de Python que se puede adjuntar a cualquier aplicación Python. Este agente utiliza principalmente monkey patching para modificar funciones de librerías en tiempo de ejecución, lo que permite capturar datos de telemetría de muchas librerías y frameworks populares.

Instalación

Ejecuta los siguientes comandos para instalar los paquetes correspondientes.

pip install opentelemetry-distro opentelemetry-exporter-otlp
opentelemetry-bootstrap -a install

El paquete opentelemetry-distro instala la API, el SDK y las herramientas opentelemetry-bootstrap y opentelemetry-instrument.

El comando opentelemetry-bootstrap -a install lee la lista de paquetes instalados en tu carpeta activa site-packages e instala las librerías de instrumentación correspondientes para esos paquetes, si procede. Por ejemplo, si ya instalaste el paquete flask, al ejecutar opentelemetry-bootstrap -a install se instalará opentelemetry-instrumentation-flask por ti. El agente de OpenTelemetry para Python utilizará monkey patching para modificar funciones de estas librerías en tiempo de ejecución.

Ejecutar opentelemetry-bootstrap sin argumentos muestra la lista de librerías de instrumentación recomendadas para instalar. Para más información, consulta opentelemetry-bootstrap.

Configuración del agente

El agente es altamente configurable.

Una opción es configurar el agente mediante propiedades de configuración desde la CLI:

opentelemetry-instrument \
    --traces_exporter console,otlp \
    --metrics_exporter console \
    --service_name your-service-name \
    --exporter_otlp_endpoint 0.0.0.0:4317 \
    python myapp.py

Alternativamente, puedes usar variables de entorno para configurar el agente:

OTEL_SERVICE_NAME=your-service-name \
OTEL_TRACES_EXPORTER=console,otlp \
OTEL_METRICS_EXPORTER=console \
OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=0.0.0.0:4317
opentelemetry-instrument \
    python myapp.py

Para ver todas las opciones de configuración, consulta la Configuración del agente.

Librerías y frameworks compatibles

Muchas librerías populares de Python se instrumentan automáticamente, entre ellas Flask y Django. Para ver la lista completa, consulta el Registry.

Solución de problemas

Para pasos generales de solución de problemas y soluciones a problemas específicos, consulta Solución de problemas.