4 include_once
'./libs/composer/vendor/autoload.php';
5 include_once
'./Services/Logging/classes/public/class.ilLogLevel.php';
28 const DEFAULT_FORMAT =
"[%suid%] [%datetime%] %channel%.%level_name%: %message% %context% %extra%\n";
53 if (!static::$instance) {
54 include_once
'./Services/Logging/classes/class.ilLoggingDBSettings.php';
58 return static::$instance;
68 return static::$instance =
new self(
$settings);
82 return $factory->getComponentLogger($a_component_id);
92 return $factory->getComponentLogger(self::ROOT_LOGGER);
103 if (!$this->
getSettings()->isBrowserLogEnabledForUser($a_login)) {
107 include_once(
"./Services/Logging/classes/extensions/class.ilLineFormatter.php");
109 foreach ($this->loggers as $a_component_id => $logger) {
112 $browser_handler->setLevel($this->
getSettings()->getLevelByComponent($a_component_id));
113 $browser_handler->setFormatter(
new ilLineFormatter(static::DEFAULT_FORMAT,
'Y-m-d H:i:s.u',
true,
true));
114 $logger->getLogger()->pushHandler($browser_handler);
125 include_once
'./Services/Context/classes/class.ilContext.php';
129 if (isset(
$_GET[
"cmdMode"]) &&
$_GET[
"cmdMode"] ==
"asynch") {
160 if (isset($this->loggers[$a_component_id])) {
161 return $this->loggers[$a_component_id];
163 $loggerNamePrefix =
'';
165 $loggerNamePrefix = CLIENT_ID .
'_';
168 switch ($a_component_id) {
170 $logger =
new Logger($loggerNamePrefix .
'root');
174 $logger =
new Logger($loggerNamePrefix . $a_component_id);
181 $logger->pushHandler($null_handler);
183 include_once
'./Services/Logging/classes/class.ilComponentLogger.php';
194 if ($a_component_id == self::ROOT_LOGGER) {
195 $stream_handler->setLevel($this->
getSettings()->getLevelByComponent(self::COMPONENT_ROOT));
197 $stream_handler->setLevel($this->
getSettings()->getLevelByComponent($a_component_id));
201 include_once(
"./Services/Logging/classes/extensions/class.ilLineFormatter.php");
202 $line_formatter =
new ilLineFormatter(static::DEFAULT_FORMAT,
'Y-m-d H:i:s.u',
true,
true);
203 $stream_handler->setFormatter($line_formatter);
212 $logger->pushHandler($finger_crossed_handler);
214 $logger->pushHandler($stream_handler);
221 #$browser_handler->setLevel($this->getSettings()->getLevelByComponent($a_component_id)); 222 $browser_handler->setLevel($this->
getSettings()->getLevel());
223 $browser_handler->setFormatter($line_formatter);
224 $logger->pushHandler($browser_handler);
231 $logger->pushProcessor(
function ($record) {
232 $record[
'suid'] = substr(session_id(), 0, 5);
237 include_once
'./Services/Logging/classes/extensions/class.ilTraceProcessor.php';
242 include_once
'./Services/Logging/classes/class.ilComponentLogger.php';
245 return $this->loggers[$a_component_id];
Buffers all records until a certain level is reached.
getSettings()
Get settigns.
static newInstance(ilLoggingSettings $settings)
get new instance
Error level based activation strategy.
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
Component logger with individual log levels by component id.
initUser($a_login)
Init user specific log options.
Handler sending logs to browser's javascript console with no browser extension required.
isConsoleAvailable()
Check if console handler is available.
getComponentLogger($a_component_id)
Get component logger.
Create styles array
The data for the language used.
static getInstance()
Get instance.
Stores to any stream resource.
static getLogger($a_component_id)
Get component logger.
__construct(ilLoggingSettings $settings)
static getType()
Get context type.
defined( 'APPLICATION_ENV')||define( 'APPLICATION_ENV'
static getRootLogger()
The unique root logger has a fixed error level.