Wie bindet man den Monolog ErrorHandler in das eigene Plugin ein?

Hallo,

 

ich brauche die Monolog ErrorHandler Klasse in meinen Plugin, denn ich stelle API Requests und eine weiße Seite zu haben und nicht zu wissen warum, ist nicht so toll. Prinzipiell funktioniert, ich möchte nur wissen, ob ich das so auch gewollt ist, oder besser gesagt, ob ich es richtig verwende.

 

Wenn man es im Event Enlight_Controller_Front_StartDispatch macht, dann schmeißt er wilde Division by Zero Exceptions und sowas, aber alle aus dem Cache Ordner. Durch Code durchsuchen, habe ich herausgefunden, dass es zwar ein Event onStartDispatch gibt, das aber niemals aufgerufen wird:

 'registerErrorHandler'
        ];
    }

    public function registerErrorHandler()
    {
        /**
         * @var SwagLogger $logger
         */
        $logger = $this->container->get('pluginlogger');
        // register error handler, that shopware doesn't by default.
        ErrorHandler::register($logger);
    }
}

 

 

Zu erwähnen ist noch, dass ich das 5.2 Plugin System verwende.

 

Über Tipps / Hinweise diesbezüglich würde ich mich freuen.

Mit dem Logger kannst Du selbst bestimmte Ereignisse loggen, das hat nichts mit dem ErrorHandler zu tun IMHO.

 $logger-\>info('Eine tolle info'); $logger-\>error('Ein schöner Fehler'); 

 

Habe die Frage die geändert, denn die Methode wird nicht aufgerufen.

 

Und doch, der ErrorHandler hat etwas mit dem Logger zu tun. Denn der ErrorHandler wird auf den Logger registriert. Ist das nicht der Fall, dann loggt er auch keine PHP Fehler. Und das brauche ich für den REST API Entwicklung in meinen Plugin.

Also, nach langem suchen habe ich das mal als Bug eingereicht, da es ich feststellen musste, dass das Problem wirklich bei Shopware liegt. Würde der ErrorHandler nicht gehen, dann hätten sich schon sehr viel andere Projekte beschwert, die auf Monolog aufbauen. Bug Report siehe hier: Shopware Issuetracker