You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
1.3 KiB
53 lines
1.3 KiB
<?php
|
|
|
|
require_once $_SERVER["DOCUMENT_ROOT"] . '/vendor/autoload.php';
|
|
|
|
use Monolog\Formatter\LineFormatter;
|
|
use Monolog\Handler\RotatingFileHandler;
|
|
use Monolog\Handler\StreamHandler;
|
|
use Monolog\Logger;
|
|
|
|
date_default_timezone_set("Asia/Shanghai");
|
|
|
|
function getStream($path)
|
|
{
|
|
// the default date format is "Y-m-d\TH:i:sP"
|
|
$dateFormat = "Y-n-j H:i:s";
|
|
// the default output format is "[%datetime%] %channel%.%level_name%: %message% %context% %extra%\n"
|
|
$output = "%datetime% > %level_name% > %message% %context% %extra%\n";
|
|
// finally, create a formatter
|
|
$formatter = new LineFormatter($output, $dateFormat);
|
|
// create a log channel
|
|
|
|
try {
|
|
$stream = new StreamHandler($path, Logger::INFO);
|
|
$stream->setFormatter($formatter);
|
|
} catch (Exception $e) {
|
|
error_log("init Monolog Stream config error");
|
|
}
|
|
return $stream;
|
|
}
|
|
|
|
function getLogger()
|
|
{
|
|
$log = new Logger('name');
|
|
// $log->pushHandler(getStream($_SERVER["DOCUMENT_ROOT"] . "/log/run.log"));
|
|
$log->pushHandler(getStream("php://stdout")); // <<< uses a stream
|
|
$log->pushHandler(new RotatingFileHandler($_SERVER["DOCUMENT_ROOT"] . "/log/run.log", 7));
|
|
return $log;
|
|
}
|
|
|
|
function info($msg)
|
|
{
|
|
getLogger()->info($msg);
|
|
}
|
|
|
|
function error($msg)
|
|
{
|
|
getLogger()->error($msg);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|