1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189 |
- <!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 - Global Information</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">
- CartsPageSimulation
- </div>
- <div class="sous-menu" id="sousMenu">
- <div class="sous-menu-spacer">
- <div class="item ouvert"><a href="index.html">Global</a></div>
- <div class="item "><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">
- </div>
- <div class="schema polar">
- <div id="container_number_of_requests"></div>
- </div>
- <div class="simulation-card">
- <div class="simulation-version-information">
- <span class="simulation-information-title">Gatling Version</span>
- <span class="simulation-information-item">
- <span class="simulation-information-label">Version: </span>
- <span>3.13.5</span>
- </span>
- <span class="simulation-information-item">
- <span class="simulation-information-label">Released: </span>
- <span>2025-03-11</span>
- </span>
- </div>
- <div id="simulation-information" class="simulation-version-information">
- <span class="simulation-information-title">Run Information</span>
- <div class="simulation-information-container">
- <span class="simulation-information-item">
- <span class="simulation-information-label">Date: </span>
- <span>2025-04-17 18:15:28 GMT</span>
- </span>
- <span class="simulation-information-item">
- <span class="simulation-information-label">Duration: </span>
- <span>1m 43s </span>
- </span>
- <span class="simulation-information-item">
- <span class="simulation-information-label">Description: </span>
- <span>—</span>
- </span>
- </div>
- </div>
- </div>
- </div>
- <div id="statistics_table_container">
- <div id="stats" class="statistics extensible-geant collapsed">
- <div class="title">
- <div id="statistics_title" class="title_base"><span class="title_base_stats">Stats</span><span class="expand-table">Fixed height</span><span id="toggle-stats" class="toggle-table"></span><span class="collapse-table">Full size</span></div>
- <div class="right">
- <button class="statistics-button expand-all-button">Expand all groups</button>
- <button class="statistics-button collapse-all-button">Collapse all groups</button>
- <button id="statistics_full_screen" class="statistics-button" onclick="openStatisticsTableModal()"><img alt="Fullscreen" src="style/fullscreen.svg"></button>
- </div>
- </div>
- <div class="scrollable">
- <table id="container_statistics_head" class="statistics-in extensible-geant">
- <thead>
- <tr>
- <th rowspan="2" id="col-1" class="header sortable sorted-up"><span>Requests</span></th>
- <th colspan="5" class="header"><span class="executions">Executions</span></th>
- <th colspan="8" class="header"><span class="response-time">Response Time (ms)</span></th>
- </tr>
- <tr>
- <th id="col-2" class="header sortable"><span>Total</span></th>
- <th id="col-3" class="header sortable"><span>OK</span></th>
- <th id="col-4" class="header sortable"><span>KO</span></th>
- <th id="col-5" class="header sortable"><span>% KO</span></th>
- <th id="col-6" class="header sortable"><span><abbr title="Count of events per second">Cnt/s</abbr></span></th>
- <th id="col-7" class="header sortable"><span>Min</span></th>
- <th id="col-8" class="header sortable"><span>50th pct</span></th>
- <th id="col-9" class="header sortable"><span>75th pct</span></th>
- <th id="col-10" class="header sortable"><span>95th pct</span></th>
- <th id="col-11" class="header sortable"><span>99th pct</span></th>
- <th id="col-12" class="header sortable"><span>Max</span></th>
- <th id="col-13" class="header sortable"><span>Mean</span></th>
- <th id="col-14" class="header sortable"><span><abbr title="Standard Deviation">Std Dev</abbr></span></th>
- </tr>
- </thead>
- <tbody></tbody>
- </table>
- <table id="container_statistics_body" class="statistics-in extensible-geant">
- <tbody></tbody>
- </table>
- </div>
- </div>
- </div>
- <dialog id="statistics_table_modal" class="statistics-table-modal">
- <div class="statistics-table-modal-header"><button class="button-modal" onclick="closeStatisticsTableModal()"><img alt="Close" src="style/close.svg"></button></div>
- <div class="statistics-table-modal-container">
- <div id="statistics_table_modal_content" class="statistics-table-modal-content"></div>
- </div>
- </dialog>
- <script>
- function openStatisticsTableModal () {
- const statsTable = document.getElementById("stats");
- const statsTableModal = document.getElementById("statistics_table_modal");
- const fullScreenButton = document.getElementById("statistics_full_screen");
- fullScreenButton.disabled = true;
- if (typeof statsTableModal.showModal === "function") {
- const statsTableModalContent = document.getElementById("statistics_table_modal_content");
- statsTableModalContent.innerHTML = "";
- statsTableModalContent.appendChild(statsTable);
- statsTableModal.showModal();
- statsTableModal.addEventListener("close", function () {
- const container = document.getElementById("statistics_table_container");
- container.appendChild(statsTable);
- fullScreenButton.disabled = false;
- });
- } else {
- const incompatibleBrowserVersionMessage = document.createElement("div");
- incompatibleBrowserVersionMessage.innerText = "Sorry, the <dialog> API is not supported by this browser.";
- statsTable.insertBefore(incompatibleBrowserVersionMessage, statsTable.children[0]);
- }
- }
- function closeStatisticsTableModal () {
- const statsTableModal = document.getElementById("statistics_table_modal");
- statsTableModal.close();
- }
- </script>
- <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: No buffer space available (maximum connections reached?): connect<span class="value" style="display:none">0</span></td>
- <td class="value error-col-2 total ko">15652</td>
- <td class="value error-col-3 total ko">55.64%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">i.n.c.ConnectTimeoutException: connection timed out after 10000 ms: ecomm.gatling.io/18.164.246.108:443<span class="value" style="display:none">1</span></td>
- <td class="value error-col-2 total ko">2857</td>
- <td class="value error-col-3 total ko">10.16%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">i.n.c.ConnectTimeoutException: connection timed out after 10000 ms: ecomm.gatling.io/18.164.246.56:443<span class="value" style="display:none">2</span></td>
- <td class="value error-col-2 total ko">2834</td>
- <td class="value error-col-3 total ko">10.07%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">i.n.c.ConnectTimeoutException: connection timed out after 10000 ms: ecomm.gatling.io/18.164.246.48:443<span class="value" style="display:none">3</span></td>
- <td class="value error-col-2 total ko">2780</td>
- <td class="value error-col-3 total ko">9.88%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">i.n.c.ConnectTimeoutException: connection timed out after 10000 ms: ecomm.gatling.io/18.164.246.111:443<span class="value" style="display:none">4</span></td>
- <td class="value error-col-2 total ko">2683</td>
- <td class="value error-col-3 total ko">9.54%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">j.n.BindException: Address already in use: getsockopt<span class="value" style="display:none">5</span></td>
- <td class="value error-col-2 total ko">369</td>
- <td class="value error-col-3 total ko">1.31%</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">6</span></td>
- <td class="value error-col-2 total ko">209</td>
- <td class="value error-col-3 total ko">0.74%</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">7</span></td>
- <td class="value error-col-2 total ko">209</td>
- <td class="value error-col-3 total ko">0.74%</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">8</span></td>
- <td class="value error-col-2 total ko">204</td>
- <td class="value error-col-3 total ko">0.73%</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">9</span></td>
- <td class="value error-col-2 total ko">172</td>
- <td class="value error-col-3 total ko">0.61%</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">10</span></td>
- <td class="value error-col-2 total ko">164</td>
- <td class="value error-col-3 total ko">0.58%</td>
- </tr>
- </tbody>
- </table>
- </div>
- <div class="schema geant">
- <div id="active_users" class="geant"></div>
- </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>
- </div>
- </div>
- </div>
- </div>
- </div>
- <script>
- var pageStats = stats.stats;
- $(document).ready(function() {
- $('.simulation-tooltip').popover({trigger:'hover', placement:'left'});
- setDetailsLinkUrl();
- setGlobalMenu();
- 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: [345, 0],
- size: 90,
- showInLegend: false,
- dataLabels: { enabled: false }
- }
- ]
- });
- rangesChart.setTitle({
- text: '<span class="chart_title">Response Time Ranges</span>',
- useHTML: true
- });
- function numberOfRequestsDataForGroup(group) {
- var data = {names: [], oks: [], kos: []};
- $.each(group.contents, function(contentName, content) {
- if (content.type == 'GROUP') {
- var result = numberOfRequestsDataForGroup(content);
- data.names = data.names.concat(result.names);
- data.oks = data.oks.concat(result.oks);
- data.kos = data.kos.concat(result.kos);
- }
- else if (content.type == 'REQUEST') {
- data.names.push(content.path);
- data.oks.push(parseInt(content.stats.numberOfRequests.ok));
- data.kos.push(parseInt(content.stats.numberOfRequests.ko));
- }
- });
- return data;
- }
- var numberOfRequestsData = numberOfRequestsDataForGroup(stats);
- var tickInterval = Math.ceil(numberOfRequestsData.names.length / 1000);
- new Highcharts.Chart({
- chart: {
- renderTo:'container_number_of_requests',
- polar:true,
- type:'column',
- height:330
- },
- credits:{
- enabled:false
- },
- title:{
- text:'<span class="chart_title">Number of requests</span>',
- useHTML: true,
- widthAdjust:-20
- },
- xAxis:{
- tickmarkPlacement:'on',
- tickInterval: tickInterval,
- categories:numberOfRequestsData.names,
- labels:{ enabled:false }
- },
- yAxis:{
- min:0,
- reversedStacks: false
- },
- plotOptions:{
- series:{
- stacking:'normal',
- groupPadding:0,
- pointPlacement:'on',
- shadow: true
- }
- },
- legend: {
- borderWidth: 0,
- itemStyle: { fontWeight: "normal" },
- symbolRadius: 0
- },
- series:[
- {
- name:'OK',
- data:numberOfRequestsData.oks,
- color:"#68b65c"
- },
- {
- name:'KO',
- data:numberOfRequestsData.kos,
- color:"#f15b4f"
- }
- ]
- });
- $('#container_exceptions').sortable('#container_exceptions');
-
- function generateHtmlRow(request, level, index, parent, group) {
- if (request.name == 'All Requests')
- var url = 'index.html';
- else
- var url = request.pathFormatted + '.html';
- if (group)
- var expandButtonStyle = '';
- else
- var expandButtonStyle = ' hidden';
- if (request.stats.numberOfRequests.total != 0)
- var koPercent = (request.stats.numberOfRequests.ko * 100 / request.stats.numberOfRequests.total).toFixed(2);
- else
- var koPercent = '-'
- return '<tr id="' + request.pathFormatted + '" data-parent=' + parent + '> \
- <td class="total col-1"> \
- <div class="expandable-container"> \
- <span id="' + request.pathFormatted + '" style="margin-left: ' + (level * 10) + 'px;" class="expand-button' + expandButtonStyle + '"> </span> \
- <a href="' + url +'" class="withTooltip">' + ellipsedLabel({ name: request.name, parentClass: "table-cell-tooltip" }) + '</a><span class="value" style="display:none;">' + index + '</span> \
- </div> \
- </td> \
- <td class="value total col-2">' + request.stats.numberOfRequests.total + '</td> \
- <td class="value ok col-3">' + request.stats.numberOfRequests.ok + '</td> \
- <td class="value ko col-4">' + request.stats.numberOfRequests.ko + '</td> \
- <td class="value ko col-5">' + koPercent + '</td> \
- <td class="value total col-6">' + request.stats.meanNumberOfRequestsPerSecond.total + '</td> \
- <td class="value total col-7">' + request.stats.minResponseTime.total + '</td> \
- <td class="value total col-8">' + request.stats.percentiles1.total + '</td> \
- <td class="value total col-9">' + request.stats.percentiles2.total + '</td> \
- <td class="value total col-10">' + request.stats.percentiles3.total + '</td> \
- <td class="value total col-11">' + request.stats.percentiles4.total + '</td> \
- <td class="value total col-12">' + request.stats.maxResponseTime.total + '</td> \
- <td class="value total col-13">' + request.stats.meanResponseTime.total + '</td> \
- <td class="value total col-14">' + request.stats.standardDeviation.total + '</td> \
- </tr>';
- }
- function generateHtmlRowsForGroup(group, level, index, parent) {
- var buffer = '';
- if (!parent)
- parent = 'ROOT';
- else {
- buffer += generateHtmlRow(group, level - 1, index, parent, true);
- index++;
- parent = group.pathFormatted;
- }
- $.each(group.contents, function(contentName, content) {
- if (content.type == 'GROUP') {
- var result = generateHtmlRowsForGroup(content, level + 1, index, parent);
- buffer += result.html;
- index = result.index;
- }
- else if (content.type == 'REQUEST') {
- buffer += generateHtmlRow(content, level, index, parent);
- index++;
- }
- });
- return { html: buffer, index: index };
- }
- $('#container_statistics_head tbody').append(generateHtmlRow(stats, 0, 0));
- var lines = generateHtmlRowsForGroup(stats, 0, 0);
- $('#container_statistics_body tbody').append(lines.html);
- $('#container_statistics_head').sortable('#container_statistics_body');
- $('.statistics').expandable();
- if (lines.index < 30) {
- $('#statistics_title span').attr('style', 'display: none;');
- } else {
- $('#statistics_title').addClass('title_collapsed');
- $('#statistics_title').click(function() {
- $('#toggle-stats').toggleClass("off");
- $(this).toggleClass('title_collapsed').toggleClass('title_expanded');
- $('#container_statistics_body').parent().toggleClass('scrollable').toggleClass('');
- });
- }
- $('.table-cell-tooltip').popover({trigger:'hover'});
- $('#container_errors').sortable('#container_errors');
-
- allUsersData.yAxis = 0;
- var allUsersChart = new Highcharts.StockChart({
- chart: {
- renderTo: 'active_users',
- zoomType: 'x'
- },
- credits: { enabled: false },
- legend: {
- enabled: true,
- floating: true,
- align: 'right',
- verticalAlign: 'top',
- layout: 'vertical',
- 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
- },
- xAxis: {
- type: 'datetime',
- ordinal: false,
- maxZoom: 10000 // three days
- },
- yAxis: {
- title: { text: 'Number of Active Users' },
- opposite: false,
- min: 0
- },
- series: [
- {
- color: '#5E7BE2',
- name: 'Cart Page Load Test',
- data: [
- [1744913729000,3201],[1744913730000,4871],[1744913731000,11272],[1744913732000,14415],[1744913733000,21276],[1744913734000,24006],[1744913735000,24396],[1744913736000,24861],[1744913737000,17848],[1744913738000,17744],[1744913739000,16240],[1744913740000,15527],[1744913741000,15377],[1744913742000,15198],[1744913743000,15010],[1744913744000,14748],[1744913745000,14282],[1744913746000,13873],[1744913747000,13731],[1744913748000,13642],[1744913749000,13598],[1744913750000,13515],[1744913751000,13476],[1744913752000,13421],[1744913753000,13388],[1744913754000,13367],[1744913755000,13352],[1744913756000,13293],[1744913757000,13265],[1744913758000,13232],[1744913759000,13205],[1744913760000,13162],[1744913761000,13109],[1744913762000,12848],[1744913763000,12720],[1744913764000,12619],[1744913765000,12480],[1744913766000,12312],[1744913767000,12271],[1744913768000,12238],[1744913769000,12206],[1744913770000,12163],[1744913771000,12125],[1744913772000,9901],[1744913773000,6921],[1744913774000,3752],[1744913775000,2332],[1744913776000,2159],[1744913777000,2111],[1744913778000,2079],[1744913779000,2054],[1744913780000,2013],[1744913781000,1972],[1744913782000,1898],[1744913783000,1871],[1744913784000,1846],[1744913785000,1806],[1744913786000,1749],[1744913787000,1712],[1744913788000,1680],[1744913789000,1652],[1744913790000,1622],[1744913791000,1591],[1744913792000,1544],[1744913793000,1508],[1744913794000,1467],[1744913795000,1437],[1744913796000,1402],[1744913797000,1333],[1744913798000,967],[1744913799000,762],[1744913800000,591],[1744913801000,378],[1744913802000,312],[1744913803000,273],[1744913804000,245],[1744913805000,212],[1744913806000,188],[1744913807000,166],[1744913808000,134],[1744913809000,120],[1744913810000,112],[1744913811000,86],[1744913812000,70],[1744913813000,51],[1744913814000,43],[1744913815000,28],[1744913816000,23],[1744913817000,19],[1744913818000,16],[1744913819000,14],[1744913820000,11],[1744913821000,9],[1744913822000,6],[1744913823000,6],[1744913824000,6],[1744913825000,5],[1744913826000,4],[1744913827000,3],[1744913828000,3],[1744913829000,2],[1744913830000,1],[1744913831000,1],[1744913832000,1]
- ],
- tooltip: { yDecimals: 0, ySuffix: '', valueDecimals: 0 }},
- allUsersData
- ]
- });
- allUsersChart.setTitle({
- text: '<span class="chart_title">Active Users along the Simulation</span>',
- useHTML: true
- });
- allUsersData.yAxis = 1;
- 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: ['300', '900', '1500', '2101', '2701', '3301', '3901', '4501', '5101', '5702', '6302', '6902', '7502', '8102', '8702', '9302', '9903', '10503', '11103', '11703', '12303', '12903', '13504', '14104', '14704', '15304', '15904', '16504', '17105', '17705', '18305', '18905', '19505', '20105', '20706', '21306', '21906', '22506', '23106', '23706', '24306', '24907', '25507', '26107', '26707', '27307', '27907', '28508', '29108', '29708', '30308', '30908', '31508', '32109', '32709', '33309', '33909', '34509', '35109', '35710', '36310', '36910', '37510', '38110', '38710', '39310', '39911', '40511', '41111', '41711', '42311', '42911', '43512', '44112', '44712', '45312', '45912', '46512', '47113', '47713', '48313', '48913', '49513', '50113', '50714', '51314', '51914', '52514', '53114', '53714', '54314', '54915', '55515', '56115', '56715', '57315', '57915', '58516', '59116', '59716'],
- 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.91,0.93,1.12,1.07,0.76,0.8,0.96,1.24,0.61,0.6,1.07,1.06,1.39,1.3,1.88,1.05,1.27,1.56,0.85,0.27,0.24,0.24,0.19,0.33,0.42,0.23,0.15,0.1,0.12,0.16,0.14,0.23,0.19,0.14,0.16,0.19,0.24,0.25,0.29,0.36,0.32,0.29,0.29,0.25,0.2,0.19,0.14,0.2,0.14,0.15,0.12,0.11,0.16,0.2,0.16,0.23,0.16,0.13,0.18,0.16,0.13,0.13,0.07,0.1,0.08,0.1,0.13,0.14,0.11,0.08,0.1,0.08,0.11,0.08,0.06,0.08,0.06,0.07,0.07,0.05,0.04,0.02,0.03,0.04,0.02,0.02,0.02,0.04,0.02,0.01,0.02,0.03,0.02,0.03,0.03,0.03,0.02,0.03,0.03,0.04
- ],
- tooltip: { yDecimals: 0, ySuffix: 'ms' }
- },
- {
- type: 'column',
- color: '#f15b4f',
- name: 'KO',
- data: [
- 10.37,6.0,2.32,3.66,9.24,1.33,0.79,0.16,3.96,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.26,0.35,0.13,0.0,0.0,0.07,0.0,0.03,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.51,0.16,0.01,0.05,0.02,0.01,0.0,0.01,0.0,0.0,0.0,0.0,0.0,0.06,0.0,0.02,0.04,0.95,0.28,0.43,0.26,0.01,0.01,0.0,0.01,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.4,7.93,11.6,3.66,1.04,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.81
- ],
- tooltip: { yDecimals: 0, ySuffix: 'ms' }
- }
- ]
- });
- responsetimeDistributionChart.setTitle({
- text: '<span class="chart_title">Response Time Distribution</span>',
- useHTML: true
- });
- var responsetimepercentilesovertimeokPercentiles = unpack([[1744913729,[1394,7380,8205,8756,9414,10627,10817,10879,11760,17148]],[1744913730,[7673,9130,9858,10397,10436,10645,11113,12643,27775,41121]],[1744913731,[4445,22366,24333,28639,30543,32304,33481,35993,40156,51108]],[1744913732,[2876,14496,21221,28298,31132,33213,35031,36801,42245,47120]],[1744913733,[3886,5273,20831,29619,32148,33157,35190,37907,47897,59346]],[1744913734,[3759,14656,22053,26524,32138,34629,35306,38762,40335,40335]],[1744913735,[2147,2734,4492,4575,4692,4701,4729,4736,4747,15346]],[1744913736,[1922,4130,4268,4436,4439,4444,4488,4602,4610,4611]],[1744913737,[1206,1480,6781,11543,13552,23531,26541,38905,49452,59721]],[1744913738,[721,5988,6951,9660,12490,19251,24463,35095,46713,59768]],[1744913739,[450,4857,6503,8231,14407,19071,25817,34481,57236,59826]],[1744913740,[164,3886,5416,13496,18221,23457,27797,39524,59325,59863]],[1744913741,[153,2198,3910,7977,13348,19543,24486,35050,56919,59006]],[1744913742,[140,1012,4624,31689,34002,37900,42713,52287,58647,58767]],[1744913743,[164,766,4990,37389,47737,53703,53727,53817,58464,58464]],[1744913744,[274,527,1223,3736,4695,8725,10026,24859,55223,55223]],[1744913745,[134,276,2247,18193,21586,35819,46477,52505,58152,58152]],[1744913746,[113,583,2385,12185,15388,19846,23056,49932,58172,59712]],[1744913747,[154,1207,5887,17687,22175,25704,31459,48562,58659,59985]],[1744913748,[445,1491,6510,15917,19901,23902,28266,49266,57203,57203]],[1744913749,[335,2451,7189,23619,24321,26381,49575,53236,55840,55840]],[1744913750,[451,4029,12115,22783,26679,30188,38135,52699,55603,56338]],[1744913751,[555,5238,16193,39918,45841,50596,53087,54948,56939,58457]],[1744913752,[497,8934,29128,43222,46599,48014,49733,58359,58874,59676]],[1744913753,[528,7699,29737,43836,45712,46890,50547,55881,58108,59985]],[1744913754,[452,8530,32543,42940,43920,45269,46914,51918,58042,58756]],[1744913755,[183,5536,24063,40943,42759,44217,45650,49637,57042,59637]],[1744913756,[349,2881,12166,37177,39958,41385,43751,47160,55492,56108]],[1744913757,[456,2753,11945,23740,27943,33098,39633,44091,55650,59691]],[1744913758,[311,1994,8406,27259,32050,37066,40447,42267,50301,52517]],[1744913759,[200,1904,7479,27071,32564,37090,40803,43234,48721,56532]],[1744913760,[306,1304,4770,21876,26044,31221,39051,40851,50086,52760]],[1744913761,[467,1572,13932,33598,35578,36425,40100,42958,50046,56205]],[1744913762,[323,1281,19504,34832,36259,36934,37843,41510,45212,45212]],[1744913763,[191,1200,16293,30393,32330,34597,35625,37944,49851,49851]],[1744913764,[192,979,17262,30254,33225,34475,35892,39472,42958,45143]],[1744913765,[230,1436,24363,33584,34705,35992,37331,40548,46905,53905]],[1744913766,[171,711,15317,31286,31522,33352,34706,41880,45074,47149]],[1744913767,[172,838,6146,24193,27123,29779,33560,36296,54403,54813]],[1744913768,[177,979,4600,24260,28683,29699,31014,31984,50397,50397]],[1744913769,[290,1016,5740,16624,17049,19730,25210,29643,33713,33713]],[1744913770,[304,2183,6570,17826,25806,27793,30032,50367,51561,51561]],[1744913771,[309,2552,10189,21691,27788,28316,30630,34115,58373,58373]],[1744913772,[435,1839,7819,25483,26829,28200,29165,31590,34992,34992]],[1744913773,[561,1506,11517,18612,20318,22716,29641,31703,44339,44339]],[1744913774,[581,2048,7441,17929,18434,22756,24567,26260,30218,30218]],[1744913775,[1140,1801,6262,14781,25882,25882,25882,25882,25882,25882]],[1744913776,[914,10471,19124,23459,27614,27614,29291,29291,29291,29291]],[1744913777,[2455,8935,12126,14508,14508,30426,30426,30426,30426,30426]],[1744913778,null],[1744913779,[2316,2316,3249,11090,11090,11090,11090,11090,11090,11090]],[1744913780,[3751,3751,17872,18779,18779,18779,18779,18779,18779,18779]],[1744913781,null],[1744913782,[8719,8719,17588,18149,18149,18149,18149,18149,18149,18149]],[1744913783,null],[1744913784,null],[1744913785,null],[1744913786,null],[1744913787,null],[1744913788,[5323,5323,5457,17371,17371,17371,17371,17371,17371,17371]],[1744913789,[1589,1589,5980,5980,5980,5980,5980,5980,5980,5980]],[1744913790,[2409,2409,2409,2409,2409,2409,2409,2409,2409,2409]],[1744913791,null],[1744913792,[1101,1101,4768,5143,5143,5143,5143,5143,5143,5143]],[1744913793,null],[1744913794,null],[1744913795,null],[1744913796,null],[1744913797,null],[1744913798,null],[1744913799,null],[1744913800,null],[1744913801,null],[1744913802,null],[1744913803,null],[1744913804,null],[1744913805,null],[1744913806,null],[1744913807,null],[1744913808,null],[1744913809,null],[1744913810,null],[1744913811,null],[1744913812,null],[1744913813,null],[1744913814,null],[1744913815,null],[1744913816,null],[1744913817,null],[1744913818,null],[1744913819,null],[1744913820,null],[1744913821,null],[1744913822,null],[1744913823,null],[1744913824,null],[1744913825,null],[1744913826,null],[1744913827,null],[1744913828,null],[1744913829,null],[1744913830,null],[1744913831,null],[1744913832,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([[1744913729,[2192,2192,0]],[1744913730,[1775,1725,50]],[1744913731,[5196,719,4477]],[1744913732,[3562,474,3088]],[1744913733,[4882,535,4347]],[1744913734,[5954,41,5913]],[1744913735,[1693,121,1572]],[1744913736,[1198,144,1054]],[1744913737,[1905,495,1410]],[1744913738,[2442,620,1822]],[1744913739,[1818,537,1281]],[1744913740,[2697,927,1770]],[1744913741,[969,373,596]],[1744913742,[213,137,76]],[1744913743,[36,25,11]],[1744913744,[27,22,5]],[1744913745,[114,83,31]],[1744913746,[246,181,65]],[1744913747,[249,193,56]],[1744913748,[114,93,21]],[1744913749,[60,48,12]],[1744913750,[156,133,23]],[1744913751,[147,119,28]],[1744913752,[138,123,15]],[1744913753,[267,236,31]],[1744913754,[321,297,24]],[1744913755,[468,369,99]],[1744913756,[381,298,83]],[1744913757,[231,198,33]],[1744913758,[210,163,47]],[1744913759,[141,123,18]],[1744913760,[153,129,24]],[1744913761,[111,102,9]],[1744913762,[87,85,2]],[1744913763,[99,97,2]],[1744913764,[117,111,6]],[1744913765,[213,205,8]],[1744913766,[117,112,5]],[1744913767,[140,134,6]],[1744913768,[76,73,3]],[1744913769,[63,62,1]],[1744913770,[36,34,2]],[1744913771,[48,45,3]],[1744913772,[48,46,2]],[1744913773,[27,27,0]],[1744913774,[24,23,1]],[1744913775,[6,5,1]],[1744913776,[9,9,0]],[1744913777,[6,6,0]],[1744913778,[0,0,0]],[1744913779,[3,3,0]],[1744913780,[3,3,0]],[1744913781,[0,0,0]],[1744913782,[3,3,0]],[1744913783,[0,0,0]],[1744913784,[0,0,0]],[1744913785,[0,0,0]],[1744913786,[0,0,0]],[1744913787,[0,0,0]],[1744913788,[3,3,0]],[1744913789,[2,2,0]],[1744913790,[1,1,0]],[1744913791,[0,0,0]],[1744913792,[3,3,0]],[1744913793,[0,0,0]],[1744913794,[0,0,0]],[1744913795,[0,0,0]],[1744913796,[0,0,0]],[1744913797,[0,0,0]],[1744913798,[0,0,0]],[1744913799,[0,0,0]],[1744913800,[0,0,0]],[1744913801,[0,0,0]],[1744913802,[0,0,0]],[1744913803,[0,0,0]],[1744913804,[0,0,0]],[1744913805,[0,0,0]],[1744913806,[0,0,0]],[1744913807,[0,0,0]],[1744913808,[0,0,0]],[1744913809,[0,0,0]],[1744913810,[0,0,0]],[1744913811,[0,0,0]],[1744913812,[0,0,0]],[1744913813,[0,0,0]],[1744913814,[0,0,0]],[1744913815,[0,0,0]],[1744913816,[0,0,0]],[1744913817,[0,0,0]],[1744913818,[0,0,0]],[1744913819,[0,0,0]],[1744913820,[0,0,0]],[1744913821,[0,0,0]],[1744913822,[0,0,0]],[1744913823,[0,0,0]],[1744913824,[0,0,0]],[1744913825,[0,0,0]],[1744913826,[0,0,0]],[1744913827,[0,0,0]],[1744913828,[0,0,0]],[1744913829,[0,0,0]],[1744913830,[0,0,0]],[1744913831,[0,0,0]],[1744913832,[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([[1744913729,[0,0,0]],[1744913730,[1,1,0]],[1744913731,[12,12,0]],[1744913732,[57,57,0]],[1744913733,[141,141,0]],[1744913734,[9,9,0]],[1744913735,[169,169,0]],[1744913736,[4257,153,4104]],[1744913737,[4479,757,3722]],[1744913738,[3102,1071,2031]],[1744913739,[3281,646,2635]],[1744913740,[2883,1172,1711]],[1744913741,[1823,375,1448]],[1744913742,[283,230,53]],[1744913743,[322,322,0]],[1744913744,[444,444,0]],[1744913745,[578,577,1]],[1744913746,[485,484,1]],[1744913747,[308,308,0]],[1744913748,[138,138,0]],[1744913749,[179,125,54]],[1744913750,[219,121,98]],[1744913751,[154,117,37]],[1744913752,[139,102,37]],[1744913753,[164,164,0]],[1744913754,[167,166,1]],[1744913755,[292,257,35]],[1744913756,[248,240,8]],[1744913757,[199,195,4]],[1744913758,[233,225,8]],[1744913759,[183,160,23]],[1744913760,[244,179,65]],[1744913761,[366,203,163]],[1744913762,[252,132,120]],[1744913763,[298,212,86]],[1744913764,[302,197,105]],[1744913765,[366,191,175]],[1744913766,[179,157,22]],[1744913767,[213,177,36]],[1744913768,[144,127,17]],[1744913769,[142,125,17]],[1744913770,[120,75,45]],[1744913771,[853,76,777]],[1744913772,[3018,78,2940]],[1744913773,[2970,97,2873]],[1744913774,[2815,73,2742]],[1744913775,[750,69,681]],[1744913776,[125,67,58]],[1744913777,[89,60,29]],[1744913778,[73,54,19]],[1744913779,[69,60,9]],[1744913780,[90,65,25]],[1744913781,[95,50,45]],[1744913782,[114,61,53]],[1744913783,[72,59,13]],[1744913784,[66,52,14]],[1744913785,[111,53,58]],[1744913786,[103,52,51]],[1744913787,[52,40,12]],[1744913788,[68,50,18]],[1744913789,[71,57,14]],[1744913790,[51,43,8]],[1744913791,[93,75,18]],[1744913792,[64,46,18]],[1744913793,[72,45,27]],[1744913794,[77,63,14]],[1744913795,[68,61,7]],[1744913796,[78,70,8]],[1744913797,[260,106,154]],[1744913798,[307,92,215]],[1744913799,[232,121,111]],[1744913800,[243,105,138]],[1744913801,[108,74,34]],[1744913802,[57,45,12]],[1744913803,[35,34,1]],[1744913804,[28,28,0]],[1744913805,[41,37,4]],[1744913806,[21,17,4]],[1744913807,[27,18,9]],[1744913808,[27,19,8]],[1744913809,[9,8,1]],[1744913810,[23,21,2]],[1744913811,[22,18,4]],[1744913812,[15,11,4]],[1744913813,[18,9,9]],[1744913814,[7,2,5]],[1744913815,[14,2,12]],[1744913816,[1,0,1]],[1744913817,[7,3,4]],[1744913818,[2,2,0]],[1744913819,[2,1,1]],[1744913820,[1,1,0]],[1744913821,[5,3,2]],[1744913822,[0,0,0]],[1744913823,[0,0,0]],[1744913824,[1,0,1]],[1744913825,[1,0,1]],[1744913826,[0,0,0]],[1744913827,[1,0,1]],[1744913828,[1,0,1]],[1744913829,[1,1,0]],[1744913830,[0,0,0]],[1744913831,[0,0,0]],[1744913832,[1,0,1]]]);
- 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: 13067.0, color: '#68b65c'},{name: 'KO', y: 28133.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
- });
- });
- </script>
- </div>
- </body>
- </html>
|