Syslog - Disabling
This commit is contained in:
parent
305f53ca26
commit
21158e7699
2 changed files with 149 additions and 9 deletions
|
@ -8,6 +8,7 @@ use Friendica\Network\HTTPException\InternalServerErrorException;
|
||||||
use Friendica\Util\Logger\FriendicaDevelopHandler;
|
use Friendica\Util\Logger\FriendicaDevelopHandler;
|
||||||
use Friendica\Util\Logger\Introspection;
|
use Friendica\Util\Logger\Introspection;
|
||||||
use Friendica\Util\Logger\SyslogLogger;
|
use Friendica\Util\Logger\SyslogLogger;
|
||||||
|
use Friendica\Util\Logger\VoidLogger;
|
||||||
use Friendica\Util\Logger\WorkerLogger;
|
use Friendica\Util\Logger\WorkerLogger;
|
||||||
use Friendica\Util\Profiler;
|
use Friendica\Util\Profiler;
|
||||||
use Monolog;
|
use Monolog;
|
||||||
|
@ -42,6 +43,10 @@ class LoggerFactory
|
||||||
*/
|
*/
|
||||||
public static function create($channel, Configuration $config)
|
public static function create($channel, Configuration $config)
|
||||||
{
|
{
|
||||||
|
if (empty($config->get('system', 'debugging', false))) {
|
||||||
|
return new VoidLogger();
|
||||||
|
}
|
||||||
|
|
||||||
$introspector = new Introspection(LogLevel::DEBUG, self::$ignoreClassList);
|
$introspector = new Introspection(LogLevel::DEBUG, self::$ignoreClassList);
|
||||||
switch ($config->get('system', 'logger_adapter', 'monolog')) {
|
switch ($config->get('system', 'logger_adapter', 'monolog')) {
|
||||||
case 'syslog':
|
case 'syslog':
|
||||||
|
@ -60,16 +65,11 @@ class LoggerFactory
|
||||||
$logger->pushProcessor(new Monolog\Processor\UidProcessor());
|
$logger->pushProcessor(new Monolog\Processor\UidProcessor());
|
||||||
$logger->pushProcessor($introspector);
|
$logger->pushProcessor($introspector);
|
||||||
|
|
||||||
$debugging = $config->get('system', 'debugging');
|
$stream = $config->get('system', 'logfile');
|
||||||
$stream = $config->get('system', 'logfile');
|
$level = $config->get('system', 'loglevel');
|
||||||
$level = $config->get('system', 'loglevel');
|
|
||||||
|
|
||||||
if ($debugging) {
|
$loglevel = self::mapLegacyConfigDebugLevel((string)$level);
|
||||||
$loglevel = self::mapLegacyConfigDebugLevel((string)$level);
|
static::addStreamHandler($logger, $stream, $loglevel);
|
||||||
static::addStreamHandler($logger, $stream, $loglevel);
|
|
||||||
} else {
|
|
||||||
static::addVoidHandler($logger);
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
140
src/Util/Logger/VoidLogger.php
Normal file
140
src/Util/Logger/VoidLogger.php
Normal file
|
@ -0,0 +1,140 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Friendica\Util\Logger;
|
||||||
|
|
||||||
|
use Psr\Log\LoggerInterface;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A Logger instance to not log
|
||||||
|
*/
|
||||||
|
class VoidLogger implements LoggerInterface
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* System is unusable.
|
||||||
|
*
|
||||||
|
* @param string $message
|
||||||
|
* @param array $context
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function emergency($message, array $context = array())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Action must be taken immediately.
|
||||||
|
*
|
||||||
|
* Example: Entire website down, database unavailable, etc. This should
|
||||||
|
* trigger the SMS alerts and wake you up.
|
||||||
|
*
|
||||||
|
* @param string $message
|
||||||
|
* @param array $context
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function alert($message, array $context = array())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Critical conditions.
|
||||||
|
*
|
||||||
|
* Example: Application component unavailable, unexpected exception.
|
||||||
|
*
|
||||||
|
* @param string $message
|
||||||
|
* @param array $context
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function critical($message, array $context = array())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Runtime errors that do not require immediate action but should typically
|
||||||
|
* be logged and monitored.
|
||||||
|
*
|
||||||
|
* @param string $message
|
||||||
|
* @param array $context
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function error($message, array $context = array())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Exceptional occurrences that are not errors.
|
||||||
|
*
|
||||||
|
* Example: Use of deprecated APIs, poor use of an API, undesirable things
|
||||||
|
* that are not necessarily wrong.
|
||||||
|
*
|
||||||
|
* @param string $message
|
||||||
|
* @param array $context
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function warning($message, array $context = array())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Normal but significant events.
|
||||||
|
*
|
||||||
|
* @param string $message
|
||||||
|
* @param array $context
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function notice($message, array $context = array())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Interesting events.
|
||||||
|
*
|
||||||
|
* Example: User logs in, SQL logs.
|
||||||
|
*
|
||||||
|
* @param string $message
|
||||||
|
* @param array $context
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function info($message, array $context = array())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Detailed debug information.
|
||||||
|
*
|
||||||
|
* @param string $message
|
||||||
|
* @param array $context
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function debug($message, array $context = array())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Logs with an arbitrary level.
|
||||||
|
*
|
||||||
|
* @param mixed $level
|
||||||
|
* @param string $message
|
||||||
|
* @param array $context
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function log($level, $message, array $context = array())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue