User:Aude/Profiling

notes from MediaWiki Developers Summit 2015 session:

https://phabricator.wikimedia.org/T86325#1058953

forceprofile
forceprofile=1 now requires passing a special header “X-Wikimedia-Debug” and uses xhprof in the background. No need now for using wfProfileIn / Out.

https://github.com/bd808/FirefoxWikimediaDebug / https://addons.mozilla.org/en-US/firefox/addon/wikimedia-debug-header/ - firefox plugin for adding the header

https://chrome.google.com/webstore/detail/wikimediadebug/binmakecefompkjggiklgjenddjoifbb

xenon
production profiling data:

http://performance.wikimedia.org/xenon/ - collects samples from production traces

memcached
not very good statistics and data now, except overall load. (wikidata is significant, so can still tell some stuff from this)

event logging
might be able to use event logging to collect some more data about memcached usage of sites or other stuff (e.g. cache misses).

event logging can also be used for non-creepy stuff :) like collecting some stats on errors users encounter (in js / from api) when saving an item, etc. WikiGrok is using event logging for this sort of thing currently.

Wikidata team should at least experiment with setting up event logging to get better memcached usage information.

https://www.mediawiki.org/wiki/Extension:EventLogging

event logging data is collected and available in graphite and there also is a dashboard (with limn), and we (NDA folks) can get access to the analytics servers and databases.

logstash might also have more potential for visualizing and monitoring performance and event logging.

Profiling

 * Performance profiling for Wikimedia code
 * Manual:Profiling
 * http://performance.wikimedia.org/xenon/svgs/daily/2015-01-27.svgz
 * http://addshore.com/2015/09/wikimedia-grafana-graphs-of-wikidata-profiling-information/

Performance

 * Manual:Performance tuning