Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information

Retourner aux forums || Retourner au forum Programmation.perl

Programmation.perl : Apache::ParseLog Et le parsing de log apache

Posté par eMerzh (Jabber id, page perso, ) le 13 février 2006
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

> Lire le message (2 commentaires, moyenne: 1,5).  

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.

Pas facile comme ca

Posté par Pascal Terjan (Jabber id, page perso, ) le 14/02/2006 à 07:01. (lien). Évalué à 2.

Tu pourrais donner plus de code ?
$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 (Jabber id, page perso, ) le 14/02/2006 à 08:03. (lien). Évalué à 1.

    Wep, je sais j'ai pas donner bcp d'info ... en voila :)

    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;

Revenir en haut de page || Retourner aux forums || Retourner au forum Programmation.perl