Skip to main content

Librería para registrar eventos en la API de InfiniAnalytics

Project description

InfiniAnalytics

InfiniAnalytics es una librería de Python que facilita el registro de eventos, inicios y finales de procesos, así como la notificación de errores, en la plataforma de Analítica de Infini.

El diseño está orientado a que nunca quiebre el flujo de tu automatismo o aplicación: ante cualquier error de comunicación o respuesta inesperada, la librería simplemente imprime un mensaje y devuelve None, pero no lanza excepciones no controladas.


Características principales

  • Registro de inicio (.start(description: str))
  • Registro de evento (.event(description: str))
  • Registro de fin (.end(description: str))
  • Registro de errores (.error(description: str, error_id: str = None, error_detailed: str = None))
  • No lanza excepciones: Devuelve None en caso de fallo e imprime el error por pantalla.

Cada vez que se crea una instancia de InfiniAnalytics, se genera (o se inyecta) un execution_id.

  • Si no lo especificas, se genera automáticamente usando la hora actual (datetime.now().isoformat()).

Instalación

La librería se puede instalar directamente desde PyPI con:

pip install infinianalytics

Uso básico

1. Importar e Instanciar

from infinianalytics import InfiniAnalytics

execution = InfiniAnalytics(
    token="TU_TOKEN",
    automation_id="44444444-4444-4444-4444-444444444444"
)
  • token (str): Cadena que te identifica para la autenticación.
  • automation_id (str): Identificador único de tu automatización.
  • execution_id (str) (opcional): Si lo omites, se genera uno automáticamente usando la fecha/hora actual.

2. Registrar eventos

Inicio (start)

execution.start("Starting the process")

Registra el inicio de la ejecución.

Evento intermedio (event)

execution.event("An event occurred")

Registra un evento relevante en el transcurso de la ejecución.

Error (error)

Para registrar un error dentro de un try-except, por ejemplo:

try:
    # Lógica que puede fallar
    ...
except Exception as ex:
    execution.error(
        description="Ocurrió un error durante el proceso",
        error_id="1234",
        error_detailed=str(ex)
    )

Importante: Se recomienda siempre llamar al método .error(...) dentro de un bloque except, para asegurarte de capturar cualquier excepción y notificarla a la API.

La librería no lanza excepciones no controladas, por lo que tu automatismo no se detendrá.

Fin (end)

execution.end("Ending the process")

Registra el final de la ejecución.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

infinianalytics-0.1.7.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

infinianalytics-0.1.7-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

Details for the file infinianalytics-0.1.7.tar.gz.

File metadata

  • Download URL: infinianalytics-0.1.7.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.9

File hashes

Hashes for infinianalytics-0.1.7.tar.gz
Algorithm Hash digest
SHA256 f99cb09928dcf85dd463f6524a66c43b922dd7719baf048f255bfe543c1c396f
MD5 c05b135cc899c7d1bfed92629dfd70fe
BLAKE2b-256 b596e26bad933929f5b1f5df1e5eaff837072761d71252e156eac3f5c43d8121

See more details on using hashes here.

File details

Details for the file infinianalytics-0.1.7-py3-none-any.whl.

File metadata

File hashes

Hashes for infinianalytics-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 dc9b13f1e4dd125c7e23955dc0ebdf450b585ea05480c52ad2fe6e014150ff9c
MD5 6ce5dbf42543625bc8a6cd82d79ca1df
BLAKE2b-256 453f6a9d661143f5eb9562154a588f06bebd18b61355e6a4b5f3728d10ee8cb3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page