Merge "Add the ability to apply a different duration sampling factor to loggedin users"

This commit is contained in:
jenkins-bot 2014-11-12 08:21:33 +00:00 committed by Gerrit Code Review
commit 8a8b3b0208
3 changed files with 19 additions and 2 deletions

View file

@ -35,6 +35,16 @@ if ( !isset( $wgMediaViewerDurationLoggingSamplingFactor ) ) {
$wgMediaViewerDurationLoggingSamplingFactor = false;
}
if ( !isset( $wgMediaViewerDurationLoggingLoggedinSamplingFactor ) ) {
/**
* If set, records loading times via EventLogging with factor specific to loggedin users.
* A value of 1000 means there will be an 1:1000 chance to log the duration event.
* False if unset.
* @var int|bool
*/
$wgMediaViewerDurationLoggingLoggedinSamplingFactor = false;
}
if ( !isset( $wgMediaViewerAttributionLoggingSamplingFactor ) ) {
/**
* If set, records whether image attribution data was available. A value of 1000 means there will be an

View file

@ -140,14 +140,16 @@ class MultimediaViewerHooks {
*/
public static function resourceLoaderGetConfigVars( &$vars ) {
global $wgMediaViewerActionLoggingSamplingFactorMap, $wgNetworkPerformanceSamplingFactor,
$wgMediaViewerDurationLoggingSamplingFactor, $wgMediaViewerAttributionLoggingSamplingFactor,
$wgMediaViewerDimensionLoggingSamplingFactor, $wgMediaViewerIsInBeta, $wgMediaViewerUseThumbnailGuessing;
$wgMediaViewerDurationLoggingSamplingFactor, $wgMediaViewerDurationLoggingLoggedinSamplingFactor,
$wgMediaViewerAttributionLoggingSamplingFactor, $wgMediaViewerDimensionLoggingSamplingFactor,
$wgMediaViewerIsInBeta, $wgMediaViewerUseThumbnailGuessing;
$vars['wgMultimediaViewer'] = array(
'infoLink' => self::$infoLink,
'discussionLink' => self::$discussionLink,
'helpLink' => self::$helpLink,
'useThumbnailGuessing' => (bool)$wgMediaViewerUseThumbnailGuessing,
'durationSamplingFactor' => $wgMediaViewerDurationLoggingSamplingFactor,
'durationSamplingFactorLoggedin' => $wgMediaViewerDurationLoggingLoggedinSamplingFactor,
'networkPerformanceSamplingFactor' => $wgNetworkPerformanceSamplingFactor,
'actionLoggingSamplingFactorMap' => $wgMediaViewerActionLoggingSamplingFactorMap,
'attributionSamplingFactor' => $wgMediaViewerAttributionLoggingSamplingFactor,

View file

@ -38,6 +38,11 @@
*/
L.samplingFactor = mw.config.get( 'wgMultimediaViewer' ).durationSamplingFactor;
// If a sampling factor specific to loggedin users is set and we're logged in, apply it
if ( mw.config.get( 'wgMultimediaViewer' ).durationSamplingFactorLoggedin && !mw.user.isAnon() ) {
L.samplingFactor = mw.config.get( 'wgMultimediaViewer' ).durationSamplingFactorLoggedin;
}
/**
* @override
* @inheritdoc