Monologを単体で使う

結構単体で使うことが多いです。Monologはほんといいですよ。
vendorにmonologをおいておいて、monologのクラス作って、それぞれのページでログが必要な際にmonologのclassを呼んで使うみたいな感じになると思います。

Monologのインストール

まずはコンポーザーを入れてmonologを単体でひっぱってくるまで。

curl -s http://getcomposer.org/installer | php
php composer.phar require monolog/monolog

初期設定

vendor/autoload.phpを読み込んでしまえば殆ど作業は終わりで、logのパスとログインの内容を書いてゆけば終わり。楽。

<?php
require_once $_SERVER['DOCUMENT_ROOT'] . '/../vendor/autoload.php';

use Monolog\Logger;
use Monolog\Handler\StreamHandler;
use Monolog\Processor\WebProcessor;
use Monolog\Formatter\LineFormatter;

/**
 * Class AppLogger
 *
 */
class appLogger
{

    /**
     * @var Monolog\Logger
     */
    protected $log;

    public function __construct() {
        $this->log = new Logger('myLogger');
        $this->log->pushHandler(new StreamHandler($_SERVER['DOCUMENT_ROOT']."/../logs/custom.log", Logger::INFO));
    }

    public function foo()
    {
        $this->log->addDebug('debug_bar');
        $this->log->addInfo('info_bar');
        $this->log->addNotice('notice_bar');
        $this->log->addWarning('warning_bar');
        $this->log->addError('error_bar');
        $this->log->addCritical('critical_bar');
        $this->log->addAlert('alert_bar');
        $this->log->addEmergency('emergency_bar');
    }
}


$logObj = new appLogger();
$logObj->foo();
Last update: 2017.12.14 (木)