Gerando e gerenciando relatórios mensais com o SARG

Um dos grandes problemas relacionados ao SARG diz respeito à criação e ao gerenciamento desses relatórios, haja visto que acabam consumindo quantidades significativas de espaço em disco. Neste artigo explico como gerar esses relatórios dos últimos 30 dias e apagar os excedentes.

[ Hits: 35.254 ]

Por: NewLinuxer em 25/06/2007


Gerando os relatórios



Primeiramente gostaria de salientar que este artigo foi baseado em artigos e dicas aqui do VOL e alguns tutoriais espalhados pela internet.

Para podermos gerar os relatórios diariamente teremos que criar um script para ser executado pelo cron.

Considerando que esta explicação se aplica a máquinas que estejam com o Squid e o Sarg rodando, vamos logo por a mão na massa (e se ainda não estão instalados, dê uma pesquisada aqui no site mesmo)!

Aí está o script:

#!/bin/bash

ANTERIOR=$(date --date "1 month ago" +%d/%m/%Y)
ATUAL=$(date --date "0 day ago" +%d/%m/%Y)

sarg -d $ANTERIOR-$ATUAL

Agora explicando.
  • Na primeira linha definimos a variável ANTERIOR, que se refere à data inicial do período ao qual o relatório se refere, não tem muito segredo, ela atribui a data no formato dd/mm/aaaa, porém é nela que está o "pulo do gato", pois a expressão "1 month ago" determina que a data na verdade é a data de um mês atrás, e poderia ser qualquer valor, por exemplo, "3 day ago", para três dias.
  • Na segunda definimos a variável ATUAL, que se refere à data de hoje, para o término do relatório, no mesmo formato, porém com 0 dias de atraso.
  • E na última linha simplesmente executamos o comando sarg com a opção -d seguido das duas variáveis separadas por hífen.

Tornamos o script executável com:

$ chmod +x /endereço_do_script/nome_do_script

Executamos e temos o relatório gerado, mas para que isso ocorra automaticamente devemos incluir uma entrada no arquivo /etc/crontab.

Para isso basta incluir a linha abaixo no arquivo:

59 23 * * * root /endereço_do_script/nome_do_script

Neste caso gerando o relatório todo dia às 23:59h.

    Próxima página

Páginas do artigo
   1. Gerando os relatórios
   2. Excluindo os relatórios antigos
Outros artigos deste autor

Wordpress: Hospede blogs no seu Linux

Análise sobre políticas de segurança da informação

Leitura recomendada

Servidor proxy (Squid)

PhpDansAdmin, protótipo de ferramenta web para administração do DansGuardian

Squid transparente com cache de arquivos + Windows Update + taxa de transferência em downloads

Administrando usuários do Squid via web como o Admuser

Corrigindo a falha "WARNING! Your cache is running out of filedescriptors" - Squid2.7STABLE9 Slackware 12

  
Comentários
[1] Comentário enviado por thyagofs em 25/06/2007 - 13:12h

Boa ! Dica simples, mas sempre de grande valia !
Obrigado por contribuir !

[2] Comentário enviado por adrianoturbo em 26/06/2007 - 21:37h

obrigado pelo tutorial bem objetivo.

[3] Comentário enviado por ronaldooliveira em 31/07/2007 - 18:08h

Boa Tarde amigo
Me foi muito útil essa explicação, inclusive já está rodando no meu servidor. Porém tenho mais um problema e gostaria de saber se vc poderia me ajudar. Tenho um servidor LTSP com 20 thin clients funcionando e acessando a internet, porém qdo o sarg gera o relatório aparece somente o do servidor LTSP. Ele mistura todos os acessos dos 20 thin clients, e mostra como se tivesse acesso do servidor LTSP. Vc sabe me dizer como consigo separar esses acessos e mostrar o relatório, thin client por thin client?

Agradeço desde já

[4] Comentário enviado por metabolicbh em 19/10/2007 - 13:17h

Já vi outros artigos como este, mas o seu ficou muito bem explicado. Parabens...

[5] Comentário enviado por Cr1stt0f3r em 30/10/2009 - 10:30h

olá amigo, qual a quantidade de relatorios que vc me indica a manter?

Desde ja agradeco.

[6] Comentário enviado por wtet em 30/10/2009 - 13:48h

Olá amigo,

a quantidade de relatórios e o tempo a mantê-los varia muito de acordo com a realidade de cada organização, o melhor a ser feito é uma análise da situação e identificar o que precisa ser verificado nesses relatórios, e quando serão necessários.
Também há que analisar a necessidade oriunda de requisitos regulamentatórios, como leis e contratos. Um exemplo disso é a obrigação que os provedores de internet terão (ou já têm, não sei ao certo) de manter logs por um tempo bem longo, algo como 3 anos.

porém para uma análise simples e rastreio de algum evento diria que algo como um mês é suficiente.

[7] Comentário enviado por chaplinux em 01/07/2010 - 12:22h

E Mensal e Anual? como devo proceder??


[8] Comentário enviado por rengaf1 em 24/04/2014 - 15:01h


[7] Comentário enviado por chaplinux em 01/07/2010 - 12:22h:

E Mensal e Anual? como devo proceder??



chaplinux faz assim...

Relatorio Mensal (apenas alterar para a variavel "0 day ago" para "1 month ago" )
Relatorio Anual (apenas alterar para a variavel "0 day ago" para "1 year ago" )

ou seja :

Mensal
------------------------------------------------------------------
#!/bin/bash

ANTERIOR=$(date --date "1 month ago" +%d/%m/%Y)
ATUAL=$(date --date "0 day ago" +%d/%m/%Y)

/usr/local/bin/sarg -d $ANTERIOR-$ATUAL -o /var/www/html/relatorios/mensal >/dev/null 2>&1

exit 0

----------------------------------------------------------

Anual

------------------------------------------------------------
#!/bin/bash

ANTERIOR=$(date --date "1 year ago" +%d/%m/%Y)
ATUAL=$(date --date "0 day ago" +%d/%m/%Y)

/usr/local/bin/sarg -d $ANTERIOR-$ATUAL -o /var/www/html/relatorios/anual >/dev/null 2>&1

exit 0
-----------------------------------------------


OBS: não esquecer de criar os diretorios /relatorios/mensal e /relatorios/anual. todos dentro de /var/www/html

qualquer duvida estamos ai.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts