Skip to content

Instantly share code, notes, and snippets.

@dsoares
Forked from mamchenkov/monolog.php
Created June 8, 2017 16:24
Show Gist options
  • Save dsoares/759645a3373934e913d53fd43fbe6a5f to your computer and use it in GitHub Desktop.
Save dsoares/759645a3373934e913d53fd43fbe6a5f to your computer and use it in GitHub Desktop.

Revisions

  1. @mamchenkov mamchenkov revised this gist Nov 20, 2015. No changes.
  2. @mamchenkov mamchenkov created this gist Nov 20, 2015.
    34 changes: 34 additions & 0 deletions monolog.php
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,34 @@
    <?php
    // Before: composer require monolog/monolog

    // composer autoloader
    require_once 'vendor/autoload.php';

    // Shortcuts for simpler usage
    use \Monolog\Logger;
    use \Monolog\Formatter\LineFormatter;
    use \Monolog\Handler\StreamHandler;

    // Common logger
    $log = new Logger('files');

    // Line formatter without empty brackets in the end
    $formatter = new LineFormatter(null, null, false, true);

    // Debug level handler
    $debugHandler = new StreamHandler('debug.log', Logger::DEBUG);
    $debugHandler->setFormatter($formatter);

    // Error level handler
    $errorHandler = new StreamHandler('error.log', Logger::ERROR);
    $errorHandler->setFormatter($formatter);

    // This will have both DEBUG and ERROR messages
    $log->pushHandler($debugHandler);

    // This will have only ERROR messages
    $log->pushHandler($errorHandler);

    // The actual logging
    $log->debug('I am debug');
    $log->error('I am error', array('productId' => 123));