GWicke has uploaded a new change for review.

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


Change subject: Provide parse and serialization stats in headers
......................................................................

Provide parse and serialization stats in headers

Set

* X-Parsoid-duration (parse time in ms)
* X-Parsoid-starttime (ISO timestamp of start time)

This will be used by Ori's performance logging framework on the client if the
page was a cache miss.

Change-Id: I1d7fd94f236c1759de859922d2a0604631963aa8
---
M js/api/ParserService.js
1 file changed, 12 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Parsoid 
refs/changes/83/87483/1

diff --git a/js/api/ParserService.js b/js/api/ParserService.js
index 91096cc..7a8e823 100644
--- a/js/api/ParserService.js
+++ b/js/api/ParserService.js
@@ -654,10 +654,14 @@
 
                var tpr = new TemplateRequest( env, target, oldid );
                tpr.once('src', parse.bind( null, env, req, res, function ( 
req, res, src, doc ) {
-                       res.end(Util.serializeNode(doc.documentElement));
-                       var et = new Date();
+                       var out = Util.serializeNode(doc.documentElement);
+                       var et = new Date(),
+                               timeDelta = et - st;
+                       res.setHeader('X-Parsoid-duration', 
timeDelta.toString());
+                       res.setHeader('X-Parsoid-starttime', st.toISOString());
+                       res.end(out);
                        console.warn("completed parsing of " + prefix +
-                               ':' + target + " in " + (et - st) + " ms");
+                               ':' + target + " in " + (timeDelta) + " ms");
                }));
        };
 
@@ -667,6 +671,7 @@
 
 // Regular article serialization using POST
 app.post( new RegExp( '/(' + getInterwikiRE() + ')/(.*)' ), function ( req, 
res ) {
+       var st = new Date();
        var cb = function ( env ) {
                var doc, oldid = req.body.oldid || null;
                env.page.id = oldid;
@@ -688,6 +693,10 @@
                                function ( chunk ) {
                                        out.push(chunk);
                                }, function () {
+                                       var et = new Date(),
+                                       timeDelta = et - st;
+                                       res.setHeader('X-Parsoid-duration', 
timeDelta.toString());
+                                       res.setHeader('X-Parsoid-starttime', 
st.toISOString());
                                        res.write( out.join('') );
                                        res.end('');
                                } );

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I1d7fd94f236c1759de859922d2a0604631963aa8
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Parsoid
Gerrit-Branch: master
Gerrit-Owner: GWicke <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to