Initial commit
This commit is contained in:
@@ -0,0 +1,13 @@
|
|||||||
|
{
|
||||||
|
"name": "pavlicek.dev/webapp-common-utils",
|
||||||
|
"description": "Collection of tools, utils and code chunks useful when creating web applications",
|
||||||
|
"autoload": {
|
||||||
|
"psr-0": {"": "lib/"}
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"php": ">= 8.2.0",
|
||||||
|
"psr/log": "*",
|
||||||
|
"monolog/monolog": "^2.9",
|
||||||
|
"mangoweb/monolog-tracy-handler": "^1.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
Executable
+36
@@ -0,0 +1,36 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Common;
|
||||||
|
|
||||||
|
use Psr\Log\LoggerInterface;
|
||||||
|
|
||||||
|
use Monolog\Logger;
|
||||||
|
use Monolog\Handler\NoopHandler;
|
||||||
|
use Monolog\Handler\StreamHandler;
|
||||||
|
use Monolog\Formatter\LineFormatter;
|
||||||
|
use Mangoweb\MonologTracyHandler\TracyHandler;
|
||||||
|
use Mangoweb\MonologTracyHandler\TracyProcessor;
|
||||||
|
|
||||||
|
class LoggerFactory
|
||||||
|
{
|
||||||
|
public static function create(string $log_directory) : LoggerInterface
|
||||||
|
{
|
||||||
|
$file_handler = new StreamHandler($log_directory . "/main.log", 'debug');
|
||||||
|
$file_handler->setFormatter(new LineFormatter(null, null , false, true));
|
||||||
|
|
||||||
|
$logger = new Logger('default');
|
||||||
|
$logger->pushProcessor(new TracyProcessor);
|
||||||
|
$logger->pushHandler(new TracyHandler($log_directory));
|
||||||
|
$logger->pushHandler($file_handler);
|
||||||
|
return $logger;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public static function createForTests() : LoggerInterface
|
||||||
|
{
|
||||||
|
$logger = new Logger('default');
|
||||||
|
$logger->pushHandler(new NoopHandler());
|
||||||
|
return $logger;
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user