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.6.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.6-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: infinianalytics-0.1.6.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.6.tar.gz
Algorithm Hash digest
SHA256 3d601102fb559d14ca06a32d9171660478954151b2d7428f894c39acebc6b484
MD5 96397bc22ddbde36c8ea4a6dd9b71dff
BLAKE2b-256 0f1f1c31fbefc378048477e17cca73279001f24d53c805cdba36552115bbdbdb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for infinianalytics-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 4699954dd2100dae9eb3bb12e5a7d41f86c5fab2fdb435bc6dc7d6a83042f9ca
MD5 22d3b24ec688ff837bf2d4a6dc2f7162
BLAKE2b-256 2ffc660492584f00a5160b851a06721f51a8a30dd1b0995a86333aba97fb9eec

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