+ Responder ao Tópico



  1. #1
    sandroreis
    Visitante

    Padrão Script para compactar arquivos de log do squid

    Bom dia amigos,
    Preciso criar um script para "tarar" e "zipar" meus arquivos de logs do squid, diariamente e apos isso deletar os arquivos compactados e recriar os arquivos access.log, cache.log, store.log e rcsquid.log .

    Detalhe nao manjo nada de programacao Bash ...
    Qualquer ajuda e bem vinda!

    Obrigado desde ja!
    Sandro Reis
    SUSE Linux 9.0

  2. #2
    augusto_jdl
    Visitante

    Padrão Script para compactar arquivos de log do squid

    Meu amigo dê uma olhada nesta matéria do Rodrigo

    http://www.vivaolinux.com.br/scripts...hp?codigo=1372

  3. #3
    augusto_jdl
    Visitante

    Padrão Script para compactar arquivos de log do squid

    Código :
    #!/bin/bash
     
    #
    # Script para Geracao de Relatorio do SARG
    # Adaptado para utilizar logs de rotate e compactados
    #
    # Idealizado por Fernando Val <[email protected]>
    #
    # Histórico:
    #
    # versão   data        nome            comentários
    # 1.0.0.0  2004-11-16  Fernando Val    (none)
    #
     
    LOGDIR="/var/log/squid"
     
    function catlogs()
    {
            find $LOGDIR -maxdepth 1 -name "access.log*" -mtime -$DAYS |
                    xargs ls -tr /dev/null |
            while read LOGFILE ; do
                    [ -r "$LOGFILE" ] &&
                    case "$LOGFILE" in
                    *.gz)   zcat "$LOGFILE" ;;
                    *.bz2)  bzcat "$LOGFILE" ;;
                    *)      cat "$LOGFILE" ;;
                    esac
            done
    }
     
    function geralog()
    {
            # doreport DESTINATION FROMTIME-WHEN
            DAYS="$1"
            FROMTIME="$2"
            TOTIME="$3"
            STARTTIME=`date +%s -d "$FROMTIME"`
            ENDTIME=`date +%s -d "$TOTIME"`
            echo "Generating report from" \
                    "`date +%Y%m%d -d "$FROMTIME"`" "to" \
                    "`date +%Y%m%d -d "$TOTIME"`"
     
            # Unzip files before use ...
            # find $LOGDIR -maxdepth 1 -name "access.log-*.gz" -mtime -$DAYS -exec gunzip {} \;
            catlogs > /tmp/squid.log
    }
     
    geralog 7 "1 day ago 00:00" "00:00"
     
    exec /usr/bin/sarg \
            -l /tmp/squid.log \
    	-o /var/www/sarg/daily \
    	-d "$(date --date "1 day ago" +%d/%m/%Y)"
     
    rm -f /tmp/squid.log