X-Git-Url: https://git.llucax.com/z.facultad/75.08/llamadas.git/blobdiff_plain/b2fdb3bf930fe5c733a580a813e095f5e600a2e2..8924bf6b7d40b1b543706926d806e4104db61393:/inst/util.sh?ds=inline diff --git a/inst/util.sh b/inst/util.sh index 1cfb6c1..2465e98 100755 --- a/inst/util.sh +++ b/inst/util.sh @@ -133,3 +133,34 @@ perr() echo $@ >&2 } + +# Pone un MSG en el log +# Parametros : +# $1 = Archivo del log +# $2 = Comando +# $3 = Mensaje +# $4 = Tamaño maximo +put_log() { + fecha=$(date +%d/%m/%Y-%H:%M) + echo "$fecha $USER $2:\"$3\"" >> $1 + + clean_log "$1" "$4" +} + +# Trunca un archivo de log si pasa el tamaño máximo. +# Uso: clean_log log_filename max_log_size_bytes +clean_log() +{ + LOGFILE="$1" + LOGSIZE="$2" + # Archivo temporal + tmp=`dirname "$LOGFILE"`"/`basename $0`.$$.temp" + # Verifico que el logfile no se pase del tamaño maximo + tam=`stat -c '%s' "$LOGFILE"` + # Si se paso del maximo dejo las ultimas 100 lineas + if [ "$tam" -ge "$LOGSIZE" ]; then + tail -n 100 "$LOGFILE" > "$tmp" + mv "$tmp" "$LOGFILE" + fi +} +