IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

Log de tracage en php


Sujet :

Linux

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    817
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 817
    Points : 795
    Points
    795
    Par défaut Log de tracage en php
    bonjour
    voici un script de tracage dans un repertoire de log :
    http://www.linux-pour-lesnuls.com/logsecure.txt (je l'ai mis en .txt afin de debogage )

    en gros , ce script examine les ips se connectant sur une des pages du site
    et les traitent selon les degré d'erreur qu'ils engendrent

    j'inclus ensuite le script dans une page à tester :
    http://www.linux-pour-lesnuls.com/astucebash.php

    <?
    include ("head.php");
    include ("connecte.php");
    include ("logsecure.php");
    ?>


    je cree au préalable un repertoire log ou seront placées les lignes de log comme indiqué dans le script

    if(!defined('repertoire_log'))
    {

    // alors il l'a défini avec comme valeur log/
    // (ce repertoire contiendra le classement des erreurs,
    // à vous de le créer)

    define ("repertoire_log","log/");

    }

    je donne a ce repertoire les droits maximaux (chmod 777 chown deny:deny )
    ,provisoirement a fin de test .

    j'oriente mon navigateur sur la page astucebash.php et rien ne s'ecrit dans le rep log ,
    comment debugger ?

    merci

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    817
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 817
    Points : 795
    Points
    795
    Par défaut
    je rajoute quelques precisions quand a ce probleme de non-ecriture dans un fichier log :

    le rep en question
    chmod o+rwt /home/deny/aide

    pas de lignes de log a ce sujet dans
    /home/deny/error_log qui correpond aux logs de ce virtualhost

    merci

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    817
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 817
    Points : 795
    Points
    795
    Par défaut
    toujours avec ce meme probleme
    j'ai tracé dans le script ou le probleme peut survenir
    mais je ne suis pas plus avancé



    la balise d'erreur n3 fonctionne
    mais celle n4 n'est plus ecrit dans les logs

    //on renvoie la capture à la fonction de traitement
    traitement_e($type."[$errno] $errstr\n".
    "Ligne:".$errline.
    "Fichier:".$errfile."\n");

    }
    error_log('n3',0);
    function traitement_e($erreur)
    {
    //$erreur contient le message d'erreur
    //$info=data:jour-mois-annee heure:minute:seconde + IP du client
    $info=date("d/m/Y H:i:s",time())." :".$_SERVER['REMOTE_ADRR'].
    //+Serialisation du tableau $_GET, soit toutes les variables
    // passées par URL
    "\n\t GET:".serialize($_GET).
    //+Serialisation du tableau $_POST, soit toutes les variables
    // passées par méthode POST
    "\n\t POST:".serialize($_POST).

    //+ si la variable $_COOKIE est definie alors renvoie
    //+Serialisation du tableau $_COOKIE, soit tout le contenu
    //du cookie ,sinon renvoie " Undefined".
    "\n\t COOKIE:".
    (isset($_COOKIE)? serialize($_COOKIE):"Undefined").

    //+ si la variable $_SESSION est definie alors renvoie
    //+Serialisation du tableau $_SESSION, soit toutes les variables
    //contenues dans la session ,sinon renvoie " Undefined".
    "\n\t SESSION:".
    (isset($_SESSION)? serialize($_SESSION):"Undefined").

    //+Serialisation du tableau $_SERVER, soit toutes les variables
    //serveurs.
    "\n\t SERVER:".serialize($_SERVER)."\n\n";
    //$rep= repertoire ou sont contenus les logs concatenes au
    // jour-mois-annee actuels
    $rep= repertoire_log.date("d-m-Y".time());
    //si le repertoire $rep n'existe pas
    if(!is_dir($rep))
    {
    //alors cree le repertoire (crée le repertoire
    //jour-mois-annee actuel) S'il echoue , renvoie un message
    // et stoppe la fonction.
    if(!@mkdir($rep))
    {
    echo "vérifier l'existence du repertoire"
    .repertoire_log;
    return FALSE;

    }
    }
    error_log('n4',0);
    //$fp ouvre le fichier se trouvant dans $rep du nom de l'heure
    //actuelle concaténée à "h" en mode ajout .Si le fichier n'existe pas ,
    //il se crée.

Discussions similaires

  1. parser un fichier log avec un script php
    Par franco9 dans le forum Langage
    Réponses: 1
    Dernier message: 01/03/2013, 21h08
  2. [FirePHP] Récupérer les logs dans un tableau php
    Par Concombre Masqué dans le forum Bibliothèques et frameworks
    Réponses: 0
    Dernier message: 10/12/2010, 11h48
  3. Réponses: 2
    Dernier message: 09/09/2008, 11h58
  4. [Question] Logs mysql et scripts php
    Par sliderman dans le forum Requêtes
    Réponses: 0
    Dernier message: 25/10/2007, 15h39
  5. [easy php][log]requetes
    Par trach.sam dans le forum Requêtes
    Réponses: 5
    Dernier message: 30/11/2006, 22h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo