Relatórios do Sarg por grupo
Publicado por Andre Luiz da Silva 11/09/2006
[ Hits: 7.678 ]
Homepage: http://localhost
Separa os relatorios do Sarg por posixGroup de uma base LDAP
#!/usr/bin/perl
# sarg-by-group.pl - Separa os relatorios do Sarg por posixGroup
# utilizando uma base LDAP
#
# Desenvolvido por: Andre Luiz da Silva <andrack@gmail.com>
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version
# 2 of the License, or (at your option) any later version.
use Net::LDAP;
$ldap = Net::LDAP->new("arquivos.sarg.inf.br") or die "$@";
$ldap->bind("dc=relatorios,dc=inf,dc=br");
$output_dir = "/srv/www/htdocs/squid-reports/";
$input_log = "/var/log/squid/access.log";
$sarg_bin = "/usr/bin/sarg";
$debug = "-z -x"; # Opcoes de debug do Sarg
$groups = $ldap->search(filter=>"(&(cn=*)(objectclass=posixgroup))", base=>"dc=relatorios,dc=inf,dc=br");
# Carrega o array com todos os grupos da base LDAP
@entries = $groups->entries;
# Para cada grupo, faca...
foreach $entry (@entries) {
$group = $entry->get_value("cn");
chdir ($output_dir);
if ( ! -d $group ) { # Cria o diretorio, caso ele nao exista
print "Criando diretorio: $group \n";
mkdir ("$group");
}
@members = $entry->get_value("memberUid"); # Carrega o array com os membros do grupo
# Para cada usuario, faca...
foreach $member (@members) {
print "Gerando relatorio do usuario: [$member]\n";
# Executa o Sarg passando o parametro '-u' para cada membro do grupo
system ("$sarg_bin -f /etc/sarg.conf -u $member -l $input_log -o $output_dir/$group");
}
}
Wallpapers aleatórios no Fluxbox
Calculadora com Perl com menos de 10 linhas de código
Verificação se utilizador existe ou não
Boas Práticas e Padrões Idiomáticos em Go e C
Vale a pena ter mais de uma interface grafica no seu Linux?
Estrutura e Funcionamento de um Ebuild no Gentoo Linux
Instalando o Tema de Ícones Tela Circle
Copiar Para e Mover Para no menu de contexto do Nautilus e Dolphin
Dotando o Thunar das opcoes Copiar para e Mover para no menu de contexto
Usando o ble.sh (Bash Line Editor) no lugar do bash completion
Instalação Dual Boot Linux+Windows 11 (4)
No Ubuntu 26.04, sudo passou a mostrar os asteriscos ao digitar por pa... (5)
Como instalar Warsaw no Gentoo? (0)
Como insiro e excluo um elemento XML e JSON ao código Javascript (1)









