Hello vous tous :)
voila bon je sais ca doit être la 120 ième question du genre,
mais j'ai des souci avec le module Apache::ParseLog ( http://search.cpan.org/~akira/Apache-ParseLog-1.02/ParseLog.(...) )
je cherche à récupérer les log des fichier pour les stoké dans une BD.
j'ai donc installer le module avec perl MakeFile.pl
make
make test
et sudo make install
jusque là, pas de pbm.
ensuite je prend un de leur exemple que je test.
et paf ca marche pas
$transferlog = $base->getTransferLog(); ne me renvoi rien, donc impossible de récuperer les logs...
quelqu'un aurait-il un moyen de le faire fonctionner , des exemples, ou un autre moyen "simple" de parser les logs pour les mettre dans la bd.....
ps : je suis sous une debian stable.....
Merci beaucoup
# Pas facile comme ca
Posté par Pascal Terjan (site web personnel) . Évalué à 2.
$conf pointe bien vers le bon fichier de conf ?
Tu as bien TransferLog dans ce fichier de conf ? Après avoir lu les exemples je pense que $base->getCustomLog doit servir à plus de gens que $base->getTransferLog.
[^] # Re: Pas facile comme ca
Posté par eMerzh (site web personnel) . Évalué à 1.
dans le httpd.conf :
-----
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %T %v" full
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
CustomLog /var/log/apache/access.log combined
mon code :
----------------
#!/usr/bin/perl
use Apache::ParseLog;
$conf = "/etc/apache/httpd.conf";
$base = new Apache::ParseLog($conf);
$base->config([%fields]);
$tr=$base->getCustomLog("combined");
if($tr==0)
{
print "null";
exit;
}
%hit = $tr->hitbydate();
foreach (sort keys %hit) {
print "$_:\t$hitbydate{$_}\n"; # <date>: <hit counts>
}
exit;
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.