Pasos para la creación y optimización de los crones

  •  Verificar que siempre tengan la línea que se utiliza para ejecutar el cron #!/usr/bin/php -q
  • Si interactúa con la BD o con SAP siempre pase por los archivos que realizan la conexión:  include_once(‘/var/www/vhosts/grupoq.co.cr/httpdocs/crones/conexion_sap_y_mysql/connect_mysql.php’);
  • Si se van a utilizar librerías que siempre se hagan el llamo de la carpeta lib que se encuentra en crones ejemplo: include_once(‘/var/www/vhosts/grupoq.co.cr/httpdocs/crones/lib/includes_lib.inc.php’);
  • Si se realizan envíos de correo que se utilicen el módulo de template para esto es necesario realizar los siguientes include:
    • include_once(‘/var/www/vhosts/grupoq.co.cr/httpdocs/crones/lib/includes_lib.inc.php’);
    • define(‘CONFIG_PATH_SQL’,’/var/www/vhosts/grupoq.co.cr/httpdocs/qrm/sql/’);
    • define(“IMAGES_TEMPLATE”,’/var/www/vhosts/grupoq.co.cr/httpdocs/qrm/images/modulo_plantillas/’);
  • Si el cron se va a ejecutar en varios países crear un archivo sh donde se envían los parámetros
  • Poner documentación inicial donde tenga como mínimo la siguiente información:

 /*****************************************************************************

Creación:

    Autor:          Juan Carlos Mora R

    Fecha:          2015-03-17

    Descripción:    Ejemplo de formato de documentación de crones.

    Versión:        1.0

    Estructuras de entrada:

        * BAPI

            – ZQEV_DBM_DETCLIENTE

    Estructuras de salida:

        * MySQL

            – cliente_sap_test,

            – clientes_juridico,

            – cliente_fisico_test,

            – ssa_bitacora_clientes_test

    Recurrencia:        cada minuto

    Parámetros SH:

                $argv[1] //Pais

                $argv[2] //Nombre

Modificaciones:

    Fecha:          <>

    Autor:          <>

    Descripción:    <>

*****************************************************************************/

 

  •  Agregar la línea $tiempo_inicio = microtime(true); y $time_end = microtime(true); $time = $time_end – $tiempo_inicio; echo “Duracion: “.$time.” seconds\n”; para saber la duración de cron.
  • Cuando se vaya a pasar a producción eliminar los echos y print para que no llegue correos por cada ejecución. Solo se van a dejar para posibles fallos que se deben de revisar ya que esto llega a una cuenta de correo que se va a estar revisando cada cierto tiempo para verificar si hay fallas en los procesos.