23 private static $m_oLogger = null;
28 private static $m_sLogRoot =
"";
33 private static $m_sChannel =
"default";
43 public static function init($sChannel =
"default", $sLogRoot =
"")
45 self::$m_sChannel = $sChannel;
46 self::$m_sLogRoot = $sLogRoot;
47 self::$m_oLogger = new \Monolog\SDELogger($sChannel);
49 if (empty($sTraceFilter))
54 $nLevel = $bDebug ? Logger::DEBUG : Logger::WARNING;
55 self::$m_oLogger->pushHandler(
new StreamHandler(self::$m_sLogRoot .
"extension.log", $nLevel));
56 self::$m_oLogger->addInfo(
"------------------- Logger[$sChannel] is ready");
67 $sOutputFormat =
"[%datetime%] %channel%.%level_name%: %message%";
68 $oFormatter = new \Monolog\Formatter\CSdeLineFormatter($sOutputFormat);
72 $oStreamHandler = new \Monolog\Handler\AjaxStreamHandler(\
Monolog\Logger::INFO);
76 $oStreamHandler = new \Monolog\Handler\StreamHandler(
'php://output', \
Monolog\Logger::INFO);
78 $oStreamHandler->setFormatter($oFormatter);
79 self::$m_oLogger->pushHandler($oStreamHandler);
90 public static function get($sChannel =
"default", $sLogRoot =
"")
92 if (self::$m_oLogger == null)
94 self::init($sChannel, $sLogRoot);
96 return self::$m_oLogger;
117 public function addError($sMessage, array $aContext = array())
123 return $this->addRecord(static::ERROR, $sMessage, $aContext);
142 $sOutput = parent::format($aRecord);
143 return str_replace(
'@@br@@',
'<br/>', htmlentities(str_replace(
'<br/>',
'@@br@@', $sOutput))) . BR;
static init($sChannel="default", $sLogRoot="")
addError($sMessage, array $aContext=array())
static initLogToScreen($bStream=false)
static get($sName=null, $vDefault=[])