X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=rendertime%2Frendertime.php;h=81aea8b18a4b4aa82a06874c0c7137862561fd78;hb=38bf5d4a5afec8f0cb58ddd5742815238219f10d;hp=213ed316aa479d22b340ee889206071d4a4d9a34;hpb=bbc8a1328dbb7168f42c605325c1aee31b15a5cf;p=friendica-addons.git diff --git a/rendertime/rendertime.php b/rendertime/rendertime.php old mode 100755 new mode 100644 index 213ed316..81aea8b1 --- a/rendertime/rendertime.php +++ b/rendertime/rendertime.php @@ -1,6 +1,4 @@ * */ +use Friendica\Core\Addon; +use Friendica\Core\Config; +use Friendica\Core\L10n; function rendertime_install() { - register_hook('page_end', 'addon/rendertime/rendertime.php', 'rendertime_page_end'); + Addon::registerHook('page_end', 'addon/rendertime/rendertime.php', 'rendertime_page_end'); } function rendertime_uninstall() { - unregister_hook('init_1', 'addon/rendertime/rendertime.php', 'rendertime_init_1'); - unregister_hook('page_end', 'addon/rendertime/rendertime.php', 'rendertime_page_end'); + Addon::unregisterHook('init_1', 'addon/rendertime/rendertime.php', 'rendertime_init_1'); + Addon::unregisterHook('page_end', 'addon/rendertime/rendertime.php', 'rendertime_page_end'); } function rendertime_init_1(&$a) { @@ -26,19 +27,48 @@ function rendertime_page_end(&$a, &$o) { $duration = microtime(true)-$a->performance["start"]; - if (is_site_admin()) - $o = $o.'
'.sprintf(t("Performance: Database: %s, Network: %s, Rendering: %s, Parser: %s, I/O: %s, Other: %s, Total: %s"), - round($a->performance["database"], 3), - round($a->performance["network"], 3), - round($a->performance["rendering"], 3), - round($a->performance["parser"], 3), - round($a->performance["file"], 3), - round($duration - $a->performance["database"] - $a->performance["network"] - - $a->performance["rendering"] - $a->performance["parser"] - - $a->performance["file"], 3), - round($duration, 3) - //round($a->performance["markstart"], 3) - //round($a->performance["plugin"], 3) - )."
"; + $ignored_modules = ["fbrowser"]; + $ignored = in_array($a->module, $ignored_modules); + + if (is_site_admin() && ($_GET["mode"] != "minimal") && !$a->is_mobile && !$a->is_tablet && !$ignored) { + $o = $o.'
'. L10n::t("Database: %s/%s, Network: %s, Rendering: %s, Session: %s, I/O: %s, Other: %s, Total: %s", + round($a->performance["database"] - $a->performance["database_write"], 3), + round($a->performance["database_write"], 3), + round($a->performance["network"], 2), + round($a->performance["rendering"], 2), + round($a->performance["parser"], 2), + round($a->performance["file"], 2), + round($duration - $a->performance["database"] + - $a->performance["network"] - $a->performance["rendering"] + - $a->performance["parser"] - $a->performance["file"], 2), + round($duration, 2) + //round($a->performance["markstart"], 3) + //round($a->performance["plugin"], 3) + )."
"; + + if (Config::get("rendertime", "callstack")) { + $o .= "
";
+			$o .= "\nDatabase Read:\n";
+			foreach ($a->callstack["database"] AS $func => $time) {
+				$time = round($time, 3);
+				if ($time > 0)
+					$o .= $func.": ".$time."\n";
+			}
+			$o .= "\nDatabase Write:\n";
+			foreach ($a->callstack["database_write"] AS $func => $time) {
+				$time = round($time, 3);
+				if ($time > 0)
+					$o .= $func.": ".$time."\n";
+			}
+
+			$o .= "\nNetwork:\n";
+			foreach ($a->callstack["network"] AS $func => $time) {
+				$time = round($time, 3);
+				if ($time > 0)
+					$o .= $func.": ".$time."\n";
+			}
 
+			$o .= "
"; + } + } }