Skip to content

Monitorear ejecuciones de acciones masivas

Cada acción masiva que disparas — asignar, asistencia, eliminar, enviar mensaje, editar — aparece en /bulk-actions como una fila en el historial de ejecuciones. Esa página es tu punto de inspección: ¿terminó la ejecución?, ¿fallaron filas?, ¿necesitas reintentar?, ¿qué cambió exactamente?

Historial de acciones masivas

La página se autoactualiza cada 5 segundos mientras hay alguna ejecución activa, así que no necesitas refrescar.

Estados de ejecución

Cada fila tiene una insignia de estado:

EstadoSignificado
En colaLa ejecución está en la cola de trabajo pero el worker aún no la ha iniciado. Normalmente milisegundos.
En ejecuciónEl worker está procesando filas. La barra de progreso muestra N de M completadas.
CompletadaTodas las filas se aplicaron sin fallos.
ParcialAlgunas filas se aplicaron, algunas fallaron. El estado más accionable — normalmente reintentarás.
FallidaUn error a nivel del sistema detuvo la ejecución (base de datos no disponible, permiso revocado a mitad de ejecución).
CanceladaPulsaste Cancelar. Las filas ya aplicadas se quedan; las pendientes se omiten.

Abrir una ejecución

Haz clic en cualquier fila y verás la página de detalle de la ejecución:

  • Tarjetas de resumen — filas totales, aplicadas, fallidas, omitidas, duración.
  • Instantánea de la selección — la lista exacta de IDs de miembros a los que apuntó la ejecución, capturada al momento de hacer clic en Aplicar.
  • Elementos fallidos — cada fila que no se aplicó, con un motivo.
  • Botón Reintentar fallidos (cuando hay fallos).
  • Botón Cancelar (cuando la ejecución está en cola o en ejecución).
  • Botón Volver a ejecutar (cuando la ejecución terminó, sin importar el resultado).

La lista de elementos fallidos

Una fila falla cuando el worker intenta escribirla y la base de datos rechaza la operación. Razones comunes:

ErrorQué significaNormalmente es
permission deniedEl usuario actual perdió el permiso desde que hizo clic en AplicarPermiso revocado a mitad de ejecución
member not foundEl miembro fue eliminado por otra persona durante la ejecuciónCondición de carrera
unique violationLa escritura crearía un duplicadoRe-ejecutar una asignación vieja sobre miembros que ya están en el destino
null value violates not-nullUn campo obligatorio faltabaCasi siempre una mala configuración de flujo de trabajo

El texto del motivo aparece al lado de cada miembro fallido, así puedes escanear la lista y decidir si vale la pena reintentar la ejecución tal como está o si necesitas arreglar el problema subyacente primero.

Reintentar-fallidos es idempotente

El botón de reintentar vuelve a poner en cola solo las filas que fallaron, con los mismos parámetros. Las filas ya aplicadas siguen aplicadas — la acción no las reaplica. Es seguro hacer clic tantas veces como necesites hasta que cada fila tenga éxito o cambie el motivo del fallo (por ejemplo, el permiso se restauró).

Cancelar en pleno vuelo

Para acciones de larga duración sobre miles de filas, puedes Cancelar desde la página de detalle de la ejecución. El worker deja de traer el siguiente lote y la ejecución pasa a Cancelada. Las filas ya aplicadas siguen aplicadas. La instantánea de la selección se preserva, así que puedes volver a ejecutar sobre la misma lista más tarde.

Cancelar no es deshacer

Cancelar detiene las escrituras posteriores, pero no revierte lo que ya se ha escrito. Si cancelaste una eliminación y 200 de 500 miembros ya fueron eliminados de forma suave, esos 200 siguen eliminados. Usa la papelera de reciclaje para restaurarlos si es necesario.

Cuánto tiempo se mantiene el historial

Las filas de ejecución viven en bulk_action_runs y se quedan durante 90 días. Después de eso, un trabajo nocturno las archiva fuera de la tabla en vivo. La auditoría permanente de quién-cambió-qué está en el registro de auditoría, que retiene indefinidamente.

Notificaciones

Si una ejecución toma más de 30 segundos, GCM envía un correo al usuario que la inició cuando termina. Si la ejecución llega a Parcial o Fallida, el correo incluye un enlace directo a la página de detalle de la ejecución. Para ejecuciones de menos de 30 segundos verás el resultado en la página, sin correo.

Próximos pasos

  1. Asignar y asistencia en masa — las acciones masivas más comunes.
  2. Eliminar y restaurar — eliminación suave y la ventana de 30 días.
  3. Registro de auditoría — registro a largo plazo de lo que cambió.
  4. Usuarios y roles → Registro de auditoría — para rastrear concesiones y revocaciones de permisos.