From: Roan Kattouw Date: Mon, 25 Sep 2017 22:28:47 +0000 (-0700) Subject: RCFilters: Log performance data X-Git-Tag: 1.31.0-rc.0~1955^2 X-Git-Url: http://git.cyclocoop.org/wiki/Target_page?a=commitdiff_plain;h=b3f9593262f1f5fa1909941bbc68d89bae2b0495;p=lhc%2Fweb%2Fwiklou.git RCFilters: Log performance data Just UI ready time and wgBackendResponseTime for now. Sanitizing responseStart and especially firstPaint cross-browser is too messy. NavigationTiming has code for it but that would need to be exposed somewhere. Bug: T176652 Change-Id: I6caf52fe8bc77fac0426d73549553301c5951c32 --- diff --git a/resources/src/mediawiki.rcfilters/mw.rcfilters.init.js b/resources/src/mediawiki.rcfilters/mw.rcfilters.init.js index 5ab32eaf85..73259f6785 100644 --- a/resources/src/mediawiki.rcfilters/mw.rcfilters.init.js +++ b/resources/src/mediawiki.rcfilters/mw.rcfilters.init.js @@ -29,9 +29,7 @@ savedLinksListWidget = new mw.rcfilters.ui.SavedLinksListWidget( controller, savedQueriesModel, { $overlay: $overlay } ), - currentPage = mw.config.get( 'wgCanonicalNamespace' ) + - ':' + - mw.config.get( 'wgCanonicalSpecialPageName' ); + specialPage = mw.config.get( 'wgCanonicalSpecialPageName' ); // TODO: The changesListWrapperWidget should be able to initialize // after the model is ready. @@ -66,8 +64,8 @@ controller.replaceUrl(); - if ( currentPage === 'Special:Recentchanges' || - currentPage === 'Special:Recentchangeslinked' ) { + if ( specialPage === 'Recentchanges' || + specialPage === 'Recentchangeslinked' ) { $topLinks = $( '.mw-recentchanges-toplinks' ).detach(); rcTopSection = new mw.rcfilters.ui.RcTopSectionWidget( @@ -76,7 +74,7 @@ filtersWidget.setTopSection( rcTopSection.$element ); } // end Special:RC - if ( currentPage === 'Special:Watchlist' ) { + if ( specialPage === 'Watchlist' ) { $( '#contentSub, form#mw-watchlist-resetbutton' ).detach(); $watchlistDetails = $( '.watchlistDetails' ).detach().contents(); @@ -86,6 +84,18 @@ filtersWidget.setTopSection( wlTopSection.$element ); } // end Special:WL + // Log performance data + if ( window.performance && window.performance.now ) { + mw.track( + 'timing.MediaWiki.timing.structuredChangeFilters.ready.' + specialPage, + window.performance.now() + ); + mw.track( + 'timing.MediaWiki.timing.structuredChangeFilters.backendResponse.' + specialPage, + mw.config.get( 'wgBackendResponseTime' ) + ); + } + /** * Fired when initialization of the filtering interface for changes list is complete. *