Ouverture fichier php

[Résolu]
Signaler
Messages postés
110
Date d'inscription
dimanche 23 janvier 2005
Statut
Membre
Dernière intervention
2 avril 2010
-
Messages postés
110
Date d'inscription
dimanche 23 janvier 2005
Statut
Membre
Dernière intervention
2 avril 2010
-
Bonjour!

Voila, en php, j'ouvre un fichier de log (Squid) dans un tableau puis affiche les logs en fonctions de l'heure, de l'utilisateur etc...

Pas de problème jusque la, sauf que, au bout d'un mois car je sauvegarde et remet à blanc le log tout les mois, le fichier devrait être un peu trop gros pour que je puisse utiliser ma méthode de stockage dans un tableau!

Donc quelle serait la meilleure solution? Sauvegarder les logs toutes les semaines ou bien utilisaer une autre méthode?

Voici un bout du code :

$logfile = "/var/log/squid/access-0".$mo."-0".$an.".log";

if (!file_exists($logfile)) {
    if (file_exists("/var/log/squid/access.log"))
        $results=file("/var/log/squid/access.log");
} else $results=file($logfile);

$n=0;
for($i=0;$i<sizeof($results);$i++){
    eregi("\\- (.*) \\[", $results[$i] , $Users);
    if ($Users[1] == $util) {Ajout($HOR[1], "a", $Annees, $an);
        eregi(""(.*)"", $results[$i] , $GETS);
        eregi("\\[(.*)\\]", $results[$i] , $HOR);
        eregi("(.*) \\-", $results[$i], $IP);

        $GETS[1] = str_replace(" HTTP/1.1", '', $GETS[1]);
        $GETS[1] = str_replace("GET ", '', $GETS[1]);
        if ($det != "true") {
            $GETS[1] = parse_url($GETS[1], PHP_URL_HOST);
        }
        $Visites[$n] = $GETS[1];
        $AdrIP[$n] = $IP[1];

        eregi("(.*) \\+0200", $HOR[1], $HOR);
        $Horaires[$n] = $HOR[1];
        $n++;
    }
}

Merci d'avance!

2 réponses

Messages postés
3706
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
30
Salut,

Tout dépend de ce que tu veux afficher :
la dernière semaine suffit :
    - tu sauvegardes toute les semaines
    - ou mieux, tu n'appelles que la fin de ton fichier de log (jette un oeil sur la source de Equilibrius)
le mois complet :
   - tu peux faire un système de pagination qui appelle par exemple 1 semaine par page. En t'inspirant de la source sus citée c'est "facilement"
   réalisable

Cordialement,

Kohntark -
Messages postés
110
Date d'inscription
dimanche 23 janvier 2005
Statut
Membre
Dernière intervention
2 avril 2010

Mmm oui pourquoi pas, 1 jour par page je crois que je vais devoir faire, mon fichier fais déjà 8Mo en deux jours xD

Bon ben va falloir que je reprogramme tout ça!