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">
- ProductsPageSimulation
- </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-16 11:42:54 GMT</span>
- </span>
- <span class="simulation-information-item">
- <span class="simulation-information-label">Duration: </span>
- <span>2m 2s </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: Network is unreachable: getsockopt<span class="value" style="display:none">0</span></td>
- <td class="value error-col-2 total ko">14302</td>
- <td class="value error-col-3 total ko">49.85%</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">9243</td>
- <td class="value error-col-3 total ko">32.22%</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">1508</td>
- <td class="value error-col-3 total ko">5.26%</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">920</td>
- <td class="value error-col-3 total ko">3.21%</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">4</span></td>
- <td class="value error-col-2 total ko">894</td>
- <td class="value error-col-3 total ko">3.12%</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">5</span></td>
- <td class="value error-col-2 total ko">861</td>
- <td class="value error-col-3 total ko">3%</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">857</td>
- <td class="value error-col-3 total ko">2.99%</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">57</td>
- <td class="value error-col-3 total ko">0.2%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">j.n.UnknownHostException: ecomm.gatling.io<span class="value" style="display:none">8</span></td>
- <td class="value error-col-2 total ko">46</td>
- <td class="value error-col-3 total ko">0.16%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">Request timeout after 60000 ms<span class="value" style="display:none">9</span></td>
- <td class="value error-col-2 total ko">1</td>
- <td class="value error-col-3 total ko">0%</td>
- </tr>
- <tr>
- <td class="error-col-1 total ko">j.n.UnknownHostException: No such host is known (ecomm.gatling.io)<span class="value" style="display:none">10</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="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: 'Product Page Load Test Scenario',
- data: [
- [1744803775000,3526],[1744803776000,4521],[1744803777000,7649],[1744803778000,10209],[1744803779000,13812],[1744803780000,17971],[1744803781000,19907],[1744803782000,22307],[1744803783000,25000],[1744803784000,25000],[1744803785000,25000],[1744803786000,25000],[1744803787000,24973],[1744803788000,24820],[1744803789000,24709],[1744803790000,24331],[1744803791000,24228],[1744803792000,24050],[1744803793000,23475],[1744803794000,22814],[1744803795000,18918],[1744803796000,16716],[1744803797000,15520],[1744803798000,14602],[1744803799000,13587],[1744803800000,12375],[1744803801000,11019],[1744803802000,9915],[1744803803000,8560],[1744803804000,7820],[1744803805000,7276],[1744803806000,7093],[1744803807000,6958],[1744803808000,6780],[1744803809000,6552],[1744803810000,6335],[1744803811000,6008],[1744803812000,5810],[1744803813000,5625],[1744803814000,5431],[1744803815000,5265],[1744803816000,5092],[1744803817000,4943],[1744803818000,4805],[1744803819000,4709],[1744803820000,4608],[1744803821000,4553],[1744803822000,4500],[1744803823000,4423],[1744803824000,4388],[1744803825000,4332],[1744803826000,4257],[1744803827000,4205],[1744803828000,4128],[1744803829000,4091],[1744803830000,4058],[1744803831000,4033],[1744803832000,3999],[1744803833000,3984],[1744803834000,3961],[1744803835000,3944],[1744803836000,3435],[1744803837000,3316],[1744803838000,3198],[1744803839000,3116],[1744803840000,3045],[1744803841000,2969],[1744803842000,2849],[1744803843000,2787],[1744803844000,2685],[1744803845000,2380],[1744803846000,2216],[1744803847000,2091],[1744803848000,1999],[1744803849000,1720],[1744803850000,1599],[1744803851000,1532],[1744803852000,1449],[1744803853000,1403],[1744803854000,1319],[1744803855000,1276],[1744803856000,1242],[1744803857000,1194],[1744803858000,1153],[1744803859000,1119],[1744803860000,1079],[1744803861000,1041],[1744803862000,999],[1744803863000,964],[1744803864000,910],[1744803865000,866],[1744803866000,809],[1744803867000,763],[1744803868000,686],[1744803869000,610],[1744803870000,476],[1744803871000,423],[1744803872000,376],[1744803873000,337],[1744803874000,296],[1744803875000,256],[1744803876000,215],[1744803877000,184],[1744803878000,162],[1744803879000,136],[1744803880000,119],[1744803881000,98],[1744803882000,86],[1744803883000,73],[1744803884000,58],[1744803885000,40],[1744803886000,35],[1744803887000,21],[1744803888000,16],[1744803889000,12],[1744803890000,12],[1744803891000,8],[1744803892000,6],[1744803893000,5],[1744803894000,3],[1744803895000,1],[1744803896000,1],[1744803897000,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: ['500', '1500', '2500', '3499', '4499', '5499', '6499', '7499', '8499', '9499', '10498', '11498', '12498', '13498', '14498', '15498', '16498', '17497', '18497', '19497', '20497', '21497', '22497', '23496', '24496', '25496', '26496', '27496', '28496', '29496', '30495', '31495', '32495', '33495', '34495', '35495', '36495', '37494', '38494', '39494', '40494', '41494', '42494', '43493', '44493', '45493', '46493', '47493', '48493', '49493', '50492', '51492', '52492', '53492', '54492', '55492', '56492', '57491', '58491', '59491', '60491', '61491', '62491', '63490', '64490', '65490', '66490', '67490', '68490', '69490', '70489', '71489', '72489', '73489', '74489', '75489', '76489', '77488', '78488', '79488', '80488', '81488', '82488', '83487', '84487', '85487', '86487', '87487', '88487', '89487', '90486', '91486', '92486', '93486', '94486', '95486', '96486', '97485', '98485', '99485'],
- 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.35,0.36,0.79,0.56,0.32,0.7,0.7,0.12,0.77,1.19,0.45,0.45,0.84,0.74,0.38,0.34,0.35,0.35,0.25,0.17,0.18,0.19,0.15,0.16,0.14,0.19,0.24,0.22,0.39,0.41,0.4,0.37,0.29,0.26,0.3,0.32,0.24,0.24,0.25,0.27,0.24,0.23,0.22,0.24,0.17,0.22,0.24,0.19,0.17,0.21,0.19,0.21,0.17,0.19,0.17,0.17,0.16,0.14,0.17,0.16,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,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0
- ],
- tooltip: { yDecimals: 0, ySuffix: 'ms' }
- },
- {
- type: 'column',
- color: '#f15b4f',
- name: 'KO',
- data: [
- 0.16,0.0,0.01,0.0,0.52,0.41,0.77,0.21,0.85,0.28,1.16,4.64,8.84,2.27,2.84,3.39,6.86,5.3,3.5,3.54,3.17,4.33,4.22,1.66,1.51,0.92,0.45,0.77,0.68,0.76,0.81,0.55,0.56,0.39,0.45,0.51,0.45,0.52,0.18,0.2,0.18,0.19,0.05,0.1,0.07,0.34,0.19,0.09,0.1,0.05,0.07,0.03,0.02,0.05,0.01,0.0,0.0,0.0,0.01,0.0,9.88,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,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0
- ],
- 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,11101,12871,13751,17768,35334,51279,59505]],[1744803776,[5181,9295,12730,16719,18866,26739,35252,42056,52320,58924]],[1744803777,[1899,14488,17253,32719,33796,37316,41861,50917,58858,59107]],[1744803778,[2882,17265,30395,37150,38666,41110,44222,53848,57885,59073]],[1744803779,[2438,2910,30180,35315,37651,39762,42874,47599,54779,58829]],[1744803780,[3138,29620,33653,42255,44017,46453,49863,52569,57039,59223]],[1744803781,[2863,25928,30111,39808,42692,45604,49416,52620,57599,59430]],[1744803782,[2575,5917,26855,31219,33422,38256,40716,44314,54006,54111]],[1744803783,[4936,26762,30618,38756,43708,45430,50671,54556,59319,59319]],[1744803784,[2784,24196,29367,44290,47737,50057,54420,64072,64343,64343]],[1744803785,[4368,17177,29258,39557,42058,45421,51696,54007,66387,66387]],[1744803786,[7179,21367,30869,44933,44933,49345,49997,52820,52820,52820]],[1744803787,[16596,26699,27997,49834,49834,50316,54449,55393,55393,55393]],[1744803788,[5026,19345,36989,51057,51885,52156,54307,57951,71454,71454]],[1744803789,[8410,17920,27159,37065,38362,46420,49453,54446,55635,55635]],[1744803790,[16480,18307,28056,32954,34798,34798,50264,50264,50264,50264]],[1744803791,[11175,17164,29449,50718,55124,56134,57960,58513,59215,59215]],[1744803792,[3388,17550,26647,31050,31132,31132,51393,58629,58629,58629]],[1744803793,[3128,22994,29700,52079,52584,56079,56812,59360,59486,59486]],[1744803794,[14012,18644,28293,54201,55097,55958,56021,59756,59756,59756]],[1744803795,[11094,17469,24448,34141,38658,46782,47323,47765,50540,50540]],[1744803796,[13093,16405,23339,44808,50988,52186,54617,58434,58434,58434]],[1744803797,[11445,16105,33206,53249,54184,58646,59373,59879,59879,59879]],[1744803798,[6921,8881,12837,46406,46406,46406,54112,54112,54112,54112]],[1744803799,[7700,14240,40975,46930,50543,50543,53375,59146,59146,59146]],[1744803800,[4943,13512,54554,55349,55349,55349,58424,58424,58424,58424]],[1744803801,[5196,10797,23554,50350,56562,56688,57077,57401,57401,57401]],[1744803802,[4811,11132,22184,55774,55774,56209,56720,56807,56807,56807]],[1744803803,[3506,30149,50477,56861,57252,57269,58664,59320,59798,59798]],[1744803804,[2800,4836,9568,28771,43682,46939,54506,55065,57583,57583]],[1744803805,[1831,6320,16226,52820,52820,56515,58150,59586,59586,59586]],[1744803806,[554,2384,7762,22199,38086,39360,53455,59240,59412,59412]],[1744803807,[19,2875,6672,25627,37172,52064,56011,57611,58623,58623]],[1744803808,[371,2879,21473,49584,51105,53146,56199,58232,59548,59917]],[1744803809,[363,4823,24421,49485,52357,54893,57083,58234,59611,59972]],[1744803810,[306,10968,35104,49808,51479,53634,55556,57459,59141,59595]],[1744803811,[229,4500,25553,49039,51470,53487,55130,57149,59109,59492]],[1744803812,[453,6892,26718,47681,48628,50095,52277,54475,58790,58829]],[1744803813,[703,5843,21850,44973,47909,50179,52804,56409,59326,59862]],[1744803814,[317,4586,27086,46380,47481,50660,53563,58084,59091,59294]],[1744803815,[365,12333,38626,49860,51031,53417,54832,58470,59446,59516]],[1744803816,[665,11705,34875,44828,47118,49867,53684,56505,58068,58290]],[1744803817,[398,9033,35368,47960,48587,49460,53362,57185,59172,59498]],[1744803818,[532,12575,33535,45113,46672,48836,51926,56028,59591,59591]],[1744803819,[576,12864,36711,45213,45831,48164,55277,57860,59848,59848]],[1744803820,[730,17507,31849,42994,44909,45357,49224,53262,54869,54869]],[1744803821,[382,10991,30883,41715,43189,44391,47837,51438,59976,59976]],[1744803822,[378,8536,34738,43937,46745,50275,52823,54998,59764,59764]],[1744803823,[268,15140,34103,41365,42318,46460,48565,53046,57711,57711]],[1744803824,[427,15518,33671,41583,43885,45187,47542,52342,59619,59619]],[1744803825,[339,10947,31763,38329,38995,40191,41555,42674,59631,59631]],[1744803826,[1501,6246,27836,36032,37518,40915,41756,56392,59168,59168]],[1744803827,[554,5556,31494,39684,42237,43126,44050,46529,56923,56923]],[1744803828,[732,14320,31290,38607,39893,42293,47529,50242,59158,59158]],[1744803829,[2694,15992,29016,37197,37927,39659,41278,54348,56647,56647]],[1744803830,[1525,9833,25835,37184,38144,39785,40430,50573,56795,56795]],[1744803831,[1106,12098,21664,34127,34389,37299,40082,48660,59452,59452]],[1744803832,[1244,8927,15605,29528,30937,33307,34949,37715,46665,46665]],[1744803833,[487,8020,21037,32687,36027,40137,42821,55591,59981,59981]],[1744803834,[340,6396,21502,32224,33400,34518,35709,37837,56390,56390]],[1744803835,[1804,6839,25663,32450,32922,38585,45989,53439,57203,57203]],[1744803836,[939,4250,32146,43160,43160,43160,49299,49299,49299,49299]],[1744803837,[1627,2456,26307,31919,31919,32037,32037,32037,32037,32037]],[1744803838,[2372,2372,30069,30536,30536,30536,30536,30536,30536,30536]],[1744803839,[1835,1835,3805,6505,6505,6505,6505,6505,6505,6505]],[1744803840,null],[1744803841,null],[1744803842,[6939,6939,6939,6939,6939,6939,6939,6939,6939,6939]],[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,[2230,199,2031]],[1744803778,[2676,202,2474]],[1744803779,[2792,253,2539]],[1744803780,[3859,397,3462]],[1744803781,[3744,293,3451]],[1744803782,[3643,182,3461]],[1744803783,[2828,75,2753]],[1744803784,[1472,37,1435]],[1744803785,[1179,54,1125]],[1744803786,[344,16,328]],[1744803787,[325,16,309]],[1744803788,[560,23,537]],[1744803789,[775,40,735]],[1744803790,[222,10,212]],[1744803791,[219,25,194]],[1744803792,[207,14,193]],[1744803793,[234,31,203]],[1744803794,[153,20,133]],[1744803795,[84,21,63]],[1744803796,[81,17,64]],[1744803797,[99,20,79]],[1744803798,[48,8,40]],[1744803799,[45,15,30]],[1744803800,[30,8,22]],[1744803801,[63,20,43]],[1744803802,[48,16,32]],[1744803803,[51,21,30]],[1744803804,[63,21,42]],[1744803805,[36,16,20]],[1744803806,[60,35,25]],[1744803807,[90,56,34]],[1744803808,[204,128,76]],[1744803809,[492,302,190]],[1744803810,[354,226,128]],[1744803811,[240,157,83]],[1744803812,[195,144,51]],[1744803813,[171,120,51]],[1744803814,[159,115,44]],[1744803815,[168,106,62]],[1744803816,[174,116,58]],[1744803817,[135,108,27]],[1744803818,[117,80,37]],[1744803819,[108,78,30]],[1744803820,[81,58,23]],[1744803821,[114,79,35]],[1744803822,[69,55,14]],[1744803823,[87,62,25]],[1744803824,[87,62,25]],[1744803825,[75,62,13]],[1744803826,[72,54,18]],[1744803827,[81,65,16]],[1744803828,[57,53,4]],[1744803829,[36,32,4]],[1744803830,[63,58,5]],[1744803831,[48,41,7]],[1744803832,[63,61,2]],[1744803833,[36,35,1]],[1744803834,[45,38,7]],[1744803835,[30,22,8]],[1744803836,[21,7,14]],[1744803837,[21,6,15]],[1744803838,[9,3,6]],[1744803839,[9,3,6]],[1744803840,[0,0,0]],[1744803841,[0,0,0]],[1744803842,[3,1,2]],[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,[76,76,0]],[1744803780,[20,20,0]],[1744803781,[244,244,0]],[1744803782,[194,194,0]],[1744803783,[49,49,0]],[1744803784,[198,198,0]],[1744803785,[458,458,0]],[1744803786,[117,117,0]],[1744803787,[207,117,90]],[1744803788,[335,209,126]],[1744803789,[441,261,180]],[1744803790,[555,82,473]],[1744803791,[167,75,92]],[1744803792,[777,72,705]],[1744803793,[618,85,533]],[1744803794,[2655,54,2601]],[1744803795,[3796,29,3767]],[1744803796,[1643,37,1606]],[1744803797,[1105,34,1071]],[1744803798,[1254,21,1233]],[1744803799,[931,17,914]],[1744803800,[1871,12,1859]],[1744803801,[1358,24,1334]],[1744803802,[1869,19,1850]],[1744803803,[1258,23,1235]],[1744803804,[760,26,734]],[1744803805,[677,20,657]],[1744803806,[164,29,135]],[1744803807,[269,80,189]],[1744803808,[348,104,244]],[1744803809,[450,208,242]],[1744803810,[503,171,332]],[1744803811,[447,135,312]],[1744803812,[304,124,180]],[1744803813,[405,134,271]],[1744803814,[361,128,233]],[1744803815,[294,112,182]],[1744803816,[322,118,204]],[1744803817,[264,83,181]],[1744803818,[175,88,87]],[1744803819,[195,74,121]],[1744803820,[200,67,133]],[1744803821,[159,75,84]],[1744803822,[124,62,62]],[1744803823,[129,85,44]],[1744803824,[148,73,75]],[1744803825,[127,53,74]],[1744803826,[113,63,50]],[1744803827,[115,71,44]],[1744803828,[140,65,75]],[1744803829,[118,55,63]],[1744803830,[97,48,49]],[1744803831,[110,47,63]],[1744803832,[95,68,27]],[1744803833,[111,69,42]],[1744803834,[91,51,40]],[1744803835,[269,63,206]],[1744803836,[464,52,412]],[1744803837,[213,51,162]],[1744803838,[167,53,114]],[1744803839,[113,32,81]],[1744803840,[90,35,55]],[1744803841,[178,38,140]],[1744803842,[152,40,112]],[1744803843,[72,33,39]],[1744803844,[187,30,157]],[1744803845,[385,27,358]],[1744803846,[148,41,107]],[1744803847,[118,20,98]],[1744803848,[199,27,172]],[1744803849,[274,34,240]],[1744803850,[120,45,75]],[1744803851,[96,30,66]],[1744803852,[105,31,74]],[1744803853,[122,27,95]],[1744803854,[97,28,69]],[1744803855,[69,34,35]],[1744803856,[91,52,39]],[1744803857,[101,53,48]],[1744803858,[81,64,17]],[1744803859,[89,71,18]],[1744803860,[86,77,9]],[1744803861,[97,75,22]],[1744803862,[70,52,18]],[1744803863,[86,69,17]],[1744803864,[101,76,25]],[1744803865,[90,75,15]],[1744803866,[93,76,17]],[1744803867,[81,56,25]],[1744803868,[103,56,47]],[1744803869,[169,46,123]],[1744803870,[110,27,83]],[1744803871,[72,23,49]],[1744803872,[49,16,33]],[1744803873,[52,17,35]],[1744803874,[53,21,32]],[1744803875,[49,10,39]],[1744803876,[54,14,40]],[1744803877,[25,11,14]],[1744803878,[29,4,25]],[1744803879,[28,6,22]],[1744803880,[19,4,15]],[1744803881,[26,4,22]],[1744803882,[9,1,8]],[1744803883,[19,4,15]],[1744803884,[20,2,18]],[1744803885,[8,3,5]],[1744803886,[12,2,10]],[1744803887,[10,2,8]],[1744803888,[5,2,3]],[1744803889,[1,1,0]],[1744803890,[4,2,2]],[1744803891,[3,0,3]],[1744803892,[1,1,0]],[1744803893,[2,1,1]],[1744803894,[1,0,1]],[1744803895,[1,0,1]],[1744803896,[0,0,0]],[1744803897,[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: 6984.0, color: '#68b65c'},{name: 'KO', y: 28690.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>
|