MediaWiki master
|
Profiler base class that defines the interface and some shared functionality. More...
Inherited by ProfilerExcimer, ProfilerSectionOnly, ProfilerStub, and ProfilerXhprof.
Public Member Functions | |
__construct (array $params) | |
close () | |
Close opened profiling sections. | |
getAllowOutput () | |
Whether appending profiles is allowed. | |
getContentType () | |
Get the Content-Type for deciding how to format appended profile output. | |
getFunctionStats () | |
Get the aggregated inclusive profiling data for each method. | |
getOutput () | |
Returns a profiling output to be stored in debug file. | |
getProfileID () | |
getTransactionProfiler () | |
logData () | |
Log data to all the applicable backing stores. | |
logDataPageOutputOnly () | |
Log the data to the script/request output for all ProfilerOutput instances that do so. | |
scopedProfileIn ( $section) | |
Mark the start of a custom profiling frame (e.g. | |
scopedProfileOut (?SectionProfileCallback &$section=null) | |
setAllowOutput () | |
Enable appending profiles to standard output. | |
setProfileID ( $id) | |
Static Public Member Functions | |
static | init (array $profilerConf) |
static | instance () |
Protected Attributes | |
LoggerInterface | $logger |
array | $params = [] |
All of the params passed from $wgProfiler. | |
string false | $profileID = false |
Profiler ID for bucketing data. | |
TransactionProfiler | $trxProfiler |
Profiler base class that defines the interface and some shared functionality.
Definition at line 37 of file Profiler.php.
Profiler::__construct | ( | array | $params | ) |
array | $params | See $wgProfiler. |
Reimplemented in ProfilerExcimer, ProfilerSectionOnly, and ProfilerXhprof.
Definition at line 55 of file Profiler.php.
References $params.
|
abstract |
Close opened profiling sections.
Reimplemented in ProfilerExcimer, ProfilerSectionOnly, ProfilerStub, and ProfilerXhprof.
Profiler::getAllowOutput | ( | ) |
Whether appending profiles is allowed.
Definition at line 284 of file Profiler.php.
References wfDeprecated().
Profiler::getContentType | ( | ) |
Get the Content-Type for deciding how to format appended profile output.
Disabled by default. Enable via setAllowOutput().
Definition at line 256 of file Profiler.php.
References $header.
|
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 demarked with "@". This makes filtering them out easier and follows the xhprof style.
Reimplemented in ProfilerExcimer, ProfilerSectionOnly, ProfilerStub, and ProfilerXhprof.
|
abstract |
Returns a profiling output to be stored in debug file.
Reimplemented in ProfilerExcimer, ProfilerSectionOnly, ProfilerStub, and ProfilerXhprof.
Profiler::getProfileID | ( | ) |
Definition at line 126 of file Profiler.php.
Profiler::getTransactionProfiler | ( | ) |
|
staticfinal |
array | $profilerConf | Value from $wgProfiler |
Definition at line 68 of file Profiler.php.
References $params.
|
staticfinal |
Definition at line 105 of file Profiler.php.
Referenced by MediaWiki\FileBackend\FileBackendGroup\config(), MediaWiki\Http\HttpRequestFactory\create(), MediaWiki\Specials\SpecialConfirmEmail\execute(), MediaWiki\Specials\SpecialEmailInvalidate\execute(), MediaWiki\Actions\ActionEntryPoint\execute(), MediaWiki\Api\ApiRollback\execute(), MediaWiki\ResourceLoader\ResourceLoaderEntryPoint\execute(), MediaWiki\SpecialPage\SpecialPageFactory\executePath(), LCStoreDB\finishWrite(), SkinTemplate\outputPage(), MediaWiki\MediaWikiEntryPoint\outputResponsePayload(), MediaWiki\Actions\ActionEntryPoint\performAction(), MediaWiki\MediaWikiEntryPoint\restInPeace(), MediaWiki\Api\ApiMain\setRequestExpectations(), and MediaWiki\MediaWikiEntryPoint\triggerSyncJobs().
Profiler::logData | ( | ) |
Log data to all the applicable backing stores.
This logs the profiling data to the backing store for each configured ProfilerOutput instance. It also logs any request data for the TransactionProfiler instance.
Reimplemented in ProfilerStub.
Definition at line 198 of file Profiler.php.
Profiler::logDataPageOutputOnly | ( | ) |
Log the data to the script/request output for all ProfilerOutput instances that do so.
Reimplemented in ProfilerStub.
Definition at line 227 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 ProfilerExcimer, ProfilerSectionOnly, ProfilerStub, and ProfilerXhprof.
Profiler::scopedProfileOut | ( | ?SectionProfileCallback & | $section = null | ) |
SectionProfileCallback | null | &$section |
Definition at line 147 of file Profiler.php.
Profiler::setAllowOutput | ( | ) |
Enable appending profiles to standard output.
Definition at line 272 of file Profiler.php.
Profiler::setProfileID | ( | $id | ) |
string | $id |
Definition at line 118 of file Profiler.php.
References wfDeprecated().
|
protected |
Definition at line 45 of file Profiler.php.
|
protected |
All of the params passed from $wgProfiler.
Definition at line 41 of file Profiler.php.
Referenced by __construct(), ProfilerExcimer\__construct(), ProfilerSectionOnly\__construct(), ProfilerXhprof\__construct(), and init().
|
protected |
Profiler ID for bucketing data.
Definition at line 39 of file Profiler.php.
|
protected |
Definition at line 43 of file Profiler.php.