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-17 18:17:18 GMT</span>
- </span>
- <span class="simulation-information-item">
- <span class="simulation-information-label">Duration: </span>
- <span>1m 46s </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">14506</td>
- <td class="value error-col-3 total ko">52.52%</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">1</span></td>
- <td class="value error-col-2 total ko">2742</td>
- <td class="value error-col-3 total ko">9.93%</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">2674</td>
- <td class="value error-col-3 total ko">9.68%</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">2641</td>
- <td class="value error-col-3 total ko">9.56%</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">4</span></td>
- <td class="value error-col-2 total ko">2628</td>
- <td class="value error-col-3 total ko">9.51%</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">1878</td>
- <td class="value error-col-3 total ko">6.8%</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">6</span></td>
- <td class="value error-col-2 total ko">126</td>
- <td class="value error-col-3 total ko">0.46%</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">114</td>
- <td class="value error-col-3 total ko">0.41%</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">8</span></td>
- <td class="value error-col-2 total ko">113</td>
- <td class="value error-col-3 total ko">0.41%</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">9</span></td>
- <td class="value error-col-2 total ko">99</td>
- <td class="value error-col-3 total ko">0.36%</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">99</td>
- <td class="value error-col-3 total ko">0.36%</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: [
- [1744913838000,2088],[1744913839000,5438],[1744913840000,8737],[1744913841000,14162],[1744913842000,15964],[1744913843000,17814],[1744913844000,23172],[1744913845000,24508],[1744913846000,25000],[1744913847000,25000],[1744913848000,23752],[1744913849000,20564],[1744913850000,17960],[1744913851000,16656],[1744913852000,14509],[1744913853000,13802],[1744913854000,12995],[1744913855000,12597],[1744913856000,12363],[1744913857000,12255],[1744913858000,12173],[1744913859000,11833],[1744913860000,11666],[1744913861000,11461],[1744913862000,10634],[1744913863000,10561],[1744913864000,10290],[1744913865000,9597],[1744913866000,9542],[1744913867000,9513],[1744913868000,9420],[1744913869000,9406],[1744913870000,9305],[1744913871000,9119],[1744913872000,8529],[1744913873000,8197],[1744913874000,7871],[1744913875000,6979],[1744913876000,6699],[1744913877000,6664],[1744913878000,6596],[1744913879000,6544],[1744913880000,6498],[1744913881000,6346],[1744913882000,5196],[1744913883000,3658],[1744913884000,3270],[1744913885000,2209],[1744913886000,1983],[1744913887000,1960],[1744913888000,1930],[1744913889000,1894],[1744913890000,1859],[1744913891000,1811],[1744913892000,1646],[1744913893000,1557],[1744913894000,1422],[1744913895000,1376],[1744913896000,1340],[1744913897000,1315],[1744913898000,1292],[1744913899000,1261],[1744913900000,1227],[1744913901000,1193],[1744913902000,1142],[1744913903000,1081],[1744913904000,993],[1744913905000,903],[1744913906000,824],[1744913907000,773],[1744913908000,703],[1744913909000,649],[1744913910000,506],[1744913911000,444],[1744913912000,384],[1744913913000,247],[1744913914000,90],[1744913915000,68],[1744913916000,62],[1744913917000,46],[1744913918000,32],[1744913919000,30],[1744913920000,25],[1744913921000,22],[1744913922000,16],[1744913923000,15],[1744913924000,11],[1744913925000,10],[1744913926000,7],[1744913927000,6],[1744913928000,5],[1744913929000,4],[1744913930000,4],[1744913931000,4],[1744913932000,4],[1744913933000,4],[1744913934000,4],[1744913935000,4],[1744913936000,4],[1744913937000,4],[1744913938000,4],[1744913939000,4],[1744913940000,3],[1744913941000,2],[1744913942000,2],[1744913943000,2],[1744913944000,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', '1501', '2101', '2701', '3301', '3902', '4502', '5102', '5702', '6303', '6903', '7503', '8104', '8704', '9304', '9904', '10505', '11105', '11705', '12305', '12906', '13506', '14106', '14706', '15307', '15907', '16507', '17107', '17708', '18308', '18908', '19508', '20109', '20709', '21309', '21909', '22510', '23110', '23710', '24311', '24911', '25511', '26111', '26712', '27312', '27912', '28512', '29113', '29713', '30313', '30913', '31514', '32114', '32714', '33314', '33915', '34515', '35115', '35715', '36316', '36916', '37516', '38117', '38717', '39317', '39917', '40518', '41118', '41718', '42318', '42919', '43519', '44119', '44719', '45320', '45920', '46520', '47120', '47721', '48321', '48921', '49521', '50122', '50722', '51322', '51922', '52523', '53123', '53723', '54324', '54924', '55524', '56124', '56725', '57325', '57925', '58525', '59126', '59726'],
- 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.79,1.24,1.58,1.8,1.43,1.03,1.0,0.94,0.3,0.44,0.4,0.37,0.71,0.25,0.34,0.29,0.65,1.85,0.49,0.54,1.03,0.19,0.58,3.34,0.38,0.22,0.23,0.25,0.22,0.23,0.25,0.17,0.18,0.16,0.15,0.16,0.2,0.25,0.22,0.22,0.25,0.21,0.18,0.17,0.17,0.13,0.11,0.14,0.18,0.11,0.13,0.15,0.13,0.13,0.13,0.14,0.13,0.16,0.13,0.13,0.14,0.12,0.12,0.09,0.1,0.1,0.07,0.08,0.06,0.07,0.06,0.06,0.05,0.03,0.04,0.02,0.04,0.05,0.02,0.03,0.03,0.05,0.04,0.05,0.03,0.06,0.06,0.03,0.04,0.05,0.05,0.04,0.03,0.03,0.03,0.01,0.02,0.04,0.05,0.03
- ],
- tooltip: { yDecimals: 0, ySuffix: 'ms' }
- },
- {
- type: 'column',
- color: '#f15b4f',
- name: 'KO',
- data: [
- 3.13,2.59,2.39,0.32,1.46,4.11,1.81,2.64,3.44,0.15,3.93,3.21,0.32,0.86,1.02,0.39,0.57,1.53,1.31,1.62,1.44,1.25,0.77,0.78,0.05,0.01,0.06,0.64,0.14,0.03,0.01,1.17,0.14,0.7,0.84,0.66,0.37,0.76,0.6,0.4,0.05,0.07,0.05,0.22,0.03,0.0,0.02,0.05,0.17,0.04,1.6,1.33,0.92,0.85,0.92,0.87,0.53,0.0,0.04,0.07,0.0,0.0,0.02,0.0,0.12,0.05,0.86,2.74,1.78,2.38,1.7,1.64,1.01,0.1,0.0,0.0,0.01,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.13
- ],
- tooltip: { yDecimals: 0, ySuffix: 'ms' }
- }
- ]
- });
- responsetimeDistributionChart.setTitle({
- text: '<span class="chart_title">Response Time Distribution</span>',
- useHTML: true
- });
- var responsetimepercentilesovertimeokPercentiles = unpack([[1744913838,[1412,3016,7418,8693,9236,10475,10554,10602,11636,14355]],[1744913839,[6732,10353,10957,14028,14120,14163,14201,21997,34794,44375]],[1744913840,[896,12247,13912,14218,14468,15984,23220,30891,41087,57239]],[1744913841,[1934,4244,19574,29099,31767,33754,36007,38994,44355,58332]],[1744913842,[9173,20596,26819,35759,36291,37288,38573,42073,46112,47563]],[1744913843,[3441,4239,13783,24361,32918,34017,35018,37462,43836,53506]],[1744913844,[11760,17201,23421,32078,32771,33386,34496,36963,46335,46335]],[1744913845,[4028,5561,5614,16727,17746,19629,23595,25324,40414,40414]],[1744913846,[3011,4010,4378,4642,4654,4698,4758,14562,22326,29809]],[1744913847,[1988,3426,3871,5778,5780,5786,5831,6027,19539,26881]],[1744913848,[1955,1964,2036,2779,2787,2895,2922,2931,2932,2932]],[1744913849,[1117,1721,2502,7019,11038,17891,24493,36898,56561,59754]],[1744913850,[510,1232,2336,16288,19135,21262,33298,40758,56703,59297]],[1744913851,[432,1785,1995,16083,22609,26755,38070,52686,58856,59592]],[1744913852,[221,1243,4221,17425,21506,25362,39750,54110,59259,59767]],[1744913853,[986,3527,11065,24975,33123,41948,50994,53955,58865,59762]],[1744913854,[289,2214,3482,13511,17432,23043,27887,49797,56358,59839]],[1744913855,[138,1033,5460,18084,22224,23850,47230,54199,57381,57381]],[1744913856,[308,1092,4278,10150,12158,16345,21506,30746,58158,58158]],[1744913857,[192,2006,7599,19020,24394,28988,37559,47823,59570,59653]],[1744913858,[356,1987,7127,20913,25160,29864,42408,49003,58628,59331]],[1744913859,[456,2495,7838,24006,27862,40008,44207,49333,54411,59100]],[1744913860,[318,2211,12325,26603,31156,40557,46511,53951,58163,59734]],[1744913861,[308,2334,13846,32275,36838,40752,43835,47159,52220,55064]],[1744913862,[276,2670,23786,38096,41549,43305,45699,49143,58356,59467]],[1744913863,[285,2079,13616,37147,38829,40655,42826,48884,53786,59875]],[1744913864,[297,1839,14513,34913,37979,39494,40880,46632,52693,52973]],[1744913865,[326,1157,6981,30684,34481,36756,38624,41507,46548,49592]],[1744913866,[287,1226,11929,28613,33860,36936,39739,41995,49978,55158]],[1744913867,[166,1164,8613,21298,25763,28479,34168,39414,44997,44997]],[1744913868,[193,1688,9237,15272,15891,26306,36010,36970,46796,46796]],[1744913869,[162,1272,4455,22579,27394,30256,33100,35867,45173,45173]],[1744913870,[179,1224,16820,30784,32623,34331,37310,41456,52951,53009]],[1744913871,[429,1303,15403,29097,29835,32330,33381,36141,55287,55287]],[1744913872,[302,1931,18345,29504,31491,32428,35987,39053,44132,44132]],[1744913873,[279,1492,13895,28288,29104,32032,35492,37206,41118,46201]],[1744913874,[175,1137,20586,29237,30214,31945,35816,38977,43485,44523]],[1744913875,[182,1018,16000,28902,29525,31586,33121,36658,39602,39602]],[1744913876,[182,738,13531,26030,27269,28960,29458,34958,45726,45726]],[1744913877,[178,1144,12587,26468,27942,29042,30699,33415,44535,48178]],[1744913878,[287,1022,5645,14547,18304,22919,26366,27430,39388,39388]],[1744913879,[340,3036,12282,25071,26494,27529,29322,30614,33470,33470]],[1744913880,[470,6147,18540,24269,26894,27323,28490,28633,31896,31896]],[1744913881,[433,3929,13817,21821,23336,26471,27298,29930,30832,30832]],[1744913882,[586,2347,11296,21589,23045,23263,25885,28956,43357,43357]],[1744913883,[437,2022,10024,18415,20177,20794,23011,27330,28049,28049]],[1744913884,[596,2163,11404,20120,20352,21096,21727,27221,30337,30337]],[1744913885,[472,1396,9839,14286,14286,14286,22685,22685,22685,22685]],[1744913886,[1187,3920,10608,16249,22379,22379,29143,37361,37361,37361]],[1744913887,[593,8059,14605,15261,15261,20056,20056,20056,20056,20056]],[1744913888,[1097,5931,17280,22663,22663,29264,29264,29264,29264,29264]],[1744913889,[10550,10550,14694,15393,15393,15393,15393,15393,15393,15393]],[1744913890,[11570,11570,13253,14291,14291,14291,14291,14291,14291,14291]],[1744913891,[1311,1311,3730,12555,12555,12555,12555,12555,12555,12555]],[1744913892,null],[1744913893,null],[1744913894,null],[1744913895,null],[1744913896,[3088,3088,3998,8794,8794,8794,8794,8794,8794,8794]],[1744913897,[1025,1025,7177,7928,7928,7928,7928,7928,7928,7928]],[1744913898,[1007,1007,3183,6116,6116,6116,6116,6116,6116,6116]],[1744913899,null],[1744913900,[2785,2785,3082,3323,3323,3323,3323,3323,3323,3323]],[1744913901,null],[1744913902,null],[1744913903,null],[1744913904,null],[1744913905,null],[1744913906,null],[1744913907,null],[1744913908,null],[1744913909,null],[1744913910,null],[1744913911,null],[1744913912,null],[1744913913,null],[1744913914,null],[1744913915,null],[1744913916,null],[1744913917,null],[1744913918,null],[1744913919,null],[1744913920,null],[1744913921,null],[1744913922,null],[1744913923,null],[1744913924,null],[1744913925,null],[1744913926,null],[1744913927,null],[1744913928,null],[1744913929,null],[1744913930,null],[1744913931,null],[1744913932,null],[1744913933,null],[1744913934,null],[1744913935,null],[1744913936,null],[1744913937,null],[1744913938,null],[1744913939,null],[1744913940,null],[1744913941,null],[1744913942,null],[1744913943,null],[1744913944,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([[1744913838,[776,776,0]],[1744913839,[2710,1764,946]],[1744913840,[4797,1742,3055]],[1744913841,[4670,636,4034]],[1744913842,[3425,157,3268]],[1744913843,[2201,170,2031]],[1744913844,[1771,51,1720]],[1744913845,[4505,70,4435]],[1744913846,[1659,224,1435]],[1744913847,[667,150,517]],[1744913848,[219,73,146]],[1744913849,[2343,748,1595]],[1744913850,[678,268,410]],[1744913851,[963,373,590]],[1744913852,[612,199,413]],[1744913853,[2757,1205,1552]],[1744913854,[1701,575,1126]],[1744913855,[96,58,38]],[1744913856,[66,61,5]],[1744913857,[192,152,40]],[1744913858,[195,162,33]],[1744913859,[177,134,43]],[1744913860,[159,127,32]],[1744913861,[168,147,21]],[1744913862,[132,126,6]],[1744913863,[147,138,9]],[1744913864,[171,153,18]],[1744913865,[153,129,24]],[1744913866,[156,141,15]],[1744913867,[99,82,17]],[1744913868,[68,66,2]],[1744913869,[55,49,6]],[1744913870,[138,129,9]],[1744913871,[75,72,3]],[1744913872,[75,74,1]],[1744913873,[120,118,2]],[1744913874,[123,122,1]],[1744913875,[99,95,4]],[1744913876,[66,65,1]],[1744913877,[195,192,3]],[1744913878,[90,85,5]],[1744913879,[78,75,3]],[1744913880,[51,50,1]],[1744913881,[60,58,2]],[1744913882,[42,42,0]],[1744913883,[30,28,2]],[1744913884,[33,33,0]],[1744913885,[9,8,1]],[1744913886,[15,15,0]],[1744913887,[6,6,0]],[1744913888,[6,6,0]],[1744913889,[3,3,0]],[1744913890,[3,3,0]],[1744913891,[3,3,0]],[1744913892,[0,0,0]],[1744913893,[0,0,0]],[1744913894,[0,0,0]],[1744913895,[0,0,0]],[1744913896,[3,3,0]],[1744913897,[3,3,0]],[1744913898,[3,3,0]],[1744913899,[0,0,0]],[1744913900,[3,3,0]],[1744913901,[0,0,0]],[1744913902,[0,0,0]],[1744913903,[0,0,0]],[1744913904,[0,0,0]],[1744913905,[0,0,0]],[1744913906,[0,0,0]],[1744913907,[0,0,0]],[1744913908,[0,0,0]],[1744913909,[0,0,0]],[1744913910,[0,0,0]],[1744913911,[0,0,0]],[1744913912,[0,0,0]],[1744913913,[0,0,0]],[1744913914,[0,0,0]],[1744913915,[0,0,0]],[1744913916,[0,0,0]],[1744913917,[0,0,0]],[1744913918,[0,0,0]],[1744913919,[0,0,0]],[1744913920,[0,0,0]],[1744913921,[0,0,0]],[1744913922,[0,0,0]],[1744913923,[0,0,0]],[1744913924,[0,0,0]],[1744913925,[0,0,0]],[1744913926,[0,0,0]],[1744913927,[0,0,0]],[1744913928,[0,0,0]],[1744913929,[0,0,0]],[1744913930,[0,0,0]],[1744913931,[0,0,0]],[1744913932,[0,0,0]],[1744913933,[0,0,0]],[1744913934,[0,0,0]],[1744913935,[0,0,0]],[1744913936,[0,0,0]],[1744913937,[0,0,0]],[1744913938,[0,0,0]],[1744913939,[0,0,0]],[1744913940,[0,0,0]],[1744913941,[0,0,0]],[1744913942,[0,0,0]],[1744913943,[0,0,0]],[1744913944,[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([[1744913838,[0,0,0]],[1744913839,[2,2,0]],[1744913840,[75,75,0]],[1744913841,[177,177,0]],[1744913842,[0,0,0]],[1744913843,[157,157,0]],[1744913844,[55,55,0]],[1744913845,[87,87,0]],[1744913846,[244,244,0]],[1744913847,[510,266,244]],[1744913848,[2951,73,2878]],[1744913849,[2741,866,1875]],[1744913850,[4322,571,3751]],[1744913851,[2005,730,1275]],[1744913852,[2761,419,2342]],[1744913853,[2610,1260,1350]],[1744913854,[1924,624,1300]],[1744913855,[614,240,374]],[1744913856,[494,494,0]],[1744913857,[267,267,0]],[1744913858,[226,185,41]],[1744913859,[596,160,436]],[1744913860,[424,256,168]],[1744913861,[752,157,595]],[1744913862,[540,142,398]],[1744913863,[268,148,120]],[1744913864,[905,171,734]],[1744913865,[642,160,482]],[1744913866,[210,206,4]],[1744913867,[183,165,18]],[1744913868,[184,125,59]],[1744913869,[226,175,51]],[1744913870,[221,119,102]],[1744913871,[549,143,406]],[1744913872,[804,116,688]],[1744913873,[231,114,117]],[1744913874,[771,149,622]],[1744913875,[1025,145,880]],[1744913876,[149,139,10]],[1744913877,[199,180,19]],[1744913878,[187,144,43]],[1744913879,[139,106,33]],[1744913880,[169,96,73]],[1744913881,[845,72,773]],[1744913882,[1900,66,1834]],[1744913883,[634,76,558]],[1744913884,[771,75,696]],[1744913885,[932,62,870]],[1744913886,[81,74,7]],[1744913887,[72,58,14]],[1744913888,[70,54,16]],[1744913889,[71,49,22]],[1744913890,[109,70,39]],[1744913891,[355,46,309]],[1744913892,[140,36,104]],[1744913893,[359,56,303]],[1744913894,[87,47,40]],[1744913895,[96,59,37]],[1744913896,[61,55,6]],[1744913897,[54,45,9]],[1744913898,[53,49,4]],[1744913899,[63,59,4]],[1744913900,[69,64,5]],[1744913901,[67,58,9]],[1744913902,[95,86,9]],[1744913903,[85,78,7]],[1744913904,[141,137,4]],[1744913905,[110,106,4]],[1744913906,[61,60,1]],[1744913907,[78,75,3]],[1744913908,[57,57,0]],[1744913909,[146,48,98]],[1744913910,[72,41,31]],[1744913911,[64,45,19]],[1744913912,[74,48,26]],[1744913913,[191,16,175]],[1744913914,[86,16,70]],[1744913915,[10,9,1]],[1744913916,[10,9,1]],[1744913917,[17,12,5]],[1744913918,[7,4,3]],[1744913919,[3,1,2]],[1744913920,[5,3,2]],[1744913921,[4,2,2]],[1744913922,[4,2,2]],[1744913923,[4,4,0]],[1744913924,[1,0,1]],[1744913925,[1,1,0]],[1744913926,[3,2,1]],[1744913927,[0,0,0]],[1744913928,[1,0,1]],[1744913929,[1,0,1]],[1744913930,[0,0,0]],[1744913931,[0,0,0]],[1744913932,[0,0,0]],[1744913933,[0,0,0]],[1744913934,[0,0,0]],[1744913935,[0,0,0]],[1744913936,[0,0,0]],[1744913937,[0,0,0]],[1744913938,[0,0,0]],[1744913939,[1,0,1]],[1744913940,[1,0,1]],[1744913941,[0,0,0]],[1744913942,[0,0,0]],[1744913943,[1,0,1]],[1744913944,[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: 12200.0, color: '#68b65c'},{name: 'KO', y: 27620.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>
|