Segue Script.
#################################################################################
#!/bin/bash
# SISTEMA OPERACIONAL: CENTOS 6.0.5
# BLOG: www.linuxstudylpi.blogspot.com.br
# ANALISTA DE SUPORTE/SERVIDORES
# DATA: 06/08/2012
# Script Para o Sarg - Relatório Semanal
# Cléio Sousa
#!/bin/bash
# declarando variavel "TODAY" que armazenar as informações/data de um dia atrás (1 day ago)
TODAY=$(date --date "1 day ago" +%d/%m/%Y)
# declarando variavel "YESTERDAY" que armazena informações/data de uma semana atrás (1 week ago)
YESTERDAY=$(date --date "1 week ago" +%d/%m/%Y)
# declarando variavel "DIA" que armazena informações/ data de um dia atrás.
DIA=$(date --date "1 day ago" +%d-%m-%y)
# renomeia o arquivo access.log acrescentando a data referente a variavel "DIA"
mv /var/log/squid/access.log /var/log/squid/access.log-$DIA
# exclui o arquivo de log do store
rm /var/log/squid/store.log -rf
# exclui o arquivo log do cache
rm /var/log/squid/cache.log -rf
# reload no squid, fazendo com que seja criado um novo arquivo access.log
service squid reload
# Gera o relatíorio de internet a partir do access.log-$DIA e o envia para o diretório
# /var/www/html/navegacao/semanal utilizando o formato de data-mês-ano das variaveis $YESTERDAY e # $TODAY
sarg -l /var/log/squid/access.log-$DIA -o /var/www/html/navegacao/semanal -z $YESTERDAY-$TODAY
exit 0
#################################################################################
#############Script Sem comentários########
#!/bin/sh
#Get current date
TODAY=$(date --date "1 day ago" +%d/%m/%Y)
#Get one week ago today
YESTERDAY=$(date --date "1 week ago" +%d/%m/%Y)
DIA=$(date --date "1 day ago" +%d-%m-%y)
mv /var/log/squid/access.log /var/log/squid/access.log-$DIA
rm /var/log/squid/store.log -rf
rm /var/log/squi/cache.log -rf
/etc/init.d/squid reload
mount 10.0.0.2:/www/navegacao/semanal /mnt/export
/usr/local/bin/sarg -l /var/log/squid/access.log-$DIA -o /mnt/export -z -d $YESTERDAY-$TODAY
umount /mnt/export
#############FIM##############################
Você pode agendar no cron para que seu script seja executado, também precisa dar as permissões de execução.
# chmod +x /etc/sarg_semanal.sh
Agendando no Cron.
# crontab -e
#[minutos] [horas] [dias do mes] [mes] [dia da semana]
00 00 * * 7 /etc/sarg_semanal.sh
# sarg sera executado no dia 7 domingo as 00:00
: x
Salve e saia.
Agora temos um script que vai ser executado aos domingos às 07:horas, gerando um relatório semanal, pegando do dia anterior e semana anterior dos acessos a Internet.
Bem é isso, espero que seja de ajuda, vlw.
Nenhum comentário:
Postar um comentário