SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 222 visiteurs en ce moment

Accueil > Optimisation et performances > Les Logs

Les Logs

26 août 2014 – par amilcar, JLuc

9 votes

C’est bavard les log , encore faut il savoir les faire parler ..., ci dessous ce qu’un néophyte a pu comprendre avec l’aide de spécialistes.

Les fichiers *.log, c’est quoi ?

Un fichier log est un fichier journal au format texte qui pour chaque page vue sur votre site enregistre un certain nombre d’informations techniques générées par SPIP ou par des plugins.

Chacune de ces informations est stockée sur une ligne.

Intérêt des fichiers log et pourquoi les analyser ?

Les informations que recueillent les fichiers de log vous informent de certaines situations rencontrées par le code php, qui pourraient vous être utiles pour comprendre ce qui se passe, en cas de problème par exemple, ou pour la maintenance, ou pour vous aider à optimiser vos squelettes, ou pour vous aider à comprendre le comportement des visiteurs qui arrivent sur votre site.

Les fichiers log peuvent se révéler fastidieux en raison de leur longueur et de l’enchevêtrement peu pratique et peu esthétique de chiffres et de textes. Néanmoins, il est utile de régulièrement les analyser pour détecter et résoudre des problèmes qui seraient apparus sur le site.

Comment lire un fichier log ?

Tout simplement en ouvrant un éditeur de texte standard ou via votre console.

-  Quelques commandes pour lire les logs en console linux :
-  sudo tail -F Nom_du_fichier.log
-  fgrep 500 access-xxx.log | grep -v 200

Il existe aussi le plugin Simples Logs qui permet de lire les logs directement depuis la partie privée.

Pourquoi y a t il plusieurs fichiers de log avec le même nom ?

Vous verrez qu’il y a plusieurs fichiers de logs avec le même nom, mais une extension .1, .2 ou .3 en plus.
Exemple : spip.log, spip.log.1, spip.log.2

En effet, chaque fichier de log est limité à 100 kilo octets par défaut. Au delà de cette taille, le fichier courant est renommé avec l’extension .log.1 et un nouveau fichier vierge est créé pour recueillir les nouveaux logs.
Lorsque la limite de taille est atteinte de nouveau, l’éventuel .log.1 existant est renommé en .log.2 avant l’opération ci-dessus. De même, l’éventuel .log.2 existant est renommé en .log.3 avant l’opération ci-dessus.
Enfin, l’éventuel .log.3 existant est supprimé avant l’opération ci-dessus.

On verra plus loin que le nombre de fichier de logs gardés et leur taille maximale peuvent être paramétrés.

Où sont les logs Spip

Ils sont rangés dans divers répertoires temporaires de votre site.

Chez moi, /home/www/spipfactory/public_html/ étant la racine du dossier contenant le site :

  • /home/www/spipfactory/public_html/tmp/
    • spip.log
  • /home/www/spipfactory/public_html/tmp/log/
    • mysql.log
    • mysqlmysql.log
    • spip.log
  • Pour un Spip mutualisé : xxx étant le nom du site, /home/www/spipfactory/public_html/sites/xxx/tmp/log/
    • maj.log
    • spip.log
    • spip_error.log
    • sqlite.log

Quels sont les termes employés dans les logs ?

  • (pid xxxxx)
    numéro de processus sur le serveur. 1 Pid = 1 hit sur le serveur. Si le pid change, c’est que c’est un autre hit (qui peut être un hit ajax du même utilisateur, ou un hit d’un autre utilisateur).
  • Pub = public : un log qui se fait en affichant l’espace public
  • Pri = privé : un log qui se fait en affichant l’espace privé

Les termes ’INFO’, ’ERREUR’, ’WARNING’, mais aussi parfois ’ALERTE’, ’CRITIQUE’, ’debug’ indiquent le degré de log tels que définis là http://core.spip.org/projects/spip/repository/entry/spip/ecrire/inc_version.php#L139 et http://core.spip.org/projects/spip/repository/entry/spip/ecrire/inc/utils.php#L258

Paramétrage des logs dans le fichier mes_options.php

Le fichier de configuration ecrire/inc_version.php définit la taille maximale des fichiers de log et le nombre de log par défaut.
Ces valeurs peuvent être paramétrées dans mes_options.php.
Il est possible de désactiver les logs en mettant l’une de ces valeurs à zéro.

$GLOBALS['nombre_de_logs'] = 4; // 4 fichiers au plus
$GLOBALS['taille_des_logs'] = 100; // de 100ko au plus

Une constante _MAX_LOG (valant 100 par défaut) indique le nombre d’entrées que chaque appel d’une page peut écrire. Ainsi, après 100 appels de spip_log() par un même script, la fonction ne log plus.

La constante _LOG_FILTRE_GRAVITE définit le niveau maximal de gravité des informations à enregistrer dans les fichiers de log de SPIP.
Par défaut seuls les logs d’erreur sont enregistrés pour réduire la verbosité mais pendant la phase de développement, il peut être nécessaire d’obtenir des logs plus détaillés : dans ce cas vous redéfinirez la constante dans votre fichier config/mes_options.php

// définir le niveau maximum de verbosité des logs
define('_LOG_FILTRE_GRAVITE', _LOG_DEBUG);

Le niveau par défaut est dans ce cas de 5.

Les différentes valeurs de cette constante sont (du moins verbeux au plus verbeux)

  • _LOG_HS (= 0)
  • _LOG_ALERTE_ROUGE (= 1)
  • _LOG_CRITIQUE (= 2)
  • _LOG_ERREUR (= 3)
  • _LOG_AVERTISSEMENT (= 4)
  • _LOG_INFO_IMPORTANTE (= 5)
  • _LOG_INFO (= 6)
  • _LOG_DEBUG (= 7)

Le niveau _LOG_HS correspond à des erreurs graves : échec écriture session, échec connexion, requête non prévue pour le type de base de donnée, base absente ou droits manquants...

Le niveau _LOG_DEBUG est utilisé pour des messages intentionnellement laissés par le développeur, sans qu’il y ait problème mais pour l’aider dans sa mise au point.

5° Documentation

Voir aussi
-  la lame « SPIP et les logs » du couteau suisse.
-  le plugin Simplog : il permet de consulter les logs et de supprimer les plus anciens.

Dernière modification de cette page le 18 mars 2017

Retour en haut de la page

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Flux RSS configurable

    8 avril 2011 – 63 commentaires

    Ce plugin vous permet de personnaliser le fonctionnement de votre flux RSS à l’aide d’un formulaire dans l’espace privé. Instalation Pour fonctionner, ce plugin nécessite que le plugin Itérateurs soit installé et activé sur votre site. Par (...)

  • Facteur

    21 janvier 2010 – 386 commentaires

    Un plugin pour regrouper toutes les fonctions avancées autour de l’envoi de courriels. Introduction SPIP propose une fonction générique envoyer_mail() pour envoyer un courriel. Elle est assez simple d’utilisation mais peut paraître limitée (...)

  • Formidable, le générateur de formulaires

    23 janvier 2012 – 2149 commentaires

    Un générateur de formulaires facilement configurable pour les non-informaticiens et facilement extensible pour les développeurs. Introduction L’objectif était de créer un plugin permettant de générer des formulaires. Historiquement, 2 plugins (...)

  • Le plugin FreeRadio 1.0

    25 mai 2011 – 32 commentaires

    Le plugin SPIP FreeRadio est un lecteur de flux audio gratuit à intégrer dans le corps des articles. Il permet de se mettre « à l’écoute » de WebRadios ou de sons à partir de leurs URL. FreeRadio est écrit en actionscript. Facile à intégrer, il est (...)

  • Albums 3

    8 août 2014 – 225 commentaires

    Le plugin « Albums » évolue dans une version 3 pour SPIP 3. Avant d’effectuer une mise à jour depuis la version 1 ou 2, consultez les notes sur la rétro-compatibilité. Les modèles, notamment, on reçut quelques changements pour la bonne cause. En (...)