npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

activepieces-consumption-dashboard

v1.0.1

Published

Dashboard de consumo para ActivePieces - Métricas de uso y operaciones para tarifar y revender servicios

Readme

ActivePieces Consumption Dashboard

Dashboard de consumo y métricas de uso para ActivePieces. Este piece te permite monitorear, analizar y tarifar el uso de operaciones en tu instalación de ActivePieces, similar a cómo Make.com maneja la tarifación por operaciones.

🎯 Características

  • Métricas de Consumo: Obtén estadísticas detalladas de ejecuciones, operaciones y uso de red
  • Filtrado Avanzado: Filtra por proyecto, flujo/escenario, fechas y más
  • Cálculo de Costos: Calcula costos basados en operaciones ejecutadas (similar a Make.com)
  • Exportación de Reportes: Exporta reportes en formato JSON o CSV
  • Agrupación de Datos: Agrupa métricas por día, semana, mes, proyecto o flujo
  • Listado de Recursos: Lista proyectos y flujos disponibles en tu instalación

📦 Instalación

Opción 1: Instalación Manual

  1. Clona o descarga este repositorio en tu servidor de ActivePieces
  2. Instala las dependencias:
npm install
  1. Compila el proyecto:
npm run build
  1. Copia el directorio dist a la carpeta de pieces de ActivePieces

Opción 2: Integración con Docker

Si tienes ActivePieces corriendo en Docker, puedes agregar este piece de la siguiente manera:

  1. Agrega este repositorio como un volumen en tu docker-compose.yml:
services:
  activepieces:
    volumes:
      - ./consumption-dashboard:/app/packages/pieces/consumption-dashboard
  1. Reconstruye y reinicia el contenedor:
docker-compose down
docker-compose up -d --build

Opción 3: Instalación desde npm (AP_DEV_PIECES)

Si tu ActivePieces soporta cargar pieces desde npm:

  1. Agrega la variable AP_DEV_PIECES:
services:
  activepieces:
    environment:
      - AP_DEV_PIECES=activepieces-consumption-dashboard
      - AP_CONSUMPTION_DASHBOARD_BASE_URL=http://localhost:8080
      - AP_CONSUMPTION_DASHBOARD_API_KEY=tu-api-key-aqui
  1. Reinicia ActivePieces:
docker-compose restart activepieces

🔧 Configuración

Variables de Entorno

Asegúrate de configurar las siguientes variables de entorno en tu instalación de ActivePieces:

  • AP_FRONTEND_URL: URL base de tu instalación de ActivePieces (ej: http://localhost:8080)
  • AP_API_URL: URL de la API de ActivePieces (si es diferente al frontend)
  • AP_CONSUMPTION_DASHBOARD_BASE_URL: override específico para este piece (opcional)
  • AP_CONSUMPTION_DASHBOARD_API_KEY: API key para la API de ActivePieces (opcional si se ingresa en UI)
  • AP_API_KEY: API key global (fallback)

Autenticación

Este piece utiliza la autenticación de ActivePieces. Puedes configurar la API key desde la UI del piece o con variables de entorno.

📊 Acciones Disponibles

1. Obtener Métricas de Consumo

Obtiene métricas generales de consumo del sistema.

Parámetros:

  • Fecha Inicio (requerido)
  • Fecha Fin (requerido)
  • ID del Proyecto (opcional)
  • Límite de Resultados (opcional, por defecto: 100)

Retorna:

  • Resumen de ejecuciones (totales, exitosas, fallidas)
  • Tasa de éxito
  • Duración promedio y total
  • Agrupación por proyecto y flujo

2. Obtener Métricas por Proyecto

Obtiene métricas de consumo filtradas por proyecto.

Parámetros:

  • ID del Proyecto (requerido)
  • Fecha Inicio (requerido)
  • Fecha Fin (requerido)
  • Incluir Flujos/Escenarios (opcional)

Retorna:

  • Métricas del proyecto
  • Desglose por flujo (si está habilitado)

3. Obtener Métricas por Flujo/Escenario

Obtiene métricas de consumo filtradas por flujo o escenario.

Parámetros:

  • ID del Flujo/Escenario (requerido)
  • Fecha Inicio (requerido)
  • Fecha Fin (requerido)

Retorna:

  • Métricas del flujo
  • Agrupación por día
  • Lista de ejecuciones

4. Obtener Conteo de Operaciones

Obtiene el conteo total de operaciones ejecutadas (similar a Make.com).

Parámetros:

  • Fecha Inicio (requerido)
  • Fecha Fin (requerido)
  • ID del Proyecto (opcional)
  • ID del Flujo/Escenario (opcional)
  • Agrupar Por (día, semana, mes, proyecto, flujo)
  • Incluir Fallidas (opcional)

Retorna:

  • Total de operaciones
  • Agrupación según criterio seleccionado
  • Resumen (exitosas, fallidas)

5. Obtener Uso de Red

Obtiene métricas de uso de red estimadas basadas en ejecuciones.

Parámetros:

  • Fecha Inicio (requerido)
  • Fecha Fin (requerido)
  • ID del Proyecto (opcional)
  • ID del Flujo/Escenario (opcional)
  • Agrupar Por (día, semana, mes, proyecto, flujo)
  • Bytes Estimados por Ejecución (opcional, por defecto: 50000)

Retorna:

  • Uso total de red (bytes, MB, GB)
  • Agrupación según criterio seleccionado

6. Calcular Costos de Operaciones

Calcula costos basados en operaciones ejecutadas (similar a Make.com).

Parámetros:

  • Fecha Inicio (requerido)
  • Fecha Fin (requerido)
  • ID del Proyecto (opcional)
  • ID del Flujo/Escenario (opcional)
  • Costo por Operación (opcional, por defecto: 0.001 USD)
  • Costo por MB (opcional, por defecto: 0.01 USD)
  • Incluir Operaciones Fallidas (opcional)
  • Moneda (opcional, por defecto: USD)

Retorna:

  • Costo total
  • Desglose por operaciones y red
  • Agrupación por proyecto y flujo
  • Porcentajes de cada componente

7. Listar Proyectos

Obtiene la lista de todos los proyectos disponibles.

Parámetros:

  • Límite de Resultados (opcional, por defecto: 100)

Retorna:

  • Lista de proyectos con IDs, nombres y fechas

8. Listar Flujos/Escenarios

Obtiene la lista de todos los flujos/escenarios disponibles.

Parámetros:

  • ID del Proyecto (opcional)
  • Límite de Resultados (opcional, por defecto: 100)

Retorna:

  • Lista de flujos con IDs, nombres, proyectos y estados

9. Exportar Reporte de Consumo

Exporta un reporte completo de consumo en formato JSON o CSV.

Parámetros:

  • Fecha Inicio (requerido)
  • Fecha Fin (requerido)
  • ID del Proyecto (opcional)
  • ID del Flujo/Escenario (opcional)
  • Formato de Exportación (JSON o CSV)
  • Incluir Cálculo de Costos (opcional)
  • Costo por Operación (opcional, si incluir costos está activado)

Retorna:

  • Reporte en el formato seleccionado
  • Datos estructurados listos para análisis

💰 Modelo de Tarifación

Este piece está diseñado para implementar un modelo de tarifación similar a Make.com:

  • Por Operación: Cada ejecución de un flujo cuenta como una operación
  • Por Uso de Red: Opcionalmente puedes cobrar por datos transferidos
  • Agrupación Flexible: Agrupa costos por proyecto, cliente, flujo, etc.

Ejemplo de Uso para Tarifación

// Ejemplo de cálculo de costos para un cliente
const costos = await calculateCosts({
  startDate: '2024-01-01',
  endDate: '2024-01-31',
  projectId: 'cliente-123',
  costPerOperation: 0.001, // $0.001 por operación
  costPerMB: 0.01, // $0.01 por MB
});

// El resultado incluye:
// - Costo total
// - Desglose por operaciones y red
// - Agrupación por proyecto y flujo

🔍 Ejemplos de Uso

Obtener métricas del último mes

const metrics = await getConsumptionMetrics({
  startDate: new Date(Date.now() - 30 * 24 * 60 * 60 * 1000),
  endDate: new Date(),
});

Calcular costos de un proyecto específico

const costs = await calculateCosts({
  startDate: '2024-01-01',
  endDate: '2024-01-31',
  projectId: 'proyecto-abc',
  costPerOperation: 0.001,
  currency: 'USD',
});

Exportar reporte mensual en CSV

const report = await exportReport({
  startDate: '2024-01-01',
  endDate: '2024-01-31',
  format: 'csv',
  includeCosts: true,
  costPerOperation: 0.001,
});

🐛 Solución de Problemas

Error: "Error al obtener métricas"

  • Verifica que la URL de la API esté correctamente configurada
  • Asegúrate de tener permisos de acceso a la API
  • Verifica que el API key sea válido

No se encuentran ejecuciones

  • Verifica que el rango de fechas sea correcto
  • Asegúrate de que haya ejecuciones en ese período
  • Verifica los filtros de proyecto/flujo

Costos no calculan correctamente

  • Verifica que los valores de costo por operación/MB sean correctos
  • Asegúrate de que las ejecuciones estén siendo contadas correctamente

📝 Notas

  • Los valores de uso de red son estimaciones basadas en el número de ejecuciones
  • Ajusta estimatedBytesPerExecution según tus necesidades reales
  • Las métricas se basan en las ejecuciones disponibles en la API de ActivePieces
  • El límite por defecto de resultados es 1000 ejecuciones por consulta

🤝 Contribuciones

Las contribuciones son bienvenidas. Por favor:

  1. Fork el proyecto
  2. Crea una rama para tu feature (git checkout -b feature/AmazingFeature)
  3. Commit tus cambios (git commit -m 'Add some AmazingFeature')
  4. Push a la rama (git push origin feature/AmazingFeature)
  5. Abre un Pull Request

📄 Licencia

Este proyecto está bajo la Licencia MIT.

🔗 Referencias