Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

argus-obs-sdk

SDK de observabilidad de Argus para aplicaciones.

pip install argus-obs-sdk
import argus

El nombre de instalación y el de importación no coinciden, y conviene decirlo antes que nada. Se instala argus-obs-sdk y se importa argus.

El prefijo -obs- es deliberado: elegimos nombres que no existían en PyPI para que un fallo del índice no acabara instalando el paquete de un desconocido con el nombre que esperábamos. El módulo conservó el nombre corto porque es lo que se escribe cien veces.

Va arriba porque es lo primero con lo que tropieza quien lo adopta.

import argus
argus.init()

Eso configura resource, trazas, métricas, logs, propagadores y todas las auto-instrumentaciones disponibles, leyendo la configuración del entorno.

Para servicios ASGI, una línea más:

app.add_middleware(argus.middleware(app).__class__)   # o ASGIMiddleware directo

Si escribes una librería, no uses este paquete

Usa argus-semconv, que depende solo de opentelemetry-api. Una librería que depende del SDK impone en silencio su versión del SDK y sus opiniones sobre exportadores a todo el que dependa de ella.

El contrato

Verificado por tests en tests/test_contract.py, no por buenas intenciones:

  1. Nunca tumba la aplicación. Si el Collector está caído, la app pierde telemetría, nunca latencia ni memoria.
  2. Idempotente. init() dos veces es no-op la segunda.
  3. No-op sin configurar. Los decoradores funcionan con coste cero.
  4. Cero configuración en el caso normal. Todo viene del entorno.
  5. Superficie pública mínima, fijada por test.

Variables de entorno

El contrato es de entorno, no de API de Python: un componente Go y uno Python se configuran copiando el mismo bloque.

Variable Significado Por defecto
ARGUS_SERVICE El sub-componente (service.name) unknown-service
ARGUS_NAMESPACE La aplicación (service.namespace) = servicio
ARGUS_ROLE api/worker/scheduler/cli/model-server/frontend api
ARGUS_VERSION Versión del componente —
ARGUS_ENVIRONMENT mac-dev, imac, server-1, ci local
ARGUS_ENDPOINT Collector agente local http://localhost:4317
ARGUS_PROTOCOL grpc | http/protobuf grpc
ARGUS_PROPAGATE never | trusted | always never
ARGUS_TRUSTED_CIDRS CIDRs de confianza, separados por coma —
ARGUS_CAPTURE_CONTENT Capturar prompts y respuestas false
ARGUS_SLO_MS Umbral de latencia del componente 0 (sin umbral)
ARGUS_DISABLED Apagar toda la telemetría false

Las estándar de OpenTelemetry (OTEL_SERVICE_NAME, OTEL_EXPORTER_OTLP_ENDPOINT, OTEL_RESOURCE_ATTRIBUTES) también se respetan, para que una app que ya tiene OTel migre sin tocar código.

Por qué localhost y no el plano central

Las aplicaciones exportan siempre al Collector agente de su propia máquina. Nunca conocen la dirección del plano central. Eso da tres propiedades:

  • Mover el plano central de una máquina a otra no toca ni una aplicación.
  • Si el central está suspendido, las apps no se enteran ni se ralentizan: el agente local escribe a disco y envía cuando vuelve la conexión.
  • Añadir una máquina es desplegar un agente, no reconfigurar apps.

Release files for argus-obs-sdk 1.0.0a5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for argus-obs-sdk 1.0.0a5
File Size Uploaded
argus_obs_sdk-1.0.0a5.tar.gz 36.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for argus-obs-sdk 1.0.0a5
File Interpreter ABI Platform
argus_obs_sdk-1.0.0a5-py3-none-any.whl Python 3 none any Details

Total release size: 69.1 kB

Release files / argus_obs_sdk-1.0.0a5.tar.gz

Download URL argus_obs_sdk-1.0.0a5.tar.gz
Size 36.9 kB
Tags Source
SHA-256 checksum
How to use checksums
0edc8547cebe5ab19963a235bfd4d36302b4ed2e43ae5bc8968313b64f0e09d6
BLAKE2b-256 checksum
How to use checksums
76f42a28c17de5f8a4f05d3afd98bf6a8992a7b4289469f5969ef3ac749e6841
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / argus_obs_sdk-1.0.0a5-py3-none-any.whl

Download URL argus_obs_sdk-1.0.0a5-py3-none-any.whl
Size 32.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8646cc1d9df309deac99b16853e7f6c89ed5327b1d74bf0ad0b55c27352fcac9
BLAKE2b-256 checksum
How to use checksums
abc36f3a234a7dc5093da3d3cf4ab5ccf97c539eeb602c776f91f4f899fd51c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page