PHP Execution Tracker
20 de enero de 2024Una librería ligera para PHP para rastrear y registrar la ejecución de procesos en aplicaciones PHP.
Tabla de Contenidos
¿Por qué la creé?
Durante el desarrollo y mantenimiento de la API en mi primer trabajo, tuve que navegar por un extenso código legacy sin documentar y sin el apoyo de sus creadores originales. Incapaz de encontrar una librería de logging adecuada para mis necesidades y de la urgencia, terminé creando la mía propia.
Uso
Primero, instala la librería con composer:
composer require chus/php-execution-trackerUna vez instalada, puedes usarla en tu código usando el autoload del vendor:
<?php
require_once "/vendor/autoload.php";
use ExecutionTracker\Tracker;Después, puedes empezar a rastrear un proceso así:
$track = Tracker::track("Wait 1 second");
sleep(1);
$track->end("Waited 1 second");
$track->asJson();Output:
{
    "name": "Wait 1 second",
    "result": "Waited 1 second",
    "startTime": 1705765167.568996,
    "endTime": 1705765168.583068,
    "errorOccurred": false,
    "warningOccurred": false,
    "errors": [],
    "warnings": [],
    "logs": [],
    "subProcedures": []
}Como puedes ver, la librería es muy sencilla de usar. Solo tienes que llamar al método track con el nombre del proceso que quieres rastrear, y después llamar al método end con el resultado del proceso.
La idea es generar un árbol de procesos que se pueda convertir fácilmente a JSON para propósitos de logging y mostrarlo de una forma sencilla.