Skip to content
Sends your logs to files, sockets, inboxes, databases and various web services
Find file
New pull request
Latest commit cab3ff7 @Seldaek Add regression test for #691 and optimize implementation using a sing…
…le pass loop over the handlers, refs #692


Monolog - Logging for PHP Build Status

Total Downloads Latest Stable Version Reference Status

Monolog sends your logs to files, sockets, inboxes, databases and various web services. See the complete list of handlers below. Special handlers allow you to build advanced logging strategies.

This library implements the PSR-3 interface that you can type-hint against in your own libraries to keep a maximum of interoperability. You can also use it in your applications to make sure you can always use another compatible logger at a later time. As of 1.11.0 Monolog public APIs will also accept PSR-3 log levels. Internally Monolog still uses its own level scheme since it predates PSR-3.


Install the latest version with

$ composer require monolog/monolog

Basic Usage


use Monolog\Logger;
use Monolog\Handler\StreamHandler;

// create a log channel
$log = new Logger('name');
$log->pushHandler(new StreamHandler('path/to/your.log', Logger::WARNING));

// add records to the log


Third Party Packages

Third party handlers, formatters and processors are listed in the wiki. You can also add your own there if you publish one.



  • Monolog works with PHP 5.3 or above, and is also tested to work with HHVM.

Submitting bugs and feature requests

Bugs and feature request are tracked on GitHub

Framework Integrations


Jordi Boggiano - -
See also the list of contributors which participated in this project.


Monolog is licensed under the MIT License - see the LICENSE file for details


This library is heavily inspired by Python's Logbook library, although most concepts have been adjusted to fit to the PHP world.

Something went wrong with that request. Please try again.