123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965 |
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <link rel="shortcut icon" type="image/x-icon" href="style/favicon.ico"/>
- <link href="style/style.css" rel="stylesheet" type="text/css" />
- <link href="style/bootstrap.min.css" rel="stylesheet" type="text/css" />
- <script src="js/jquery-3.5.1.min.js"></script>
- <script src="js/bootstrap.min.js"></script>
- <script src="js/gatling.js"></script>
- <script src="js/menu.js"></script>
- <script src="js/ellipsis.js"></script>
- <script src="js/all_sessions.js"></script>
- <script src="js/stats.js"></script>
- <script src="js/highstock.js"></script>
- <script src="js/highcharts-more.js"></script>
- <script src="js/theme.js"></script>
- <script src="js/unpack.js"></script>
- <title>Gatling Stats - Product Page Request</title>
- </head>
- <body>
- <script>
- const storedTheme = localStorage.getItem('theme') || (window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light");
- if (storedTheme) document.documentElement.setAttribute('data-theme', storedTheme)
- function toggleTheme() {
- const currentTheme = document.documentElement.getAttribute("data-theme");
- const targetTheme = currentTheme === "light" ? "dark" : "light";
- document.documentElement.setAttribute('data-theme', targetTheme)
- localStorage.setItem('theme', targetTheme);
- };
- </script>
- <div class="app-container">
- <div class="frise"></div>
- <div class="head">
- <div class="gatling-open-source">
- <a class="gatling-logo gatling-logo-light" href="https://gatling.io" target="blank_" title="Gatling Home Page"><img alt="Gatling" src="style/logo-light.svg"/></a>
- <a class="gatling-logo gatling-logo-dark" href="https://gatling.io" target="blank_" title="Gatling Home Page"><img alt="Gatling" src="style/logo-dark.svg"/></a>
- <a class="gatling-documentation" href="https://gatling.io/docs/" target="_blank">Documentation</a>
- </div>
- <div class="nav spacer"></div>
- <a class="enterprise" href="https://gatling.io/enterprise/next-step/" target="_blank"><strong>Try</strong>
- <img class="logo-enterprise-light" alt="Gatling Enterprise" src="style/logo-enterprise-light.svg"/>
- <img class="logo-enterprise-dark" alt="Gatling Enterprise" src="style/logo-enterprise-dark.svg"/>
- </a>
- <button id="theme-toggle" class="theme-toggle" type="button" onclick="toggleTheme()" aria-label="Toggle user interface mode">
- <span class="toggle-dark"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-moon"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg></span>
- <span class="toggle-light"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-sun"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg></span>
- </button>
- </div>
- <div class="container details">
- <div class="nav">
- <ul></ul>
- </div>
- <div class="cadre">
- <div class="content">
- <div class="content-header">
- <div class="onglet">
- ProductsPageSimulation
- </div>
- <div class="sous-menu" id="sousMenu">
- <div class="sous-menu-spacer">
- <div class="item "><a href="index.html">Global</a></div>
- <div class="item ouvert"><a id="details_link" href="#">Details</a></div>
- </div>
- </div>
- </div>
- <div class="content-in">
- <div class="container-article">
- <div class="article">
-
-
- <div class="schema-container">
- <div id="ranges" class="schema ranges-large">
- </div>
- <div class="infos">
- <div class="infos-in">
- <div class="infos-title">Stats</div>
- <div class="info">
- <h2 class="first">Executions</h2>
- <table>
- <thead>
- <tr><th></th><th>Total</th><th>OK</th><th>KO</th></tr>
- </thead>
- <tbody>
- <tr>
- <td class="title">Total count</td>
- <td id="numberOfRequests" class="total"></td>
- <td id="numberOfRequestsOK" class="ok"></td>
- <td id="numberOfRequestsKO" class="ko"></td>
- </tr>
- <tr>
- <td class="title">Mean count/s</abbr></td>
- <td id="meanNumberOfRequestsPerSecond" class="total"></td>
- <td id="meanNumberOfRequestsPerSecondOK" class="ok"></td>
- <td id="meanNumberOfRequestsPerSecondKO" class="ko"></td>
- </tr>
- </tbody>
- </table>
- <h2 class="second">Response Time (ms)</h2>
- <table>
- <thead>
- <tr>
- <th></th>
- <th>Total</th>
- <th>OK</th>
- <th>KO</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td class="title">Min</td>
- <td id="minResponseTime" class="total"></td>
- <td id="minResponseTimeOK" class="ok"></td>
- <td id="minResponseTimeKO" class="ko"></td>
- </tr>
- <tr>
- <td class="title">50th percentile</td>
- <td id="percentiles1" class="total"></td>
- <td id="percentiles1OK" class="ok"></td>
- <td id="percentiles1KO" class="ko"></td>
- </tr>
- <tr>
- <td class="title">75th percentile</td>
- <td id="percentiles2" class="total"></td>
- <td id="percentiles2OK" class="ok"></td>
- <td id="percentiles2KO" class="ko"></td>
- </tr>
- <tr>
- <td class="title">95th percentile</td>
- <td id="percentiles3" class="total"></td>
- <td id="percentiles3OK" class="ok"></td>
- <td id="percentiles3KO" class="ko"></td>
- </tr>
- <tr>
- <td class="title">99th percentile</td>
- <td id="percentiles4" class="total"></td>
- <td id="percentiles4OK" class="ok"></td>
- <td id="percentiles4KO" class="ko"></td>
- </tr>
- <tr>
- <td class="title">Max</td>
- <td id="maxResponseTime" class="total"></td>
- <td id="maxResponseTimeOK" class="ok"></td>
- <td id="maxResponseTimeKO" class="ko"></td>
- </tr>
- <tr>
- <td class="title">Mean</td>
- <td id="meanResponseTime" class="total"></td>
- <td id="meanResponseTimeOK" class="ok"></td>
- <td id="meanResponseTimeKO" class="ko"></td>
- </tr>
- <tr>
- <td class="title">Standard Deviation</td>
- <td id="standardDeviation" class="total"></td>
- <td id="standardDeviationOK" class="ok"></td>
- <td id="standardDeviationKO" class="ko"></td>
- </tr>
- </tbody>
- </table>
- </div>
- </div>
- </div>
- </div>
- <div class="statistics extensible-geant collapsed">
- <div class="title">
- Errors
- </div>
- <table id="container_errors" class="statistics-in extensible-geant">
- <thead>
- <tr>
- <th id="error-col-1" class="header sortable"><span>Error</span></th>
- <th id="error-col-2" class="header sortable"><span>Count</span></th>
- <th id="error-col-3" class="header sortable"><span>Percentage</span></th>
- </tr>
- </thead>
- <tbody>
-
- <tr>
- <td class="error-col-1 total ko">j.n.SocketException: Network is unreachable: getsockopt<span class="value" style="display:none">0</span></td>
- <td class="value error-col-2 total ko">11192</td>
- <td class="value error-col-3 total ko">52.2%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">i.n.h.s.SslHandshakeTimeoutException: handshake timed out after 10000ms<span class="value" style="display:none">1</span></td>
- <td class="value error-col-2 total ko">8275</td>
- <td class="value error-col-3 total ko">38.59%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">j.n.SocketException: No buffer space available (maximum connections reached?): connect<span class="value" style="display:none">2</span></td>
- <td class="value error-col-2 total ko">1096</td>
- <td class="value error-col-3 total ko">5.11%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">Request timeout to ecomm.gatling.io/18.164.246.48:443 after 60000 ms<span class="value" style="display:none">3</span></td>
- <td class="value error-col-2 total ko">211</td>
- <td class="value error-col-3 total ko">0.98%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">Request timeout to ecomm.gatling.io/18.164.246.111:443 after 60000 ms<span class="value" style="display:none">4</span></td>
- <td class="value error-col-2 total ko">209</td>
- <td class="value error-col-3 total ko">0.97%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">Request timeout to ecomm.gatling.io/18.164.246.108:443 after 60000 ms<span class="value" style="display:none">5</span></td>
- <td class="value error-col-2 total ko">205</td>
- <td class="value error-col-3 total ko">0.96%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">Request timeout to ecomm.gatling.io/18.164.246.56:443 after 60000 ms<span class="value" style="display:none">6</span></td>
- <td class="value error-col-2 total ko">197</td>
- <td class="value error-col-3 total ko">0.92%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">j.i.IOException: Premature close<span class="value" style="display:none">7</span></td>
- <td class="value error-col-2 total ko">56</td>
- <td class="value error-col-3 total ko">0.26%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">Request timeout after 60000 ms<span class="value" style="display:none">8</span></td>
- <td class="value error-col-2 total ko">1</td>
- <td class="value error-col-3 total ko">0%</td>
- </tr>
- </tbody>
- </table>
- </div>
- <div class="schema geant">
- <div id="responsetimeDistributionContainer" class="geant"></div>
- </div>
- <div class="schema geant">
- <div id="responsetimepercentilesovertimeokPercentilesContainer" class="geant"></div>
- </div>
- <div class="schema geant">
- <div id="requests" class="geant"></div>
- </div>
- <div class="schema geant">
- <div id="responses" class="geant"></div>
- </div>
- <div class="schema geant">
- <div id="container_response_time_dispersion" class="geant"></div>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- <script>
- var pageStats = stats.contents['req_product-page-re--237514321'].stats;
- $(document).ready(function() {
- $('.simulation-tooltip').popover({trigger:'hover', placement:'left'});
- setDetailsLinkUrl();
- setDetailsMenu();
- setActiveMenu();
- fillStats(pageStats);
-
- Highcharts.setOptions({
- global: { useUTC: false }
- });
- var rangesChart = new Highcharts.Chart({
- chart: {
- renderTo: 'ranges',
- marginRight: 100
- },
- credits: { enabled: false },
- legend: { enabled: false },
- title: { text: 'A title to let highcharts reserve the place for the title set later' },
- xAxis: {
- categories: [
- pageStats.group1.htmlName,
- pageStats.group2.htmlName,
- pageStats.group3.htmlName,
- pageStats.group4.htmlName
- ]
- },
- yAxis: {
- title: { text: 'Number of Requests' },
- reversedStacks: false
- },
- tooltip: {
- formatter: function() {
- var s;
- if (this.point.name) { // the pie chart
- s = ''+ this.point.name +': '+ this.y +'% requests';
- } else {
- s = ''+ this.y + ' requests';
- }
- return s;
- }
- },
- plotOptions: {
- series: {
- stacking: 'normal',
- shadow: true
- }
- },
- series: [
- {
- type: 'column',
- data: [{
- color: '#68b65c',
- y: pageStats.group1.count
- },
- {
- color: '#FFDD00',
- y: pageStats.group2.count
- },
- {
- color: '#FFA900',
- y: pageStats.group3.count
- },
- {
- color: '#f15b4f',
- y: pageStats.group4.count
- }]
- },
- {
- type: 'pie',
- name: 'Percentages',
- data: [
- {
- name: pageStats.group1.name,
- y: pageStats.group1.percentage,
- color: '#68b65c'
- },
- {
- name: pageStats.group2.name,
- y: pageStats.group2.percentage,
- color: '#FFDD00'
- },
- {
- name: pageStats.group3.name,
- y: pageStats.group3.percentage,
- color: '#FFA900'
- },
- {
- name: pageStats.group4.name,
- y: pageStats.group4.percentage,
- color: '#f15b4f'
- }
- ],
- center: [368, 0],
- size: 90,
- showInLegend: false,
- dataLabels: { enabled: false }
- }
- ]
- });
- rangesChart.setTitle({
- text: '<span class="chart_title">Response Time Ranges</span>',
- useHTML: true
- });
- $('#container_errors').sortable('#container_errors');
-
- var responsetimeDistributionChart = new Highcharts.Chart({
- chart: {
- renderTo: 'responsetimeDistributionContainer',
- type: 'column',
- marginBottom: 60
- },
- credits: { enabled: false },
- legend: {
- enabled: true,
- floating: true,
- y: 5,
- borderWidth: 0,
- itemStyle: { fontWeight: "normal" },
- symbolRadius: 0
- },
- title: { text: 'A title to let highcharts reserve the place for the title set later' },
- navigator: {
- maskInside: false
- },
- xAxis: {
- categories: ['2121', '2703', '3285', '3866', '4448', '5030', '5612', '6194', '6776', '7358', '7939', '8521', '9103', '9685', '10267', '10849', '11431', '12012', '12594', '13176', '13758', '14340', '14922', '15503', '16085', '16667', '17249', '17831', '18413', '18995', '19576', '20158', '20740', '21322', '21904', '22486', '23068', '23649', '24231', '24813', '25395', '25977', '26559', '27140', '27722', '28304', '28886', '29468', '30050', '30632', '31213', '31795', '32377', '32959', '33541', '34123', '34705', '35286', '35868', '36450', '37032', '37614', '38196', '38777', '39359', '39941', '40523', '41105', '41687', '42269', '42850', '43432', '44014', '44596', '45178', '45760', '46342', '46923', '47505', '48087', '48669', '49251', '49833', '50414', '50996', '51578', '52160', '52742', '53324', '53906', '54487', '55069', '55651', '56233', '56815', '57397', '57979', '58560', '59142', '59724'],
- tickInterval: 20
- },
- yAxis: {
- min: 0,
- title: { text: 'Percentage of Requests' },
- reversedStacks: false
- },
- tooltip: {
- formatter: function() {
- return '<b>'+ this.x +' ms</b><br/>'+
- this.series.name +': '+ this.y +' %<br/>'+
- 'Total: '+ this.point.stackTotal + ' %';
- }
- },
- plotOptions: {
- series: {
- groupPadding: 0,
- stacking: 'normal',
- shadow: true
- }
- },
- series: [
- {
- type: 'column',
- color: '#68b65c',
- name: 'OK',
- data: [
- 0.04,0.0,0.07,0.27,0.0,0.28,0.36,0.5,0.29,0.04,0.25,0.44,0.55,1.05,0.26,0.48,0.27,0.14,0.79,0.64,0.32,0.22,0.16,0.16,0.24,0.16,0.18,0.13,0.09,0.05,0.04,0.06,0.04,0.06,0.04,0.03,0.04,0.04,0.03,0.06,0.07,0.06,0.1,0.11,0.1,0.18,0.27,0.26,0.22,0.24,0.21,0.19,0.13,0.13,0.12,0.11,0.1,0.17,0.11,0.12,0.08,0.1,0.09,0.1,0.11,0.07,0.09,0.07,0.1,0.06,0.1,0.06,0.09,0.04,0.05,0.07,0.04,0.07,0.02,0.03,0.02,0.05,0.04,0.03,0.05,0.06,0.04,0.03,0.02,0.03,0.01,0.04,0.02,0.03,0.02,0.01,0.01,0.02,0.02,0.0
- ],
- tooltip: { yDecimals: 0, ySuffix: 'ms' }
- },
- {
- type: 'column',
- color: '#f15b4f',
- name: 'KO',
- data: [
- 0.0,0.0,0.0,0.0,0.0,0.0,0.01,0.06,0.94,0.0,0.42,0.0,0.63,0.26,0.08,0.16,2.92,3.53,8.09,1.85,0.76,0.94,2.6,2.08,3.87,4.83,4.57,2.96,2.67,2.24,2.66,2.73,2.41,3.34,2.92,3.52,2.04,1.26,1.16,1.18,0.7,0.36,0.38,0.46,0.56,0.48,0.57,0.68,0.54,0.62,0.43,0.39,0.43,0.29,0.28,0.37,0.3,0.33,0.52,0.33,0.31,0.46,0.12,0.17,0.16,0.18,0.12,0.11,0.16,0.02,0.09,0.07,0.02,0.04,0.26,0.27,0.2,0.06,0.09,0.06,0.07,0.07,0.02,0.08,0.02,0.03,0.0,0.04,0.05,0.0,0.01,0.0,0.0,0.0,0.0,0.01,0.0,0.01,0.0,3.29
- ],
- tooltip: { yDecimals: 0, ySuffix: 'ms' }
- }
- ]
- });
- responsetimeDistributionChart.setTitle({
- text: '<span class="chart_title">Response Time Distribution</span>',
- useHTML: true
- });
- var responsetimepercentilesovertimeokPercentiles = unpack([[1744803775,[1830,6284,9557,11102,12871,13744,17768,35334,51279,59505]],[1744803776,[5181,9295,12730,16719,18866,26739,35252,42056,52320,58924]],[1744803777,[11123,15006,18275,32947,33874,37316,42478,50917,58858,59107]],[1744803778,[10973,17583,30615,37150,38666,41110,45413,53848,58326,59073]],[1744803779,[12810,29684,31871,38250,39762,41580,45166,51246,56040,58829]],[1744803780,[17054,29771,34365,42639,44327,46941,50087,53260,57039,59223]],[1744803781,[25921,28915,33331,41441,43807,45660,49239,52157,57599,58192]],[1744803782,[20848,26959,29485,37863,38805,40603,43613,44452,49355,54111]],[1744803783,[24756,27829,31791,41436,44810,47038,50671,54556,59319,59319]],[1744803784,[24488,24514,27399,39847,39847,39847,44290,44290,44290,44290]],[1744803785,null],[1744803786,null],[1744803787,null],[1744803788,null],[1744803789,null],[1744803790,null],[1744803791,null],[1744803792,null],[1744803793,null],[1744803794,null],[1744803795,null],[1744803796,null],[1744803797,null],[1744803798,null],[1744803799,null],[1744803800,null],[1744803801,null],[1744803802,null],[1744803803,null],[1744803804,null],[1744803805,null],[1744803806,null],[1744803807,null],[1744803808,null],[1744803809,null],[1744803810,null],[1744803811,null],[1744803812,null],[1744803813,null],[1744803814,null],[1744803815,null],[1744803816,null],[1744803817,null],[1744803818,null],[1744803819,null],[1744803820,null],[1744803821,null],[1744803822,null],[1744803823,null],[1744803824,null],[1744803825,null],[1744803826,null],[1744803827,null],[1744803828,null],[1744803829,null],[1744803830,null],[1744803831,null],[1744803832,null],[1744803833,null],[1744803834,null],[1744803835,null],[1744803836,null],[1744803837,null],[1744803838,null],[1744803839,null],[1744803840,null],[1744803841,null],[1744803842,null],[1744803843,null],[1744803844,null],[1744803845,null],[1744803846,null],[1744803847,null],[1744803848,null],[1744803849,null],[1744803850,null],[1744803851,null],[1744803852,null],[1744803853,null],[1744803854,null],[1744803855,null],[1744803856,null],[1744803857,null],[1744803858,null],[1744803859,null],[1744803860,null],[1744803861,null],[1744803862,null],[1744803863,null],[1744803864,null],[1744803865,null],[1744803866,null],[1744803867,null],[1744803868,null],[1744803869,null],[1744803870,null],[1744803871,null],[1744803872,null],[1744803873,null],[1744803874,null],[1744803875,null],[1744803876,null],[1744803877,null],[1744803878,null],[1744803879,null],[1744803880,null],[1744803881,null],[1744803882,null],[1744803883,null],[1744803884,null],[1744803885,null],[1744803886,null],[1744803887,null],[1744803888,null],[1744803889,null],[1744803890,null],[1744803891,null],[1744803892,null],[1744803893,null],[1744803894,null],[1744803895,null],[1744803896,null],[1744803897,null]]);
- var responsetimepercentilesovertimeokPercentilesChart = new Highcharts.StockChart({
- chart: {
- renderTo: 'responsetimepercentilesovertimeokPercentilesContainer',
- zoomType: 'x',
- marginBottom: 60
- },
- colors: ['#c4fd90', '#7ff77f', '#6ff2ad', '#61ede6', '#58c7e0', '#4ea1d4', '#487ad9', '#3f52cc', '#7335dc', '#c73905', '#FFA900'],
- credits: { enabled: false },
- legend: {
- enabled: true,
- floating: true,
- y: -65,
- borderWidth: 0,
- itemStyle: { fontWeight: "normal" },
- symbolRadius: 0
- },
- title: { text: 'A title to let highcharts reserve the place for the title set later' },
- navigator: {
- maskInside: false,
- baseSeries: 9
- },
- rangeSelector: {
- rangeSelector: { align: "left" },
- buttonSpacing: 0,
- buttonTheme: {
- fill: '#CFC9C6',
- padding: 1,
- stroke: '#000000',
- 'stroke-width': 0.25,
- style: {
- color: '#000000',
- fontWeight: 'bold',
- },
- states: {
- stroke: '#92918C',
- 'stroke-width': 0.25,
- hover: {
- fill: '#92918C',
- style: { color: 'black' }
- },
- select: {
- fill: '#FFA900',
- style: { color: 'white' }
- }
- }
- },
- buttons : [
- {
- type : 'minute',
- count : 1,
- text : '1m'
- }, {
- type : 'minute',
- count : 10,
- text : '10m'
- }, {
- type : 'hour',
- count : 1,
- text : '1h'
- }, {
- type : 'all',
- count : 1,
- text : 'All'
- }
- ],
- selected : 3,
- inputEnabled : false
- },
- xAxis: {
- type: 'datetime',
- ordinal: false,
- maxZoom: 10000 // three days
- },
- yAxis:[
- {
- min: 0,
- title: { text: 'Response Time (ms)' },
- opposite: false
- }, {
- min: 0,
- title: {
- text: 'Active Users',
- style: { color: '#FFA900' }
- },
- opposite: true
- }
- ],
- plotOptions: {
- arearange: { lineWidth: 1 },
- series: {
- dataGrouping: { enabled: false }
- }
- },
- series: [
-
-
- {
- pointInterval: 1000,
- name: 'min',
- data: responsetimepercentilesovertimeokPercentiles[0],
- tooltip: { yDecimals: 0, ySuffix: 'ms' },
- type : 'area',
- yAxis: 0,
- zIndex: 10
- },
- {
- pointInterval: 1000,
- name: '25%',
- data: responsetimepercentilesovertimeokPercentiles[1],
- tooltip: { yDecimals: 0, ySuffix: 'ms' },
- type : 'area',
- yAxis: 0,
- zIndex: 9
- },
- {
- pointInterval: 1000,
- name: '50%',
- data: responsetimepercentilesovertimeokPercentiles[2],
- tooltip: { yDecimals: 0, ySuffix: 'ms' },
- type : 'area',
- yAxis: 0,
- zIndex: 8
- },
- {
- pointInterval: 1000,
- name: '75%',
- data: responsetimepercentilesovertimeokPercentiles[3],
- tooltip: { yDecimals: 0, ySuffix: 'ms' },
- type : 'area',
- yAxis: 0,
- zIndex: 7
- },
- {
- pointInterval: 1000,
- name: '80%',
- data: responsetimepercentilesovertimeokPercentiles[4],
- tooltip: { yDecimals: 0, ySuffix: 'ms' },
- type : 'area',
- yAxis: 0,
- zIndex: 6
- },
- {
- pointInterval: 1000,
- name: '85%',
- data: responsetimepercentilesovertimeokPercentiles[5],
- tooltip: { yDecimals: 0, ySuffix: 'ms' },
- type : 'area',
- yAxis: 0,
- zIndex: 5
- },
- {
- pointInterval: 1000,
- name: '90%',
- data: responsetimepercentilesovertimeokPercentiles[6],
- tooltip: { yDecimals: 0, ySuffix: 'ms' },
- type : 'area',
- yAxis: 0,
- zIndex: 4
- },
- {
- pointInterval: 1000,
- name: '95%',
- data: responsetimepercentilesovertimeokPercentiles[7],
- tooltip: { yDecimals: 0, ySuffix: 'ms' },
- type : 'area',
- yAxis: 0,
- zIndex: 3
- },
- {
- pointInterval: 1000,
- name: '99%',
- data: responsetimepercentilesovertimeokPercentiles[8],
- tooltip: { yDecimals: 0, ySuffix: 'ms' },
- type : 'area',
- yAxis: 0,
- zIndex: 2
- },
- {
- pointInterval: 1000,
- name: 'max',
- data: responsetimepercentilesovertimeokPercentiles[9],
- tooltip: { yDecimals: 0, ySuffix: 'ms' },
- type : 'area',
- yAxis: 0,
- zIndex: 1
- },
- allUsersData
- ]
- });
- responsetimepercentilesovertimeokPercentilesChart.setTitle({
- text: '<span class="chart_title chart_title_">Response Time Percentiles over Time (OK)</span>',
- useHTML: true
- });
- var requests = unpack([[1744803775,[1680,1175,505]],[1744803776,[2110,1111,999]],[1744803777,[2194,187,2007]],[1744803778,[2643,187,2456]],[1744803779,[2564,174,2390]],[1744803780,[3811,378,3433]],[1744803781,[3153,179,2974]],[1744803782,[3187,102,3085]],[1744803783,[2693,58,2635]],[1744803784,[965,7,958]],[1744803785,[0,0,0]],[1744803786,[0,0,0]],[1744803787,[0,0,0]],[1744803788,[0,0,0]],[1744803789,[0,0,0]],[1744803790,[0,0,0]],[1744803791,[0,0,0]],[1744803792,[0,0,0]],[1744803793,[0,0,0]],[1744803794,[0,0,0]],[1744803795,[0,0,0]],[1744803796,[0,0,0]],[1744803797,[0,0,0]],[1744803798,[0,0,0]],[1744803799,[0,0,0]],[1744803800,[0,0,0]],[1744803801,[0,0,0]],[1744803802,[0,0,0]],[1744803803,[0,0,0]],[1744803804,[0,0,0]],[1744803805,[0,0,0]],[1744803806,[0,0,0]],[1744803807,[0,0,0]],[1744803808,[0,0,0]],[1744803809,[0,0,0]],[1744803810,[0,0,0]],[1744803811,[0,0,0]],[1744803812,[0,0,0]],[1744803813,[0,0,0]],[1744803814,[0,0,0]],[1744803815,[0,0,0]],[1744803816,[0,0,0]],[1744803817,[0,0,0]],[1744803818,[0,0,0]],[1744803819,[0,0,0]],[1744803820,[0,0,0]],[1744803821,[0,0,0]],[1744803822,[0,0,0]],[1744803823,[0,0,0]],[1744803824,[0,0,0]],[1744803825,[0,0,0]],[1744803826,[0,0,0]],[1744803827,[0,0,0]],[1744803828,[0,0,0]],[1744803829,[0,0,0]],[1744803830,[0,0,0]],[1744803831,[0,0,0]],[1744803832,[0,0,0]],[1744803833,[0,0,0]],[1744803834,[0,0,0]],[1744803835,[0,0,0]],[1744803836,[0,0,0]],[1744803837,[0,0,0]],[1744803838,[0,0,0]],[1744803839,[0,0,0]],[1744803840,[0,0,0]],[1744803841,[0,0,0]],[1744803842,[0,0,0]],[1744803843,[0,0,0]],[1744803844,[0,0,0]],[1744803845,[0,0,0]],[1744803846,[0,0,0]],[1744803847,[0,0,0]],[1744803848,[0,0,0]],[1744803849,[0,0,0]],[1744803850,[0,0,0]],[1744803851,[0,0,0]],[1744803852,[0,0,0]],[1744803853,[0,0,0]],[1744803854,[0,0,0]],[1744803855,[0,0,0]],[1744803856,[0,0,0]],[1744803857,[0,0,0]],[1744803858,[0,0,0]],[1744803859,[0,0,0]],[1744803860,[0,0,0]],[1744803861,[0,0,0]],[1744803862,[0,0,0]],[1744803863,[0,0,0]],[1744803864,[0,0,0]],[1744803865,[0,0,0]],[1744803866,[0,0,0]],[1744803867,[0,0,0]],[1744803868,[0,0,0]],[1744803869,[0,0,0]],[1744803870,[0,0,0]],[1744803871,[0,0,0]],[1744803872,[0,0,0]],[1744803873,[0,0,0]],[1744803874,[0,0,0]],[1744803875,[0,0,0]],[1744803876,[0,0,0]],[1744803877,[0,0,0]],[1744803878,[0,0,0]],[1744803879,[0,0,0]],[1744803880,[0,0,0]],[1744803881,[0,0,0]],[1744803882,[0,0,0]],[1744803883,[0,0,0]],[1744803884,[0,0,0]],[1744803885,[0,0,0]],[1744803886,[0,0,0]],[1744803887,[0,0,0]],[1744803888,[0,0,0]],[1744803889,[0,0,0]],[1744803890,[0,0,0]],[1744803891,[0,0,0]],[1744803892,[0,0,0]],[1744803893,[0,0,0]],[1744803894,[0,0,0]],[1744803895,[0,0,0]],[1744803896,[0,0,0]],[1744803897,[0,0,0]]]);
- var requestsChart = new Highcharts.StockChart({
- chart: {
- renderTo: 'requests',
- zoomType: 'x',
- marginBottom: 60
- },
- credits: { enabled: false },
- legend: {
- enabled: true,
- floating: true,
- y: -65,
- borderWidth: 0,
- itemStyle: { fontWeight: "normal" },
- symbolRadius: 0
- },
- title: { text: 'A title to let highcharts reserve the place for the title set later' },
- navigator: {
- maskInside: false
- },
- rangeSelector: {
- buttonSpacing: 0,
- buttonTheme: {
- fill: '#CFC9C6',
- padding: 1,
- stroke: '#000000',
- 'stroke-width': 0.25,
- style: {
- color: '#000000',
- fontWeight: 'bold',
- },
- states: {
- stroke: '#000000',
- 'stroke-width': 0.25,
- hover: {
- fill: '#92918C',
- style: { color: 'black' }
- },
- select: {
- fill: '#FFA900',
- style: { color: 'white' }
- }
- }
- },
- buttons : [
- {
- type : 'minute',
- count : 1,
- text : '1m'
- }, {
- type : 'minute',
- count : 10,
- text : '10m'
- }, {
- type : 'hour',
- count : 1,
- text : '1h'
- }, {
- type : 'all',
- count : 1,
- text : 'All'
- }
- ],
- selected : 3,
- inputEnabled : false
- },
- plotOptions: {
- series: {
- dataGrouping: { enabled: false }
- },
- area: {
- stacking: 'normal'
- }
- },
- xAxis: {
- type: 'datetime',
- ordinal: false,
- maxZoom: 10000 // three days
- },
- yAxis:[
- {
- min: 0,
- title: { text: 'Number of requests' },
- opposite: false,
- reversedStacks: false
- }, {
- min: 0,
- title: {
- text: 'Active Users',
- style: { color: '#FFA900' }
- },
- opposite: true
- }
- ],
- series: [
- {
- color: '#5E7BE2',
- name: 'All',
- data: requests[0],
- tooltip: { yDecimals: 0, ySuffix: '', valueDecimals: 0 }
- ,type: 'area'},
- allUsersData
- ]
- });
- requestsChart.setTitle({
- text: '<span class="chart_title">Number of requests per second</span>',
- useHTML: true
- });
- var responses = unpack([[1744803775,[0,0,0]],[1744803776,[0,0,0]],[1744803777,[12,12,0]],[1744803778,[12,12,0]],[1744803779,[75,75,0]],[1744803780,[16,16,0]],[1744803781,[197,197,0]],[1744803782,[152,152,0]],[1744803783,[46,46,0]],[1744803784,[169,169,0]],[1744803785,[392,392,0]],[1744803786,[115,115,0]],[1744803787,[198,108,90]],[1744803788,[313,187,126]],[1744803789,[438,258,180]],[1744803790,[425,74,351]],[1744803791,[165,73,92]],[1744803792,[696,69,627]],[1744803793,[406,78,328]],[1744803794,[2495,51,2444]],[1744803795,[3394,28,3366]],[1744803796,[1349,27,1322]],[1744803797,[896,33,863]],[1744803798,[1216,16,1200]],[1744803799,[665,15,650]],[1744803800,[1716,10,1706]],[1744803801,[966,21,945]],[1744803802,[1488,16,1472]],[1744803803,[950,17,933]],[1744803804,[568,21,547]],[1744803805,[462,12,450]],[1744803806,[123,20,103]],[1744803807,[168,30,138]],[1744803808,[265,68,197]],[1744803809,[364,164,200]],[1744803810,[411,118,293]],[1744803811,[322,80,242]],[1744803812,[205,65,140]],[1744803813,[281,57,224]],[1744803814,[220,53,167]],[1744803815,[199,56,143]],[1744803816,[213,58,155]],[1744803817,[195,45,150]],[1744803818,[101,39,62]],[1744803819,[133,36,97]],[1744803820,[114,28,86]],[1744803821,[96,37,59]],[1744803822,[73,23,50]],[1744803823,[61,29,32]],[1744803824,[79,29,50]],[1744803825,[85,25,60]],[1744803826,[65,24,41]],[1744803827,[66,27,39]],[1744803828,[80,19,61]],[1744803829,[47,12,35]],[1744803830,[45,21,24]],[1744803831,[48,16,32]],[1744803832,[31,21,10]],[1744803833,[21,12,9]],[1744803834,[24,15,9]],[1744803835,[186,10,176]],[1744803836,[376,7,369]],[1744803837,[122,7,115]],[1744803838,[80,3,77]],[1744803839,[36,3,33]],[1744803840,[39,0,39]],[1744803841,[12,0,12]],[1744803842,[16,1,15]],[1744803843,[5,0,5]],[1744803844,[1,0,1]],[1744803845,[0,0,0]],[1744803846,[0,0,0]],[1744803847,[0,0,0]],[1744803848,[0,0,0]],[1744803849,[0,0,0]],[1744803850,[0,0,0]],[1744803851,[0,0,0]],[1744803852,[0,0,0]],[1744803853,[0,0,0]],[1744803854,[0,0,0]],[1744803855,[0,0,0]],[1744803856,[0,0,0]],[1744803857,[0,0,0]],[1744803858,[0,0,0]],[1744803859,[0,0,0]],[1744803860,[0,0,0]],[1744803861,[0,0,0]],[1744803862,[0,0,0]],[1744803863,[0,0,0]],[1744803864,[0,0,0]],[1744803865,[0,0,0]],[1744803866,[0,0,0]],[1744803867,[0,0,0]],[1744803868,[0,0,0]],[1744803869,[0,0,0]],[1744803870,[0,0,0]],[1744803871,[0,0,0]],[1744803872,[0,0,0]],[1744803873,[0,0,0]],[1744803874,[0,0,0]],[1744803875,[0,0,0]],[1744803876,[0,0,0]],[1744803877,[0,0,0]],[1744803878,[0,0,0]],[1744803879,[0,0,0]],[1744803880,[0,0,0]],[1744803881,[0,0,0]],[1744803882,[0,0,0]],[1744803883,[0,0,0]],[1744803884,[0,0,0]],[1744803885,[0,0,0]],[1744803886,[0,0,0]],[1744803887,[0,0,0]],[1744803888,[0,0,0]],[1744803889,[0,0,0]],[1744803890,[0,0,0]],[1744803891,[0,0,0]],[1744803892,[0,0,0]],[1744803893,[0,0,0]],[1744803894,[0,0,0]],[1744803895,[0,0,0]],[1744803896,[0,0,0]],[1744803897,[0,0,0]]]);
- var requestsChart = new Highcharts.StockChart({
- chart: {
- renderTo: 'responses',
- zoomType: 'x',
- marginBottom: 60
- },
- credits: { enabled: false },
- legend: {
- enabled: true,
- floating: true,
- y: -65,
- borderWidth: 0,
- itemStyle: { fontWeight: "normal" },
- symbolRadius: 0
- },
- title: { text: 'A title to let highcharts reserve the place for the title set later' },
- navigator: {
- maskInside: false
- },
- rangeSelector: {
- buttonSpacing: 0,
- buttonTheme: {
- fill: '#CFC9C6',
- padding: 1,
- stroke: '#000000',
- 'stroke-width': 0.25,
- style: {
- color: '#000000',
- fontWeight: 'bold',
- },
- states: {
- stroke: '#000000',
- 'stroke-width': 0.25,
- hover: {
- fill: '#92918C',
- style: { color: 'black' }
- },
- select: {
- fill: '#FFA900',
- style: { color: 'white' }
- }
- }
- },
- buttons : [
- {
- type : 'minute',
- count : 1,
- text : '1m'
- }, {
- type : 'minute',
- count : 10,
- text : '10m'
- }, {
- type : 'hour',
- count : 1,
- text : '1h'
- }, {
- type : 'all',
- count : 1,
- text : 'All'
- }
- ],
- selected : 3,
- inputEnabled : false
- },
- plotOptions: {
- series: {
- dataGrouping: { enabled: false }
- },
- area: {
- stacking: 'normal'
- }
- },
- xAxis: {
- type: 'datetime',
- ordinal: false,
- maxZoom: 10000 // three days
- },
- yAxis:[
- {
- min: 0,
- title: { text: 'Number of responses' },
- opposite: false,
- reversedStacks: false
- }, {
- min: 0,
- title: {
- text: 'Active Users',
- style: { color: '#FFA900' }
- },
- opposite: true
- }
- ],
- series: [
- {
- color: '#5E7BE2',
- name: 'All',
- data: responses[0],
- tooltip: { yDecimals: 0, ySuffix: '', valueDecimals: 0 }
- },
- {
- color: '#68b65c',
- name: 'OK',
- data: responses[1],
- tooltip: { yDecimals: 0, ySuffix: '', valueDecimals: 0 }
- ,type: 'area'},
- {
- color: '#f15b4f',
- name: 'KO',
- data: responses[2],
- tooltip: { yDecimals: 0, ySuffix: '', valueDecimals: 0 }
- ,type: 'area'},
- allUsersData,
- {
-
- type: 'pie',
- name: 'Distribution',
- data: [
- {name: 'OK', y: 3558.0, color: '#68b65c'},{name: 'KO', y: 21442.0, color: '#f15b4f'}
- ],
- center: [775, -40],
- size: 70,
- showInLegend: false,
- dataLabels: { enabled: false },
- dataGrouping: { enabled: false }
- }
- ]
- });
- requestsChart.setTitle({
- text: '<span class="chart_title">Number of responses per second</span>',
- useHTML: true
- });
- var scatterChart = new Highcharts.Chart({
- chart: {
- renderTo: 'container_response_time_dispersion',
- defaultSeriesType: 'scatter',
- zoomType: 'xy',
- marginBottom: 90
- },
- credits: { enabled: false },
- xAxis: {
- title: {
- enabled: true,
- text: 'Global number of requests per second',
- style: { fontWeight: 'bold' }
- },
- startOnTick: true,
- endOnTick: true,
- showLastLabel: true,
- min: 0
- },
- title: { text: 'A title to let highcharts reserve the place for the title set later' },
- yAxis: {
- min: 0,
- title: { text: 'Response Time (ms)' }
- },
- tooltip: {
- formatter: function() {
- return ''+ this.y +' ms at ' + this.x + ' allreq/s';
- }
- },
- legend: {
- enabled: true,
- floating: true,
- y: 0,
- borderWidth: 0,
- itemStyle: { fontWeight: "normal" },
- },
- plotOptions: {
- scatter: {
- marker: {
- radius: 3,
- states: {
- hover: {
- enabled: true,
- lineColor: 'rgb(100,100,100)'
- }
- }
- },
- states: {
- hover: {
- marker: { enabled: false }
- }
- }
- }
- },
- series: [
- {
- type: 'scatter',
- color: '#68b65c',
- name: 'OK',
- data: [
- [1472,44290],[1680,35334],[2110,42056],[2230,50917],[2676,53848],[2792,51246],[2828,54556],[3643,44452],[3744,52157],[3859,53260]
- ]},
- {
- type: 'scatter',
- color: '#f15b4f',
- name: 'KO',
- data: [
- [1472,22866],[1680,60010],[2110,60007],[2230,56160],[2676,37035],[2792,40677],[2828,29175],[3643,31414],[3744,39125],[3859,44986]
- ]}
- ]
- });
- scatterChart.setTitle({
- text: '<span class="chart_title">Response Time against Global Throughput</span>',
- useHTML: true
- });
- });
- </script>
- </div>
- </body>
- </html>
|