Présentation du lxErrorLoggerPlugin


cedric
Présentation du lxErrorLoggerPlugin

Voici le petit dernier des plugins Symfony de chez Lexik, lxErrorLoggerPlugin, son but est simple : vous alerter en cas d’erreurs PHP ou Exceptions sur vos projets Symfony.
Le besoin est simple, être alerté et éventuellement logger chaque erreurs, qu’elles soient PHP, Exception ou erreurs remontées par Symfony. En effet le logger de base de Symfony s’arrête aux erreurs remontées par ses soins mais ne remontent pas forcément aux erreurs PHP. Le système de notification du plugin est très flexible grâce à une série de « notifier » que l’on peut activer ou non de façon indépendante les uns des autres.

(suite…)

Show Comments (11)

Comments

  • AYoub

    Bonjour,
    J\’ai installé le plugin et activé seulement la notification par email.

    j\’ai ceci : Allowed memory size of 134217728 bytes exhausted (tried to allocate 102236161 bytes)

    plugins/lxErrorLoggerPlugin/lib/logger/lxErrorLoggerService.class.php, Line: 104

    j\’ai une memory Limit de 128M

    je pense que c\’est assez suffisant pour ce que fait mon appli.

    Merci

    • Article Author
  • cedric

    @AYoub : Salut, on eu une erreur similaire il y a peu de temps. Dans notre cas il s’agissait d’un script qui provoquait une erreur de mémoire insuffisante, du coup il y a une erreur à la terminaison du script, le error logger essaye de notifier l’erreur mais étant donné qu’il n’y a plus assez de mémoire disponible on obtient une autre fatal error.
    Tu peux peut être essayer en passant l’option ‘reserve_memory’ à true.

    • Article Author
  • AYoub

    @cedric: Merci pour la réponse, ceci dit j’ai fait ce que tu m’as dis mais rien :/ le truc c’est que rien ne se passe si je passe à l’environnement dev

    • Article Author
  • Julien

    Bonjour,

    Pouvez vous mettre à jour votre module sur Git Hub ?

    Je rencontre le problème suivant : lors de l’apparition de certaines erreurs, une page blanche se charge sans aucun retour (pas de log symfony et lx)

    • Article Author
  • Samuel Breton

    On regarde dans l’aprem!

    • Article Author
  • jeremy

    Bonjour Julien,

    Il nous faudrait plus de détail pour pouvoir t’aider, tu as probablement une fatal error sur la page ce qui empêche de logger quoi que ce soit au niveau du lxErrorLogger, as tu tester de passer le paramètre « reserve_memory » à true ? (cf. doc app.yml du plugin)
    Cela permet de bloquer un peu de mémoire en cas de fatal error pour pouvoir faire un traitement.
    Quels sont les notifiers que tu as activé ?

    • Article Author
  • Julien

    Désolé pour le retard.

    Oui j’ai bien activé le reserve_memory.

    J’ai activé le log fichier et db. Le log via email étant trop gourmand pour l’instant.

    L’erreur de la page blanche s’affiche aléatoirement. Je désactive alors lx et tout fonctionne normalement.

    • Article Author
  • Thomas

    Je pense que ça vient des trace qui est très gourmand en mémoire (liste de tous les objets, et parfois avec des références circulaires ….)

    Mieux vaut faire sa trace en fonction de son besoin (genre juste un message ou le nom du fichier) plutôt que copier tout le context Php …

    • Article Author
  • Sullivan

    Je bidouille votre plugin, c’est vraiment sympa!

    Petit bemole, votre classe de notification en bdd utilise pdo et pas Doctrine, du coup on doit rentrer manuellement tout les parametres de la base, c’est pas tres grave mais c’est pas indique dans la doc (enfin je crois…).

    Par contre, vous faites directement un ‘INSERT INTO lx_error_logger’ et un ‘FROM lx_error_logger l’ sans tenir compte du possible prefixe pouvant être definie par symfony (tblname_format: im_%s // databases.yml), j’ai ajouter le mien (im_) à la main dans votre plugin, ça marche nickel, mais il serait bon de le faire automatiquement non ? 🙂

    Sinon bon boulot, ce plugin offre pas mal de possibilites interessantes ! 😉

    • Article Author
  • Sullivan

    Je bidouille votre plugin, c\’est vraiment sympa!

    Petit bemole, votre classe de notification en bdd utilise pdo et pas Doctrine, du coup on doit rentrer manuellement tout les parametres de la base, c\’est pas tres grave mais c\’est pas indique dans la doc (enfin je crois…).

    Par contre, vous faites directement un \’INSERT INTO lx_error_logger\’ et un \’FROM lx_error_logger l\’ sans tenir compte du possible prefixe pouvant être definie par symfony (tblname_format: im_%s // databases.yml), j\’ai ajouter le mien (im_) à la main dans votre plugin, ça marche nickel, mais il serait bon de le faire automatiquement non ? 🙂

    Sinon bon boulot, ce plugin offre pas mal de possibilites interessantes ! 😉

    • Article Author
  • Pascal

    Bonjour et merci pour cet excellent plugin qui a fait mon bonheur sur divers projets.

    Juste une question : avez vous prévu de le porter sur sf2?

    • Article Author

Recevez nos articles