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.0a6

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.0a6
File Size Uploaded
argus_obs_sdk-1.0.0a6.tar.gz 38.9 kB Details

Built distribution (wheel)

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

Total release size: 71.7 kB

Release files / argus_obs_sdk-1.0.0a6.tar.gz

Download URL argus_obs_sdk-1.0.0a6.tar.gz
Size 38.9 kB
Tags Source
SHA-256 checksum
How to use checksums
b0bb21101670f50512def6f360b8a0f255108a0b4643aac70169456c5197f86f
BLAKE2b-256 checksum
How to use checksums
5e6e6b872c3a50a736b9ae3ebe512ef099c4f466b73e8c2fb61e7300c52309f4
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 26, 2026.

Transparency log

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

Download URL argus_obs_sdk-1.0.0a6-py3-none-any.whl
Size 32.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ba42be734bcfb05d5f8dda9e19ff9d72ba1af1a9f8e75cc052a9de6b0106c9ed
BLAKE2b-256 checksum
How to use checksums
80e72b225cb2377c2a6d59a1a9033903b13e85549b75071c0f71226d37c88569
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 26, 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