Relatórios do Sarg por grupo
Publicado por Andre Luiz da Silva 11/09/2006
[ Hits: 7.524 ]
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");
}
}
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Fedora KDE plasma 42 X Módulo de segurança BB (Warsaw-2) (1)
O programa assinador digital (1)
PIP3 - erro ao instalar módulo do mariadb para o Python (9)









