Ori.livneh has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/89347


Change subject: Log DOM save timing; update existing ve.track calls
......................................................................

Log DOM save timing; update existing ve.track calls

* For consistency with target.loading, target.saving should be either a boolean
  false or a jqXHR, with the latter type indicating a pending save attempt.
* Rename 'DOM Retrieved' topic to 'performance.parsoid.domLoad' (and thus
  inaugurate a convention of hierarchical, dot-separated topic names).
* Add a 'performance.parsoid.domSave', which is a near-mirror of domLoad, but
  measures the time it takes to save a DOM.
* Remove three old ve.track events, because they are not used and because their
  name and signature are not consistent with current usage.
  - page-save-attempt
  - page-save-success
  - page-edit-impression

Change-Id: I54602394eee5d6d9229c01d868cb366c9f56b2c3
---
M modules/ve-mw/init/targets/ve.init.mw.ViewPageTarget.js
M modules/ve-mw/init/ve.init.mw.Target.js
2 files changed, 15 insertions(+), 14 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/VisualEditor 
refs/changes/47/89347/1

diff --git a/modules/ve-mw/init/targets/ve.init.mw.ViewPageTarget.js 
b/modules/ve-mw/init/targets/ve.init.mw.ViewPageTarget.js
index 13c1602..a53fea4 100644
--- a/modules/ve-mw/init/targets/ve.init.mw.ViewPageTarget.js
+++ b/modules/ve-mw/init/targets/ve.init.mw.ViewPageTarget.js
@@ -231,7 +231,6 @@
  */
 ve.init.mw.ViewPageTarget.prototype.onLoad = function ( doc ) {
        if ( this.activating ) {
-               ve.track( 'Edit', { action: 'page-edit-impression' } );
                this.edited = false;
                this.doc = doc;
                this.setUpSurface( doc, ve.bind( function() {
@@ -299,12 +298,6 @@
  * @param {number} [newid] New revision id, undefined if unchanged
  */
 ve.init.mw.ViewPageTarget.prototype.onSave = function ( html, newid ) {
-       ve.track( 'Edit', {
-               action: 'page-save-success',
-               latency: this.saveStart ? ve.now() - this.saveStart : 0
-       } );
-       delete this.saveStart;
-
        if ( !this.pageExists || this.restoring ) {
                // This is a page creation or restoration, refresh the page
                this.tearDownBeforeUnloadHandler();
@@ -648,7 +641,6 @@
  * @param {jQuery.Event} e Mouse click event
  */
 ve.init.mw.ViewPageTarget.prototype.onToolbarSaveButtonClick = function () {
-       ve.track( 'Edit', { action: 'page-save-attempt' } );
        if ( this.edited || this.restoring ) {
                this.showSaveDialog();
        }
@@ -795,9 +787,7 @@
        var doc = this.surface.getModel().getDocument(),
                saveOptions = this.getSaveOptions();
 
-       // Once we've retrieved the save options,
-       // reset save start and any old captcha data
-       this.saveStart = ve.now();
+       // Reset any old captcha data
        if ( this.captcha ) {
                this.clearMessage( 'captcha' );
                delete this.captcha;
diff --git a/modules/ve-mw/init/ve.init.mw.Target.js 
b/modules/ve-mw/init/ve.init.mw.Target.js
index 976cf8e..5c2be6e 100644
--- a/modules/ve-mw/init/ve.init.mw.Target.js
+++ b/modules/ve-mw/init/ve.init.mw.Target.js
@@ -543,7 +543,7 @@
        } );
 
        this.loading.done( function ( data, status, jqxhr ) {
-               ve.track( 'DOM retrieved', {
+               ve.track( 'performance.parsoid.domLoad', {
                        'bytes': $.byteLength( jqxhr.responseText ),
                        'duration': ve.now() - start,
                        'cacheHit': /hit/i.test( jqxhr.getResponseHeader( 
'X-Cache' ) ),
@@ -570,6 +570,7 @@
  * @returns {boolean} Saving has been started
 */
 ve.init.mw.Target.prototype.save = function ( doc, options ) {
+       var data, start;
        // Prevent duplicate requests
        if ( this.saving ) {
                return false;
@@ -587,8 +588,9 @@
        } );
 
        // Save DOM
-       this.saving = true;
-       $.ajax( {
+       start = ve.now();
+
+       this.saving = $.ajax( {
                'url': this.apiUrl,
                'data': data,
                'dataType': 'json',
@@ -598,6 +600,15 @@
                'success': ve.bind( ve.init.mw.Target.onSave, this ),
                'error': ve.bind( ve.init.mw.Target.onSaveError, this )
        } );
+
+       this.saving.done( function ( data, status, jqxhr ) {
+               ve.track( 'performance.parsoid.domSave', {
+                       'bytes': $.byteLength( jqxhr.responseText ),
+                       'duration': ve.now() - start,
+                       'parsoid': jqxhr.getResponseHeader( 
'X-Parsoid-Performance' )
+               } );
+       } );
+
        return true;
 };
 

-- 
To view, visit https://gerrit.wikimedia.org/r/89347
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I54602394eee5d6d9229c01d868cb366c9f56b2c3
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Ori.livneh <o...@wikimedia.org>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to