Commit graph

8 commits

Author SHA1 Message Date
Timo Tijhof
063a528bc8 profiler: Use PSR-3 logging in Profiler and ProfilerOutput classes
* Use the "profiler" channel consistently within this component,
  and set it in the constructor of the base classes.

* Fold legacy "profilererror" channel into "profiler".
  Previously, the wfDebugLog wrapper was using the INFO severity,
  which is the default given wfDebugLog does not support severity.

Change-Id: I1e7dcbc221b395a4ea792e18f4d4da36b5ee40df
2020-08-12 03:51:29 +00:00
Timo Tijhof
d83fcce5cb profiler: Clean up file headers and @ingroup
* Remove redundant file description for files that only define
  a class where the class description suffices.
* Ensure the file has a license header and @file.

* Remove any @ingroup from the file comment block.
  These clutter the Doxygen pages with duplicate entries.
* Ensure the class block has an @ingroup set.

* Remove @since when @internal is set.
* Add any missing @since to public classes that were created
  recently enough to easily find out when:
  - ProfilerExcimer was introduced in 1.33 (6373e3d1d4).

Change-Id: I6b18289a15a3085857acd7c9004ec819f7914b29
2020-02-05 23:28:12 +00:00
Timo Tijhof
8a87ec2778 profiler: Centralise output responsibility from ProfilerOutputText to Profiler
Make it Profiler.php's responsibility to enforce this, based on the
existing signal from ProfilerOutput::logsToOutput().

The ProfilerOutputText class should not have to double-check this
a second time.

Long-term, I'd like even this check in Profiler::logDataPageOutputOnly
to be removed, because really the external caller of that should
know whether it is safe to output stuff or not rather than stashing
its own state inside Profiler::$allowOutput and then implicitly
reading it back out again later on. But, that's for another time.

Also:
* Remove use of deprecated Profiler::setTemplated while at it.
* Make 'visible' parameter explicit, as for other parameters.

Change-Id: Iaa3fc4ea25a059b90235d769db60c04b8f152f05
2019-08-28 16:07:18 +00:00
Aaron Schulz
58ee03b13d Avoid sending duplicate ProfilerOutputText comments/html
Change-Id: I4130845cdb7208b8456740e5dbaf8bf96e175f49
2019-03-13 10:27:38 -07:00
Thiemo Mättig
91a920fd85 Remove auto-generated "Constructor" documentation on constructors
Having such comments is worse than not having them. They add zero
information. But you must read the text to understand there is
nothing you don't already know from the class and the method name.

This is similar to I994d11e. Even more trivial, because this here is
about comments that don't say anything but "constructor".

Change-Id: I474dcdb5997bea3aafd11c0760ee072dfaff124c
2017-07-21 12:19:30 +02:00
Kunal Mehta
6e9b4f0e9c Convert all array() syntax to []
Per wikitech-l consensus:
 https://lists.wikimedia.org/pipermail/wikitech-l/2016-February/084821.html

Notes:
* Disabled CallTimePassByReference due to false positives (T127163)

Change-Id: I2c8ce713ce6600a0bb7bf67537c87044c7a45c4b
2016-02-17 01:33:00 -08:00
Chad Horohoe
d1f1f9d98d ProfilerOutput: Remove logStandardData() and make log() abstract
Became unused layer of abtraction as I266ed820 went through iterations

Change-Id: Ic739fb4519bb2e23e679828b191c11c0158ade78
2014-11-18 11:51:49 -08:00
Chad Horohoe
b8d93fb4fd Refactor profiling output from profiling
* Added a standard getFunctionStats() method for Profilers to return
  per function data as maps. This is not toolbar specific like getRawData().
* Cleaned up the interface of SectionProfiler::getFunctionStats() a bit.
* Removed unused cpu_sq, real_sq fields from profiler UDP output.
* Moved getTime/getInitialTime to ProfilerStandard.

Co-Authored-By: Aaron Schulz <aschulz@wikimedia.org>
Change-Id: I266ed82031a434465f64896eb327f3872fdf1db1
2014-11-17 19:26:04 -07:00