blob: aca2d10db065a9df12b65b791f457d304a946ae4 [file]
/* Copyright 2008-9 Google Inc. All Rights Reserved. */ (function(){var k,m=this,n=function(a){var b=typeof a;if("object"==b)if(a){if(a instanceof Array)return"array";if(a instanceof Object)return b;var c=Object.prototype.toString.call(a);if("[object Window]"==c)return"object";if("[object Array]"==c||"number"==typeof a.length&&"undefined"!=typeof a.splice&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("splice"))return"array";if("[object Function]"==c||"undefined"!=typeof a.call&&"undefined"!=typeof a.propertyIsEnumerable&&!a.propertyIsEnumerable("call"))return"function"}else return"null";
else if("function"==b&&"undefined"==typeof a.call)return"object";return b},q=function(a){return"string"==typeof a},r="closure_uid_"+(1E9*Math.random()>>>0),t=0,u=function(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var b=c.slice();b.push.apply(b,arguments);return a.apply(this,b)}},v=function(a,b){var c=a.split("."),e=m;c[0]in e||!e.execScript||e.execScript("var "+c[0]);for(var d;c.length&&(d=c.shift());)c.length||void 0===b?e=e[d]?e[d]:e[d]={}:e[d]=b},w=function(a,b){function c(){}
c.prototype=b.prototype;a.l=b.prototype;a.prototype=new c};var y=function(a){Error.captureStackTrace?Error.captureStackTrace(this,y):this.stack=Error().stack||"";a&&(this.message=String(a))};w(y,Error);var aa=function(a,b){for(var c=a.split("%s"),e="",d=Array.prototype.slice.call(arguments,1);d.length&&1<c.length;)e+=c.shift()+d.shift();return e+c.join("%s")};var z=function(a,b){b.unshift(a);y.call(this,aa.apply(null,b));b.shift()};w(z,y);var A=function(a,b,c){if(!a){var e=Array.prototype.slice.call(arguments,2),d="Assertion failed";if(b)var d=d+(": "+b),f=e;throw new z(""+d,f||[]);}};var B=Array.prototype,C=B.indexOf?function(a,b,c){A(null!=a.length);return B.indexOf.call(a,b,c)}:function(a,b,c){c=null==c?0:0>c?Math.max(0,a.length+c):c;if(q(a))return q(b)&&1==b.length?a.indexOf(b,c):-1;for(;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1},ba=B.forEach?function(a,b,c){A(null!=a.length);B.forEach.call(a,b,c)}:function(a,b,c){for(var e=a.length,d=q(a)?a.split(""):a,f=0;f<e;f++)f in d&&b.call(c,d[f],f,a)},ca=B.filter?function(a,b,c){A(null!=a.length);return B.filter.call(a,b,
c)}:function(a,b,c){for(var e=a.length,d=[],f=0,g=q(a)?a.split(""):a,h=0;h<e;h++)if(h in g){var x=g[h];b.call(c,x,h,a)&&(d[f++]=x)}return d},D=function(a){var b=a.length;if(0<b){for(var c=Array(b),e=0;e<b;e++)c[e]=a[e];return c}return[]},E=function(a,b,c){A(null!=a.length);return 2>=arguments.length?B.slice.call(a,b):B.slice.call(a,b,c)};var F,G,H,I,J=function(){return m.navigator?m.navigator.userAgent:null};I=H=G=F=!1;var K;if(K=J()){var da=m.navigator;F=0==K.lastIndexOf("Opera",0);G=!F&&(-1!=K.indexOf("MSIE")||-1!=K.indexOf("Trident"));H=!F&&-1!=K.indexOf("WebKit");I=!F&&!H&&!G&&"Gecko"==da.product}var L=F,M=G,N=I,O=H,ea=m.navigator,fa=-1!=(ea&&ea.platform||"").indexOf("Mac"),ga=function(){var a=m.document;return a?a.documentMode:void 0},P;
n:{var Q="",R;if(L&&m.opera)var S=m.opera.version,Q="function"==typeof S?S():S;else if(N?R=/rv\:([^\);]+)(\)|;)/:M?R=/\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/:O&&(R=/WebKit\/(\S+)/),R)var ha=R.exec(J()),Q=ha?ha[1]:"";if(M){var ia=ga();if(ia>parseFloat(Q)){P=String(ia);break n}}P=Q}
var ja=P,ka={},T=function(a){var b;if(!(b=ka[a])){b=0;for(var c=String(ja).replace(/^[\s\xa0]+|[\s\xa0]+$/g,"").split("."),e=String(a).replace(/^[\s\xa0]+|[\s\xa0]+$/g,"").split("."),d=Math.max(c.length,e.length),f=0;0==b&&f<d;f++){var g=c[f]||"",h=e[f]||"",x=RegExp("(\\d*)(\\D*)","g"),p=RegExp("(\\d*)(\\D*)","g");do{var l=x.exec(g)||["","",""],s=p.exec(h)||["","",""];if(0==l[0].length&&0==s[0].length)break;b=((0==l[1].length?0:parseInt(l[1],10))<(0==s[1].length?0:parseInt(s[1],10))?-1:(0==l[1].length?
0:parseInt(l[1],10))>(0==s[1].length?0:parseInt(s[1],10))?1:0)||((0==l[2].length)<(0==s[2].length)?-1:(0==l[2].length)>(0==s[2].length)?1:0)||(l[2]<s[2]?-1:l[2]>s[2]?1:0)}while(0==b)}b=ka[a]=0<=b}return b},la=m.document,ma=la&&M?ga()||("CSS1Compat"==la.compatMode?parseInt(ja,10):5):void 0;!N&&!M||M&&M&&9<=ma||N&&T("1.9.1");M&&T("9");var na=function(a){a=a.className;return q(a)&&a.match(/\S+/g)||[]},oa=function(a,b){for(var c=na(a),e=E(arguments,1),d=c,f=0;f<e.length;f++)0<=C(d,e[f])||d.push(e[f]);c=c.join(" ");a.className=c},qa=function(a,b){var c=na(a),e=E(arguments,1),c=pa(c,e).join(" ");a.className=c},pa=function(a,b){return ca(a,function(a){return!(0<=C(b,a))})};var U=function(a,b,c){var e=document;c=c||e;a=a&&"*"!=a?a.toUpperCase():"";if(c.querySelectorAll&&c.querySelector&&(a||b))return c.querySelectorAll(a+(b?"."+b:""));if(b&&c.getElementsByClassName){c=c.getElementsByClassName(b);if(a){for(var e={},d=0,f=0,g;g=c[f];f++)a==g.nodeName&&(e[d++]=g);e.length=d;return e}return c}c=c.getElementsByTagName(a||"*");if(b){e={};for(f=d=0;g=c[f];f++)a=g.className,"function"==typeof a.split&&0<=C(a.split(/\s+/),b)&&(e[d++]=g);e.length=d;return e}return c};var V=function(a){V[" "](a);return a};V[" "]=function(){};var ra=!M||M&&9<=ma,sa=M&&!T("9");!O||T("528");N&&T("1.9b")||M&&T("8")||L&&T("9.5")||O&&T("528");N&&!T("8")||M&&T("9");var W=function(a,b){this.type=a;this.currentTarget=this.target=b};W.prototype.h=!1;W.prototype.defaultPrevented=!1;W.prototype.o=!0;W.prototype.preventDefault=function(){this.defaultPrevented=!0;this.o=!1};var X=function(a,b){if(a){var c=this.type=a.type;W.call(this,c);this.target=a.target||a.srcElement;this.currentTarget=b;var e=a.relatedTarget;if(e){if(N){var d;n:{try{V(e.nodeName);d=!0;break n}catch(f){}d=!1}d||(e=null)}}else"mouseover"==c?e=a.fromElement:"mouseout"==c&&(e=a.toElement);this.relatedTarget=e;this.offsetX=O||void 0!==a.offsetX?a.offsetX:a.layerX;this.offsetY=O||void 0!==a.offsetY?a.offsetY:a.layerY;this.clientX=void 0!==a.clientX?a.clientX:a.pageX;this.clientY=void 0!==a.clientY?a.clientY:
a.pageY;this.screenX=a.screenX||0;this.screenY=a.screenY||0;this.button=a.button;this.keyCode=a.keyCode||0;this.charCode=a.charCode||("keypress"==c?a.keyCode:0);this.ctrlKey=a.ctrlKey;this.altKey=a.altKey;this.shiftKey=a.shiftKey;this.metaKey=a.metaKey;this.k=fa?a.metaKey:a.ctrlKey;this.state=a.state;this.i=a;a.defaultPrevented&&this.preventDefault();delete this.h}};w(X,W);k=X.prototype;k.target=null;k.relatedTarget=null;k.offsetX=0;k.offsetY=0;k.clientX=0;k.clientY=0;k.screenX=0;k.screenY=0;
k.button=0;k.keyCode=0;k.charCode=0;k.ctrlKey=!1;k.altKey=!1;k.shiftKey=!1;k.metaKey=!1;k.k=!1;k.i=null;k.preventDefault=function(){X.l.preventDefault.call(this);var a=this.i;if(a.preventDefault)a.preventDefault();else if(a.returnValue=!1,sa)try{if(a.ctrlKey||112<=a.keyCode&&123>=a.keyCode)a.keyCode=-1}catch(b){}};var ta="closure_listenable_"+(1E6*Math.random()|0),ua=0;var va=function(a,b,c,e,d){this.b=a;this.d=null;this.src=b;this.type=c;this.capture=!!e;this.e=d;this.key=++ua;this.c=this.f=!1},wa=function(a){a.c=!0;a.b=null;a.d=null;a.src=null;a.e=null};var xa=function(a){this.src=a;this.a={};this.g=0};xa.prototype.add=function(a,b,c,e,d){var f=this.a[a];f||(f=this.a[a]=[],this.g++);var g;n:{for(g=0;g<f.length;++g){var h=f[g];if(!h.c&&h.b==b&&h.capture==!!e&&h.e==d)break n}g=-1}-1<g?(a=f[g],c||(a.f=!1)):(a=new va(b,this.src,a,!!e,d),a.f=c,f.push(a));return a};var ya=function(a,b){var c=b.type;if(c in a.a){var e=a.a[c],d=C(e,b),f;if(f=0<=d)A(null!=e.length),B.splice.call(e,d,1);f&&(wa(b),0==a.a[c].length&&(delete a.a[c],a.g--))}};var za={},Y={},Z={},Ba=function(){var a=Aa,b=ra?function(c){return a.call(b.src,b.b,c)}:function(c){c=a.call(b.src,b.b,c);if(!c)return c};return b},Ca=function(a,b,c,e,d){if("array"==n(b))for(var f=0;f<b.length;f++)Ca(a,b[f],c,e,d);else if(c=Da(c),a&&a[ta])a.j.add(b,c,!0,e,d);else{if(!b)throw Error("Invalid event type");var f=!!e,g=a[r]||(a[r]=++t),h=Y[g];h||(Y[g]=h=new xa(a));c=h.add(b,c,!0,e,d);c.d||(e=Ba(),c.d=e,e.src=a,e.b=c,a.addEventListener?a.addEventListener(b,e,f):a.attachEvent(b in Z?Z[b]:
Z[b]="on"+b,e),za[c.key]=c)}},Ga=function(a,b,c,e){var d=1;if(a=Ea(a))if(b=a.a[b])for(b=D(b),a=0;a<b.length;a++){var f=b[a];f&&(f.capture==c&&!f.c)&&(d&=!1!==Fa(f,e))}return Boolean(d)},Fa=function(a,b){var c=a.b,e=a.e||a.src;if(a.f&&"number"!=typeof a&&a&&!a.c){var d=a.src;if(d&&d[ta])ya(d.j,a);else{var f=a.type,g=a.d;d.removeEventListener?d.removeEventListener(f,g,a.capture):d.detachEvent&&d.detachEvent(f in Z?Z[f]:Z[f]="on"+f,g);(f=Ea(d))?(ya(f,a),0==f.g&&(f.src=null,delete Y[d[r]||(d[r]=++t)])):
wa(a);delete za[a.key]}}return c.call(e,b)},Aa=function(a,b){if(a.c)return!0;if(!ra){var c;if(!(c=b))n:{c=["window","event"];for(var e=m,d;d=c.shift();)if(null!=e[d])e=e[d];else{c=null;break n}c=e}d=c;c=new X(d,this);e=!0;if(!(0>d.keyCode||void 0!=d.returnValue)){n:{var f=!1;if(0==d.keyCode)try{d.keyCode=-1;break n}catch(g){f=!0}if(f||void 0==d.returnValue)d.returnValue=!0}d=[];for(f=c.currentTarget;f;f=f.parentNode)d.push(f);for(var f=a.type,h=d.length-1;!c.h&&0<=h;h--)c.currentTarget=d[h],e&=Ga(d[h],
f,!0,c);for(h=0;!c.h&&h<d.length;h++)c.currentTarget=d[h],e&=Ga(d[h],f,!1,c)}return e}return Fa(a,new X(b,this))},Ea=function(a){return a[r]?Y[a[r]||(a[r]=++t)]||null:null},Ha="__closure_events_fn_"+(1E9*Math.random()>>>0),Da=function(a){A(a,"Listener can not be null.");if("function"==n(a))return a;A(a.handleEvent,"An object listener must have handleEvent method.");return a[Ha]||(a[Ha]=function(b){return a.handleEvent(b)})};var $=function(){};$.m=function(){$.n||($.n=new $)};$.m();M||O&&T("525");v("ae.init",function(){Ia();Ja();Ca(window,"load",function(){});Ka()});
var Ia=function(){var a;a=document;if(a=q("ae-content")?a.getElementById("ae-content"):"ae-content"){a=U("table","ae-table-striped",a);for(var b=0,c;c=a[b];b++){c=U("tbody",null,c);for(var e=0,d;d=c[e];e++){d=U("tr",null,d);for(var f=0,g;g=d[f];f++)f%2&&oa(g,"ae-even")}}}},Ja=function(){var a=U(null,"ae-noscript",void 0);ba(D(a),function(a){qa(a,"ae-noscript")})},Ka=function(){m._gaq=m._gaq||[];m._gaq.push(function(){m._gaq._createAsyncTracker("UA-3739047-3","ae")._trackPageview()});(function(){var a=
document.createElement("script");a.src=("https:"==document.location.protocol?"https://ssl":"http://www")+".google-analytics.com/ga.js";a.setAttribute("async","true");document.documentElement.firstChild.appendChild(a)})()};v("ae.trackPageView",function(){m._gaq&&m._gaq._getAsyncTracker("ae")._trackPageview()});var Ma=function(a){if(void 0==a||null==a||0==a.length)return 0;a=Math.max.apply(Math,a);return La(a)},La=function(a){var b=5;2>b&&(b=2);b-=1;return Math.ceil(a/b)*b},Na=function(a,b,c){a=a.getSelection();1==a.length&&(a=a[0],null!=a.row&&(null!=b.starttime&&(c+="&starttime="+b.starttime),null!=b.endtime&&(c+="&endtime="+b.endtime),null!=b.latency_lower&&(c+="&latency_lower="+b.latency_lower),null!=b.latency_upper&&(c+="&latency_upper="+b.latency_upper),b=c+"&detail="+a.row,window.location.href=b))},
Oa=function(a,b,c,e,d){var f=new google.visualization.DataTable;f.addColumn("string","");f.addColumn("number","");f.addColumn({type:"string",role:"tooltip"});for(var g=0;g<b.length;g++)f.addRow(["",b[g],c[g]]);c=Math.max(10*b.length,200);b=Ma(b);a=new google.visualization.ColumnChart(document.getElementById("rpctime-"+a));a.draw(f,{height:100,width:c,legend:"none",chartArea:{left:40},fontSize:11,vAxis:{minValue:0,maxValue:b,gridlines:{count:5}}});google.visualization.events.addListener(a,"select",
u(Na,a,e,d))};v("ae.Charts.latencyHistogram",function(a,b,c){var e=new google.visualization.DataTable;e.addColumn("string","");e.addColumn("number","");for(var d=0;d<b.length;d++)e.addRow([""+a[d],b[d]]);for(d=b.length;d<a.length;d++)e.addRow([""+a[d],0]);b=Ma(b);(new google.visualization.ColumnChart(document.getElementById("latency-"+c))).draw(e,{legend:"none",width:20*a.length,height:200,vAxis:{maxValue:b,gridlines:{count:5}}})});
v("ae.Charts.latencyTimestampScatter",function(a,b,c,e,d){var f=new google.visualization.DataTable;f.addColumn("number","Time (seconds from start)");f.addColumn("number","Latency");for(var g=0;g<a.length;g++){var h=Math.round(a[g]-c);f.addRow([h,b[g]])}a=e.starttime?e.starttime:0;b=new google.visualization.ScatterChart(document.getElementById("LatencyVsTimestamp"));b.draw(f,{hAxis:{title:"Time (seconds from start of recording)",minValue:a},vAxis:{title:"Request Latency (milliseconds)",minValue:0},
tooltip:{trigger:"none"},legend:"none"});google.visualization.events.addListener(b,"select",u(Na,b,e,d))});
v("ae.Charts.entityCountBarChart",function(a,b,c,e){var d=new google.visualization.DataTable;d.addColumn("string","");d.addColumn("number","Reads");d.addColumn({type:"string",role:"tooltip"});d.addColumn("number","Misses");d.addColumn({type:"string",role:"tooltip"});d.addColumn("number","Writes");d.addColumn({type:"string",role:"tooltip"});var f=50;f>b.length&&(f=b.length);for(var g=0;g<f;g++)d.addRow(["",b[g][1]-b[g][3],b[g][0],b[g][3],b[g][0],b[g][2],b[g][0]]);b=20*f;f=b+130;a=new google.visualization.ColumnChart(document.getElementById(e+
"-"+a));c=La(c);a.draw(d,{height:100,width:f,chartArea:{width:b},fontSize:10,isStacked:!0,vAxis:{minValue:0,maxValue:c,gridlines:{count:5}}})});
v("ae.Charts.rpcVariationCandlestick",function(a){var b=new google.visualization.DataTable;b.addColumn("string","");b.addColumn("number","");b.addColumn("number","");b.addColumn("number","");b.addColumn("number","");b.addRows(a);(new google.visualization.CandlestickChart(document.getElementById("rpcvariation"))).draw(b,{vAxis:{title:"RPC Latency variation (milliseconds)"},hAxis:{textPosition:"out",slantedText:!0,slantedTextAngle:45,textStyle:{fontSize:13}},height:250,chartArea:{top:10,height:100},
legend:"none",tooltip:{trigger:"none"}})});v("ae.Charts.totalTimeBarChart",function(a,b,c,e){for(var d=[],f=0;f<b.length;f++)d[f]=b[f]+" milliseconds";Oa(a,b,d,c,e)});v("ae.Charts.rpcTimeBarChart",function(a,b,c,e,d){var f=[],g=[],h=c.indices,x=c.times;c=c.stats;for(var p=0;p<b;p++)f[p]=0,g[p]=null;for(p=0;p<h.length;p++){f[h[p]]=x[p];b=c[p];var l="Calls: "+b[0];if(0<b[1]||0<b[2]||0<b[3])l+=" Entities";0<b[1]&&(l+=" R:"+b[1]);0<b[2]&&(l+=" W:"+b[2]);0<b[3]&&(l+=" M:"+b[3]);g[h[p]]=l}Oa(a,f,g,e,d)});})();