Logo de QANode

Dashboard

El Dashboard ofrece una vista consolidada del estado de sus pruebas mediante widgets configurables: tarjetas de métricas, gráficos y tablas.


Visión General

Imagen: Dashboard con múltiples widgets: tarjetas de métricas, gráfico de barras y tabla


Dashboards Múltiples

QANode admite múltiples dashboards con diferentes configuraciones de visibilidad:

TipoVisibilidadDescripción
PrivadoSolo el creadorDashboard personal
PúblicoTodos los usuariosDashboard compartido
Por RolUsuarios con roles específicosDashboard por equipo/rol
SistemaTodos (solo lectura)Dashboards predeterminados de QANode


Widgets

Tipos de Widget

TipoDescripciónUso Típico
Tarjeta de MétricaValor numérico único con formato condicionalTotal de ejecuciones, tasa de éxito
GaugeIndicador semicircular con mínimo, máximo y valor actualTasa de éxito, SLA, progreso
Gráfico de BarrasBarras verticales con una o más seriesEjecuciones por día, fallos por proyecto
Barras ApiladasBarras verticales con múltiples series apiladasComparación acumulada entre categorías
Barras HorizontalesBarras horizontales con una o más seriesRankings, comparaciones categóricas
Gráfico de LíneaLíneas de tendenciaEvolución de la tasa de éxito
Línea ApiladaMúltiples líneas con series acumuladasEvolución por estado o equipo
Gráfico de ÁreaÁrea rellenaAcumulado de ejecuciones
Área ApiladaÁreas acumuladas por serieVolumen por estado a lo largo del tiempo
Gráfico de TortaDistribución proporcionalProporción éxito/fallo
DonutDistribución proporcional con centro libre para totalDistribución por estado con valor central
FunnelEtapas en formato de embudoConversión, calidad o etapas de proceso
Calendar HeatmapIntensidad por día en calendarioFallos por día, ejecuciones por día
ScatterPuntos por eje X/YDuración por cantidad de pasos
BubbleScatter con tamaño variableDuración, pasos y severidad
TablaDatos tabularesLista de últimas ejecuciones

Creando un Widget

El asistente de creación de widgets tiene 3 pasos:

Paso 1: Fuente de Datos

Defina de dónde provendrán los datos:

Query Builder (Recomendado):

CampoDescripción
TablaTabla de datos (ejecuciones, proyectos, flujos, etc.)
ColumnasCampos a seleccionar
FiltrosCondiciones (igual a, contiene, mayor que, etc.)
AgrupamientoAgrupar por campo (con formato de fecha)
AgregaciónCOUNT, SUM, AVG, MIN, MAX
OrdenamientoCampo y dirección (ASC/DESC)
PivotCrear múltiples series a partir de un campo
LímiteMáximo de registros (hasta 1000)

Lógica de Filtros: Combine múltiples filtros con los operadores AND u OR.

Formato de Fecha en Agrupamiento:

FormatoResultado
Solo Fecha2024-01-15
Solo Hora14:30
Fecha y Hora2024-01-15 14:30
Mes/Año2024-01
Año2024

SQL Directo:

Para consultas más complejas, utilice el modo SQL con el editor Monaco. Prefiera Query Builder para widgets simples y use SQL cuando necesite CTEs, joins, agregaciones condicionales o cálculos que serían difíciles de expresar en el constructor:

SELECT
  DATE("startedAt") AS dia,
  status,
  COUNT(*)::int AS total
FROM "Run"
WHERE "isSandbox" = false
  AND "startedAt" >= CURRENT_DATE - INTERVAL '30 days'
GROUP BY dia, status
ORDER BY dia;

El modo SQL requiere el permiso dashboard.sql.

El SQL también soporta CTEs (Common Table Expressions) con la cláusula WITH. Las consultas que modifican datos (INSERT, UPDATE, DELETE, DROP, etc.) siguen bloqueadas.

Paso 2: Visualización

Elija el tipo de gráfico y mapee los campos:

ConfiguraciónDescripción
Tipo de GráficoMétrica, Gauge, Barras, Barras Apiladas, Barras Horizontales, Línea, Área, Torta, Donut, Funnel, Heatmap, Scatter, Bubble o Tabla
Eje XCampo para el eje horizontal
Eje YCampo para el eje vertical (valor numérico)
SerieCampo para múltiples series (cuando se usa pivot)
LabelCampo de rótulo, usado por torta, donut, funnel, scatter, bubble y tablas
TamañoCampo numérico usado por Bubble
LeyendaMostrar/ocultar leyenda
TooltipMostrar valores al pasar el cursor

Paso 3: Apariencia

ConfiguraciónDescripción
TítuloNombre mostrado en el widget
ColoresColores personalizados por serie/categoría
Formato CondicionalReglas de color basadas en valores
Columnas de ProgresoMuestra columnas numéricas de la tabla como barra de progreso
Límite / ObjetivoReferencias visuales para Gauge e indicadores

Formato Condicional (para tarjetas y tablas):

OperadorEjemplo
>Si valor > 90 → verde
<Si valor < 50 → rojo
=Si valor = "failed" → rojo
containsSi contiene "error" → amarillo

Tablas Con Progreso

En widgets de tabla, las columnas numéricas pueden mostrarse como barras de progreso. Esto es útil para acompañar:

  • avance de proyectos;
  • porcentaje de éxito;
  • cobertura de escenarios;
  • consumo de SLA;
  • progreso de pipelines.

Cada columna de progreso puede tener color propio y valores mínimo/máximo. Campos textuales, IDs y fechas no se recomiendan para progreso.

Formato Condicional En Tablas

Las reglas de formato condicional permiten destacar filas o celdas según valores de la propia consulta.

Ejemplos:

ReglaResultado
status = failedFila en rojo
tasa_exito < 80Indicador de atención
fallos > 0Destacar escenarios con fallo

Use formato condicional para llamar atención sobre problemas, pero evite aplicar demasiados colores al mismo tiempo.


Diseño del Dashboard

El dashboard utiliza una cuadrícula de 12 columnas responsiva:

PropiedadDescripción
Ancho1 a 12 columnas
Alto1 a 10 filas
Posición XColumna de inicio (0-11)
Posición YFila de inicio

Reorganizando Widgets

  • Arrastrar un widget para reposicionarlo
  • Redimensionar arrastrando la esquina inferior derecha
  • La cuadrícula se ajusta automáticamente para evitar superposiciones
  • Los tamaños predeterminados se optimizan por tipo: métricas empiezan menores, mientras gráficos y tablas empiezan mayores.

Ejemplos de Widgets

Tarjeta: Tasa de Éxito

Tabla: runs
Agregación: COUNT(*)
Filtro: status = "success" AND started_at >= hoy - 30 días

Gráfico de Barras: Ejecuciones por Día

Tabla: runs
Agrupamiento: started_at (solo fecha)
Agregación: COUNT(*)
Pivot: status
Tipo: Barras

Resultado: Barras apiladas con colores diferentes para éxito/fallo por día.

Tabla: Últimos Fallos

Tabla: runs
Filtro: status = "failed"
Columnas: nombre del flujo, fecha, duración, error
Ordenamiento: started_at DESC
Límite: 10

Auto-Refresh

Los widgets pueden configurarse para actualizarse automáticamente en intervalos definidos, manteniendo los datos siempre actualizados.


Consejos

  • Comience simple — una tarjeta con el total de ejecuciones + un gráfico de barras diario
  • Use formato condicional para destacar problemas (tasa inferior al 80% = rojo)
  • Dashboards por equipo — cree dashboards con visibilidad por rol
  • Use el modo pivot para crear gráficos con múltiples series sin SQL
  • Limite los datos — las consultas grandes pueden afectar el rendimiento