.. _sh-logs: Bitácora de sucesos =================== vulgo, ¿cómo hago que mis *scripts* escriban en el registro? En ciertos *scripts* puede interesarnos que quede registrada su actividad, sobre todo cuando se ejecutan en segundo plano sin nuestra intervención directa. Lo mejor en estos casos es hacer que el *script* escriba en el registro y para ello podemos usar una función como ésta que usa la orden :ref:`logger `: .. literalinclude:: files/log.sh :language: bash Para usarla basta con incluir antes del mensaje su nivel de gravedad: .. code-block:: bash log ERROR "Esto es un error horroroso" log INFO "Un mensaje de información sin mucha chicha" Observa el valor de dos variables: **LOGLEVEL** que indica el nivel por debajo del cual se registrarán los mensajes. Por defecto está fijado en el nivel 4, o sea, que cualquier mensaje de *warning* o más grave, se registrará. **LOGERR** que si no tiene valor nulo propicia que los mensajes en vez de ir al registro, se envíen a la salida de errores. Puede ser útil como complemento a la depuración o cuando ejecutamos el *script* manualmente. No obstante, los mensajes críticos (o sea, los que obligan a cerrar la aplicación), se escriben en cualquier caso en la salida de errores (y también en el registro, si *LOGERROR* no tiene valor).