Débug Magento

En standard

  1. Fontend Hints : utilisation via Magicento Alt+M
  2. Logs : utilisation via <?php Mage::log('Mon message'); ?>, voir ci-dessous
  3. Traduction en ligne (à ne pas utiliser)

Utilisation d'une toolbar

A quoi cela sert ?

  • Eviter de devoir aller dans l'administration
  • Affichage des blocks / Events / controllers
  • Détails (et nombre) des requêtes SQL

Mgt Developer Toolbar

Disponible ici http://www.mgt-commerce.com/magento-developer-toolbar.html. Attention, le repository GitHub n'est pas à jour

Magerun

Magerun est un programme permettant de manipuler Magento en ligne commande.

Installation

curl -o n98-magerun.phar https://raw.githubusercontent.com/netz98/n98-magerun/master/n98-magerun.phar
chmod +x ./n98-magerun.phar
mv ./n98-magerun.phar ./magerun
sudo cp ./magerun /usr/local/bin/

Utilisation

Modifier la base URL :

magerun config:set  "web/unsecure/base_url" "http://www.localhost.dev/"
magerun config:set  "web/secure/base_url" "http://www.localhost.dev/"
magerun config:set  "web/cookie/cookie_domain" "www.localhost.dev"

Créer un administrateur pour accéder à l'admin de Magento :

magerun admin:user:create fma fma@ph2m.com azerty Frederic MARTINEZ

Créer un utilisateur pour accèder à un compte client en front-end :

magerun customer:create frederic.martinez@ph2m.com azerty Frederic MARTINEZ base

Prolonger la durée de session pour les administrateurs :

magerun config:set  "admin/security/session_cookie_lifetime" "999999"

Activer les logs :

magerun config:set  "dev/log/active" "1"

Désactiver le cache et vider le cache :

magerun cache:disable
magerun cache:flush

N'hésitez pas à aller consulter la liste des commandes disponibles.

Logs Magento

Activation

Activer les logs depuis le backoffce ou via Magerun :

Activer les logs :

magerun config:set  "dev/log/active" "1"

Vous pouvez suivre les logs - par défaut - sur log/system.log :

tail -f var/log/system.log

Pour changer le fichier par défaut :

magerun config:set  "dev/log/file" "new-system.log"

Utilisation

Afficher un texte sur system.log :

<?php Mage::log('My log'); ?>

Utilisation poussée :

<?php Mage::log('Log Emergency', 0); ?>
<?php Mage::log('Log Critical', 1); ?>
// ... de 0 jusqu'à 7

Ecrire dans un fichier différent :

<?php Mage::log('Log Emergency', 0, 'cron.log'); ?>