Skip to content

Latest commit

 

History

History
27 lines (21 loc) · 838 Bytes

File metadata and controls

27 lines (21 loc) · 838 Bytes

Listening to console events

You can listen to the console events by adding listeners to Silex:

<?php

use Symfony\Component\Console\ConsoleEvents;
use Symfony\Component\Console\Event\ConsoleEvent;
use Symfony\Component\Console\Event\ConsoleExceptionEvent;
use Symfony\Component\Console\Event\ConsoleTerminateEvent;

$app->on(ConsoleEvents::EXCEPTION, function (ConsoleExceptionEvent $event) use ($app) {
    // Log console errors
    $app['logger']->error($event->getException()->getMessage());
});

$app->on(ConsoleEvents::TERMINATE, function (ConsoleTerminateEvent $event) use ($app) {
    $app['logger']->info(sprintf(
        'Command %s terminated with exit code %d.',
        $event->getCommand()->getName(),
        $event->getExitCode()
    ));
});