]> git.mxchange.org Git - friendica.git/blobdiff - src/Core/System.php
Replace "notice" calls
[friendica.git] / src / Core / System.php
index eb27fa351775b3e90ec6be9d230d42701f2acee0..0c1e499d939395ac82ec2c5a05451d9873da95a1 100644 (file)
@@ -323,12 +323,12 @@ class System
         * After finishing the process is getting killed.
         *
         * @param string $content
-        * @param [type] $responce
+        * @param string $type
         * @param string|null $content_type
         * @return void
         */
-       public static function httpExit(string $content, string $responce = Response::TYPE_HTML, ?string $content_type = null) {
-               DI::apiResponse()->setType($responce, $content_type);
+       public static function httpExit(string $content, string $type = Response::TYPE_HTML, ?string $content_type = null) {
+               DI::apiResponse()->setType($type, $content_type);
                DI::apiResponse()->addContent($content);
                DI::page()->exit(DI::apiResponse()->generate());
 
@@ -442,17 +442,24 @@ class System
         */
        public static function getLoadAvg(): array
        {
-               $content = file_get_contents('/proc/loadavg');
+               $content = @file_get_contents('/proc/loadavg');
                if (empty($content)) {
                        $content = shell_exec('cat /proc/loadavg');
                }
-               if (empty($content)) {
-                       return [];
+               if (empty($content) || !preg_match("#([.\d]+)\s([.\d]+)\s([.\d]+)\s(\d+)/(\d+)#", $content, $matches)) {
+                       $load_arr = sys_getloadavg();
+                       if (empty($load_arr)) {
+                               return [];
+                       }
+                       return [
+                               'average1'  => $load_arr[0],
+                               'average5'  => $load_arr[1],
+                               'average15' => $load_arr[2],
+                               'runnable'  => 0,
+                               'scheduled' => 0
+                       ];
                }
 
-               if (!preg_match("#([.\d]+)\s([.\d]+)\s([.\d]+)\s(\d+)/(\d+)#", $content, $matches)) {
-                       return [];
-               }
                return [
                        'average1'  => (float)$matches[1],
                        'average5'  => (float)$matches[2],