MediaWiki REL1_31
Xhprof.php
Go to the documentation of this file.
1<?php
32class Xhprof {
36 protected static $enabled;
37
42 public static function isEnabled() {
43 return self::$enabled;
44 }
45
52 public static function enable( $flags = 0, $options = [] ) {
53 if ( self::isEnabled() ) {
54 throw new Exception( 'Profiling is already enabled.' );
55 }
56 self::$enabled = true;
57 if ( function_exists( 'xhprof_enable' ) ) {
58 xhprof_enable( $flags, $options );
59 } elseif ( function_exists( 'tideways_enable' ) ) {
60 tideways_enable( $flags, $options );
61 } else {
62 throw new Exception( "Neither xhprof nor tideways are installed" );
63 }
64 }
65
71 public static function disable() {
72 if ( self::isEnabled() ) {
73 self::$enabled = false;
74 if ( function_exists( 'xhprof_disable' ) ) {
75 return xhprof_disable();
76 } else {
77 // tideways
78 return tideways_disable();
79 }
80 }
81 }
82}
Convenience class for working with XHProf https://github.com/phacility/xhprof.
Definition Xhprof.php:32
static $enabled
Definition Xhprof.php:36
static enable( $flags=0, $options=[])
Start xhprof profiler.
Definition Xhprof.php:52
static disable()
Stop xhprof profiler.
Definition Xhprof.php:71
static isEnabled()
Start xhprof profiler.
Definition Xhprof.php:42
null means default in associative array with keys and values unescaped Should be merged with default with a value of false meaning to suppress the attribute in associative array with keys and values unescaped & $options
Definition hooks.txt:2001
tideways_disable()
Definition tideways.php:11
tideways_enable()
Minimal set of classes necessary for Xhprof using tideways phpcs:ignoreFile.
Definition tideways.php:8