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