MediaWiki REL1_32
|
Profiler base class that defines the interface and some trivial functionality. More...
Public Member Functions | |
__construct (array $params) | |
close () | |
Close opened profiling sections. | |
getContentType () | |
Get the content type sent out to the client. | |
getContext () | |
Gets the context for this Profiler. | |
getFunctionStats () | |
Get the aggregated inclusive profiling data for each method. | |
getOutput () | |
Returns a profiling output to be stored in debug file. | |
getProfileID () | |
getTemplated () | |
Was this call as templated or not. | |
getTransactionProfiler () | |
logData () | |
Log the data to some store or even the page output. | |
logDataPageOutputOnly () | |
Output current data to the page output if configured to do so. | |
profileIn ( $functionname) | |
profileOut ( $functionname) | |
scopedProfileIn ( $section) | |
Mark the start of a custom profiling frame (e.g. | |
scopedProfileOut (SectionProfileCallback &$section=null) | |
setContext ( $context) | |
Sets the context for this Profiler. | |
setProfileID ( $id) | |
setTemplated ( $t) | |
Mark this call as templated or not. | |
Static Public Member Functions | |
static | instance () |
Singleton. | |
static | replaceStubInstance (Profiler $profiler) |
Replace the current profiler with $profiler if no non-stub profiler is set. | |
Protected Attributes | |
IContextSource | $context = null |
Current request context. | |
array | $params = [] |
All of the params passed from $wgProfiler. | |
string bool | $profileID = false |
Profiler ID for bucketing data. | |
bool | $templated = false |
Whether MediaWiki is in a SkinTemplate output context. | |
TransactionProfiler | $trxProfiler |
Private Member Functions | |
getOutputs () | |
Get all usable outputs. | |
Static Private Attributes | |
static Profiler | $instance = null |
Profiler base class that defines the interface and some trivial functionality.
Definition at line 33 of file Profiler.php.
Profiler::__construct | ( | array | $params | ) |
array | $params |
Reimplemented in ProfilerSectionOnly, and ProfilerXhprof.
Definition at line 50 of file Profiler.php.
References $params.
|
abstract |
Close opened profiling sections.
Reimplemented in ProfilerSectionOnly, ProfilerStub, and ProfilerXhprof.
Profiler::getContentType | ( | ) |
Get the content type sent out to the client.
Used for profilers that output instead of store data.
Definition at line 260 of file Profiler.php.
Profiler::getContext | ( | ) |
Gets the context for this Profiler.
Definition at line 140 of file Profiler.php.
|
abstract |
Get the aggregated inclusive profiling data for each method.
The percent time for each time is based on the current "total" time used is based on all methods so far. This method can therefore be called several times in between several profiling calls without the delays in usage of the profiler skewing the results. A "-total" entry is always included in the results.
When a call chain involves a method invoked within itself, any entries for the cyclic invocation should be be demarked with "@". This makes filtering them out easier and follows the xhprof style.
Reimplemented in ProfilerSectionOnly, ProfilerStub, and ProfilerXhprof.
Referenced by logData(), and logDataPageOutputOnly().
|
abstract |
Returns a profiling output to be stored in debug file.
Reimplemented in ProfilerSectionOnly, ProfilerStub, and ProfilerXhprof.
|
private |
Get all usable outputs.
MWException |
Definition at line 194 of file Profiler.php.
References as.
Referenced by logData(), and logDataPageOutputOnly().
Profiler::getProfileID | ( | ) |
Profiler::getTemplated | ( | ) |
Profiler::getTransactionProfiler | ( | ) |
|
staticfinal |
Singleton.
Definition at line 62 of file Profiler.php.
References $params, $wgProfileLimit, and $wgProfiler.
Referenced by MediaWiki\Http\HttpRequestFactory\create().
Profiler::logData | ( | ) |
Log the data to some store or even the page output.
Reimplemented in ProfilerStub.
Definition at line 219 of file Profiler.php.
References $output, $request, as, getContext(), getFunctionStats(), and getOutputs().
Profiler::logDataPageOutputOnly | ( | ) |
Output current data to the page output if configured to do so.
MWException |
Reimplemented in ProfilerStub.
Definition at line 245 of file Profiler.php.
References $output, as, getFunctionStats(), and getOutputs().
Profiler::profileIn | ( | $functionname | ) |
Definition at line 151 of file Profiler.php.
Profiler::profileOut | ( | $functionname | ) |
Definition at line 154 of file Profiler.php.
|
staticfinal |
Replace the current profiler with $profiler if no non-stub profiler is set.
Profiler | $profiler |
MWException |
Definition at line 98 of file Profiler.php.
|
abstract |
Mark the start of a custom profiling frame (e.g.
DB queries). The frame ends when the result of this method falls out of scope.
string | $section |
Reimplemented in ProfilerSectionOnly, ProfilerStub, and ProfilerXhprof.
Profiler::scopedProfileOut | ( | SectionProfileCallback & | $section = null | ) |
SectionProfileCallback | null | &$section |
Definition at line 170 of file Profiler.php.
References $section.
Profiler::setContext | ( | $context | ) |
Sets the context for this Profiler.
IContextSource | $context |
Definition at line 130 of file Profiler.php.
References $context.
Profiler::setProfileID | ( | $id | ) |
string | $id |
Definition at line 109 of file Profiler.php.
Profiler::setTemplated | ( | $t | ) |
Mark this call as templated or not.
bool | $t |
Definition at line 274 of file Profiler.php.
References $t.
|
protected |
Current request context.
Definition at line 41 of file Profiler.php.
|
staticprivate |
Definition at line 45 of file Profiler.php.
|
protected |
All of the params passed from $wgProfiler.
Definition at line 39 of file Profiler.php.
Referenced by ProfilerSectionOnly\__construct(), and ProfilerXhprof\__construct().
|
protected |
Profiler ID for bucketing data.
Definition at line 35 of file Profiler.php.
|
protected |
Whether MediaWiki is in a SkinTemplate output context.
Definition at line 37 of file Profiler.php.
|
protected |
Definition at line 43 of file Profiler.php.