
Monitoreo de tareas mejorado con los métodos condicionales de ping de Laravel
- Publicado el 20 enero, 2025
- Palabras: 41
Tome el control de la supervisión de tareas programadas con las últimas incorporaciones al programador de Laravel. Estos nuevos métodos condicionales de ping facilitan la notificación a los servicios sobre el estado de las tareas cuando es necesario.

#Uso básico
Configurar notificaciones de ping condicionales:
Schedule::command('backup:run')->hourly()
->pingBeforeIf($condition, $url . '/starting')
->pingOnSuccessIf($condition, $url . '/finished')
->pingOnFailureIf($condition, $url . '/failed');
#Ejemplo práctico
A continuación se explica cómo implementar una supervisión de tareas integral:
class TaskScheduler
{
public function registerTasks()
{
// Configuration
$monitoringEnabled = config('monitoring.enabled');
$baseUrl = config('monitoring.webhook_url');
// Database backup task
Schedule::command('backup:run')
->daily()
->at('01:00')
->pingBeforeIf($monitoringEnabled, "{$baseUrl}/backup/starting")
->pingOnSuccessIf($monitoringEnabled, "{$baseUrl}/backup/finished")
->pingOnFailureIf($monitoringEnabled, "{$baseUrl}/backup/failed");
// Cache cleanup task
Schedule::command('cache:prune-stale-tags')
->weekly()
->sundays()
->at('00:00')
->pingBeforeIf($monitoringEnabled, "{$baseUrl}/cache/starting")
->pingOnSuccessIf($monitoringEnabled, "{$baseUrl}/cache/finished")
->pingOnFailureIf($monitoringEnabled, "{$baseUrl}/cache/failed");
// Report generation
Schedule::job(new GenerateWeeklyReport)
->weekly()
->mondays()
->at('05:00')
->pingBeforeIf(
$monitoringEnabled && app()->environment('production'),
"{$baseUrl}/reports/starting"
)
->pingOnSuccessIf(
$monitoringEnabled && app()->environment('production'),
"{$baseUrl}/reports/finished"
)
->pingOnFailureIf(
$monitoringEnabled && app()->environment('production'),
"{$baseUrl}/reports/failed"
);
}
}
Estos métodos condicionales de ping proporcionan una supervisión de tareas flexible que se puede habilitar o deshabilitar fácilmente según su entorno o configuración.
Fuente: Harris Raftopoulos
Artículos relacionados
Inicia la conversación
Hazte miembro de Antonio Jenaro para comenzar a comentar.
Regístrate ahora¿Ya estás registrado? Inicia sesión