]> git.mxchange.org Git - friendica.git/blobdiff - src/Core/Logger.php
Review Modifications
[friendica.git] / src / Core / Logger.php
index 1e7099d54ff4134f0e6d1154051a3e0e1e542b05..ad814042db5427553303895e957b9f9f4cdc451c 100644 (file)
@@ -7,28 +7,39 @@ namespace Friendica\Core;
 use Friendica\Core\Config;
 use Friendica\Util\DateTimeFormat;
 
-class Logger
+/**
+ * @brief Logger functions
+ */
+class Logger extends BaseObject
 {
+    // Log levels:
+    const WARNING = 0;
+    const INFO = 1;
+    const TRACE = 2;
+    const DEBUG = 3;
+    const DATA = 4;
+    const ALL = 5;
+
+    public static $levels = [];
+
+    /**
+     * @brief Get class constants, and avoid using substring.
+     */
+    public function getConstants()
+    {
+        $reflectionClass = new ReflectionClass($this);
+        return $reflectionClass->getConstants();
+    }
+
     /**
      * @brief Logs the given message at the given log level
      *
-     * log levels:
-     * LOGGER_WARNING
-     * LOGGER_INFO (default)
-     * LOGGER_TRACE
-     * LOGGER_DEBUG
-     * LOGGER_DATA
-     * LOGGER_ALL
-     *
-     * @global array $LOGGER_LEVELS
      * @param string $msg
      * @param int $level
      */
-    public static function log($msg, $level = LOGGER_INFO)
+    public static function log($msg, $level = INFO)
     {
-        $a = get_app();
-        global $LOGGER_LEVELS;
-        $LOGGER_LEVELS = [];
+        $a = self::getApp();
 
         $debugging = Config::get('system', 'debugging');
         $logfile   = Config::get('system', 'logfile');
@@ -42,18 +53,19 @@ class Logger
             return;
         }
 
-        if (count($LOGGER_LEVELS) == 0) {
-            foreach (get_defined_constants() as $k => $v) {
-                if (substr($k, 0, 7) == "LOGGER_") {
-                    $LOGGER_LEVELS[$v] = substr($k, 7, 7);
-                }
+        if (count($levels) == 0)
+        {
+            foreach (self::getConstants() as $k => $v)
+            {
+                $levels[$v] = $k;
             }
         }
 
-        $process_id = session_id();
+        $processId = session_id();
 
-        if ($process_id == '') {
-            $process_id = get_app()->process_id;
+        if ($processId == '')
+        {
+            $processId = $a->process_id;
         }
 
         $callers = debug_backtrace();
@@ -66,8 +78,8 @@ class Logger
 
         $logline = sprintf("%s@%s\t[%s]:%s:%s:%s\t%s\n",
                 DateTimeFormat::utcNow(DateTimeFormat::ATOM),
-                $process_id,
-                $LOGGER_LEVELS[$level],
+                $processId,
+                $levels[$level],
                 basename($callers[0]['file']),
                 $callers[0]['line'],
                 $function,
@@ -85,50 +97,45 @@ class Logger
      * to isolate particular elements they are targetting
      * personally without background noise
      *
-     * log levels:
-     * LOGGER_WARNING
-     * LOGGER_INFO (default)
-     * LOGGER_TRACE
-     * LOGGER_DEBUG
-     * LOGGER_DATA
-     * LOGGER_ALL
-     *
-     * @global array $LOGGER_LEVELS
      * @param string $msg
      * @param int $level
      */
-    public static function devLog($msg, $level = LOGGER_INFO)
+    public static function devLog($msg, $level = INFO)
     {
-        $a = get_app();
+        $a = self::getApp();
 
         $logfile = Config::get('system', 'dlogfile');
+
         if (!$logfile) {
             return;
         }
 
         $dlogip = Config::get('system', 'dlogip');
-        if (!is_null($dlogip) && $_SERVER['REMOTE_ADDR'] != $dlogip) {
+
+        if (!is_null($dlogip) && $_SERVER['REMOTE_ADDR'] != $dlogip)
+        {
             return;
         }
 
-        if (count($LOGGER_LEVELS) == 0) {
-            foreach (get_defined_constants() as $k => $v) {
-                if (substr($k, 0, 7) == "LOGGER_") {
-                    $LOGGER_LEVELS[$v] = substr($k, 7, 7);
-                }
+        if (count($levels) == 0)
+        {
+            foreach (self::getConstants() as $k => $v)
+            {
+                $levels[$v] = $k;
             }
         }
 
-        $process_id = session_id();
+        $processId = session_id();
 
-        if ($process_id == '') {
-            $process_id = $a->process_id;
+        if ($processId == '')
+        {
+            $processId = $a->process_id;
         }
 
         $callers = debug_backtrace();
         $logline = sprintf("%s@\t%s:\t%s:\t%s\t%s\t%s\n",
                 DateTimeFormat::utcNow(),
-                $process_id,
+                $processId,
                 basename($callers[0]['file']),
                 $callers[0]['line'],
                 $callers[1]['function'],
@@ -139,4 +146,4 @@ class Logger
         @file_put_contents($logfile, $logline, FILE_APPEND);
         $a->saveTimestamp($stamp1, "file");
     }
-}
\ No newline at end of file
+}