PHP Classes


Recommend this page to a friend!
  Classes of Filip Štamcar   PHPMailer Logging with Monolog   Download  
Role: Documentation
Content type: text/markdown
Description: Documentation
Class: PHPMailer Logging with Monolog
Log email sent via PHPMailer using Monolog
Author: By
Last change:
Date: 4 years ago
Size: 5,057 bytes


Class file image Download


[![Latest Stable Version][icon-stable-version]][link-packagist] [![Latest Untable Version][icon-unstable-version]][link-packagist] [![Total Downloads][icon-downloads]][link-packagist] [![License][icon-license]][link-license] [![PHP][icon-php]][link-php]

[![Linux Build Status][icon-travis]][link-travis] [![Windows Build Status][icon-appveyor]][link-appveyor] [![Code Coverage][icon-coverage]][link-coverage] [![Code Quality][icon-quality]][link-quality]

MonologPHPMailer is a [PHPMailer][link-phpmailer] handler for [Monolog][link-monolog]. It enables you to send logs to emails with PHPMailer.



MonologPHPMailer requires [PHP][link-php] 5.5.0 or higher, [Monolog][link-monolog] 1.x or 2.x and [PHPMailer][link-phpmailer] 6.x.

Using Composer

The reccomended way to install MonologPHPMailer is with [Composer][link-composer], dependency manager for PHP.

You should just add filips123/monolog-phpmailer to your project dependencies in composer.json. It will also install Monolog and PHPMailer, but it is reccomended to add them manually to composer.json.

    "require": {
        "monolog/monolog": "^1.0",
        "phpmailer/phpmailer": "^6.0",
        "filips123/monolog-phpmailer": "^1.0"

Do not forget to run composer install and add require 'vendor/autoload.php'; to your main script.

Manually Installation

Alternatively, you could download all files in directory [src][link-handlers] from GitHub and then manually include them in your script. You also have to install Monolog and PHPMailer manually.


You should just add handler MonologPHPMailer\PHPMailerHandler to your logger. It's first argument must be PHPMailer instance.



use MonologPHPMailer\PHPMailerHandler;

use Monolog\Formatter\HtmlFormatter;
use Monolog\Logger;
use Monolog\Processor\IntrospectionProcessor;
use Monolog\Processor\MemoryUsageProcessor;
use Monolog\Processor\WebProcessor;

use PHPMailer\PHPMailer\PHPMailer;

require __DIR__ . '/vendor/autoload.php';

$mailer = new PHPMailer(true);
$logger = new Logger('logger');

$mailer->Host = '';
$mailer->SMTPAuth = true;
$mailer->Username = '';
$mailer->Password = 'password';

$mailer->setFrom('', 'Logging Server');
$mailer->addAddress('', 'Your Name');

$logger->pushProcessor(new IntrospectionProcessor);
$logger->pushProcessor(new MemoryUsageProcessor);
$logger->pushProcessor(new WebProcessor);

$handler = new PHPMailerHandler($mailer);
$handler->setFormatter(new HtmlFormatter);


$logger->alert('Something went wrong!');


This library uses [SemVer][link-semver] SemVer for versioning. For the versions available, see the [tags on this repository][link-tags].


This library is licensed under the MIT license. See the [LICENSE][link-license-file] file for details.

[icon-stable-version]: [icon-unstable-version]: [icon-downloads]: [icon-license]: [icon-php]: [icon-travis]: [icon-appveyor]: [icon-coverage]: [icon-quality]:

[link-packagist]: [link-license]: [link-php]: [link-travis]: [link-appveyor]: [link-coverage]: [link-quality]:

[link-monolog]: [link-phpmailer]: [link-composer]: [link-handlers]: [link-semver]: [link-tags]: [link-license-file]: