Aaron Schulz has submitted this change and it was merged.
Change subject: Make ApiStashEdit use statsd metrics
......................................................................
Make ApiStashEdit use statsd metrics
Change-Id: Iffdeae7f867490e3c69c4b6d79a5f844cb7fce23
---
M includes/api/ApiStashEdit.php
1 file changed, 9 insertions(+), 4 deletions(-)
Approvals:
Krinkle: Looks good to me, but someone else must approve
Ori.livneh: Looks good to me, approved
jenkins-bot: Verified
diff --git a/includes/api/ApiStashEdit.php b/includes/api/ApiStashEdit.php
index 208e9ca..701f0a9 100644
--- a/includes/api/ApiStashEdit.php
+++ b/includes/api/ApiStashEdit.php
@@ -252,6 +252,7 @@
public static function checkCache( Title $title, Content $content, User
$user ) {
$cache = ObjectCache::getLocalClusterInstance();
$logger = LoggerFactory::getInstance( 'StashEdit' );
+ $stats = RequestContext::getMain()->getStats();
$key = self::getStashKey( $title, $content, $user );
$editInfo = $cache->get( $key );
@@ -267,19 +268,20 @@
$editInfo = $cache->get( $key );
$dbw->unlock( $key, __METHOD__ );
}
- $sec = microtime( true ) - $start;
- if ( $sec > .01 ) {
- $logger->warning( "Waited $sec seconds on
'$key'." );
- }
+
+ $timeMs = 1000 * max( 0, microtime( true ) - $start );
+ $stats->timing( 'editstash.lock-wait-time', $timeMs );
}
if ( !is_object( $editInfo ) || !$editInfo->output ) {
+ $stats->increment( 'editstash.cache-misses' );
$logger->debug( "No cache value for key '$key'." );
return false;
}
$time = wfTimestamp( TS_UNIX, $editInfo->output->getTimestamp()
);
if ( ( time() - $time ) <= 3 ) {
+ $stats->increment( 'editstash.cache-hits' );
$logger->debug( "Timestamp-based cache hit for key
'$key'." );
return $editInfo; // assume nothing changed
}
@@ -308,6 +310,7 @@
}
if ( $changed || $res->numRows() != $templateUses ) {
+ $stats->increment( 'editstash.cache-misses' );
$logger->info( "Stale cache for key '$key';
template changed." );
return false;
}
@@ -331,11 +334,13 @@
}
if ( $changed || $res->numRows() != count( $files ) ) {
+ $stats->increment( 'editstash.cache-misses' );
$logger->info( "Stale cache for key '$key';
file changed." );
return false;
}
}
+ $stats->increment( 'editstash.cache-hits' );
$logger->debug( "Cache hit for key '$key'." );
return $editInfo;
--
To view, visit https://gerrit.wikimedia.org/r/259543
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: Iffdeae7f867490e3c69c4b6d79a5f844cb7fce23
Gerrit-PatchSet: 4
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Aaron Schulz <[email protected]>
Gerrit-Reviewer: Aaron Schulz <[email protected]>
Gerrit-Reviewer: Anomie <[email protected]>
Gerrit-Reviewer: Krinkle <[email protected]>
Gerrit-Reviewer: Ori.livneh <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits