CronJobClass
in package
Clase base para trabajos del cron. Permite separar la lógica de cada job en su propia clase, con utilidades para acumular la salida, guardarla en el log y avisar por email a los administradores.
Table of Contents
Constants
- ECHO_MODE_FULL : mixed = 'full'
- Modo de salida: imprime el texto al momento, además de acumularlo.
- ECHO_MODE_LOG : mixed = 'log'
- Modo de salida: solamente acumula el texto, sin imprimirlo.
- JOB_NAME : mixed = 'cron'
- Nombre del job. Se usa como canal al guardar la salida en el log.
Properties
- $echo : string
- $echo_mode : string
Methods
- echoMode() : void
- Establece el modo de salida del job.
- run() : void
- Punto de entrada del job. Aquí va la lógica a ejecutar.
- echo() : void
- Acumula el texto en la salida del job, y si el modo es ECHO_MODE_FULL, también lo imprime al momento.
- getEcho() : string
- Devuelve toda la salida acumulada del job.
- saveEcho() : void
- Guarda la salida acumulada del job en el log, con nivel info y JOB_NAME como canal, troceándola en registros de 3000 caracteres. Después la vacía.
- sendToAdmins() : void
- Envía un email a todos los usuarios administradores. Si el envío falla, añade el cuerpo a la salida del job.
- text() : void
- Acumula el texto en la salida del job sin imprimirlo, sea cual sea el modo.
Constants
ECHO_MODE_FULL
Modo de salida: imprime el texto al momento, además de acumularlo.
public
mixed
ECHO_MODE_FULL
= 'full'
ECHO_MODE_LOG
Modo de salida: solamente acumula el texto, sin imprimirlo.
public
mixed
ECHO_MODE_LOG
= 'log'
JOB_NAME
Nombre del job. Se usa como canal al guardar la salida en el log.
public
mixed
JOB_NAME
= 'cron'
Properties
$echo
private
static string
$echo
= ''
$echo_mode
private
static string
$echo_mode
= self::ECHO_MODE_FULL
Methods
echoMode()
Establece el modo de salida del job.
public
static echoMode(string $mode) : void
Parameters
- $mode : string
-
ECHO_MODE_FULL para imprimir al momento, ECHO_MODE_LOG para solo acumular.
run()
Punto de entrada del job. Aquí va la lógica a ejecutar.
public
abstract static run() : void
echo()
Acumula el texto en la salida del job, y si el modo es ECHO_MODE_FULL, también lo imprime al momento.
protected
static echo(string $text) : void
Parameters
- $text : string
-
Texto a mostrar.
getEcho()
Devuelve toda la salida acumulada del job.
protected
static getEcho() : string
Return values
stringsaveEcho()
Guarda la salida acumulada del job en el log, con nivel info y JOB_NAME como canal, troceándola en registros de 3000 caracteres. Después la vacía.
protected
static saveEcho() : void
sendToAdmins()
Envía un email a todos los usuarios administradores. Si el envío falla, añade el cuerpo a la salida del job.
protected
static sendToAdmins(string $subject, string $body) : void
Parameters
- $subject : string
-
Asunto del email.
- $body : string
-
Cuerpo del email. Los saltos de línea se convierten en
.
text()
Acumula el texto en la salida del job sin imprimirlo, sea cual sea el modo.
protected
static text(string $text) : void
Parameters
- $text : string
-
Texto a acumular.