Runtime supervision

The Runtime section displays real-time information while the test is running.

Starting the Test

NeoLoad provides two test modes, normal and debug.

In normal mode, the test starts with all the system's resources used to generate the virtual users. Click on the "Start" button to start a test in normal mode.

Debug mode allows you to validate the various virtual user profiles defined in the scenario. To validate a test scenario in debug mode, use the following procedure:

  1. Set the level of information NeoLoad should retrieve in the scenario's advanced settings.

  2. Click on "Debug" to start the test in debug mode.

  3. At the end of the test, the "Debug" tab in the "Results" section allows you to validate the virtual user runtimes.

[Warning]Warning

Launching a scenario in debug mode can severely hamper performance, especially when too many virtual users are started on a single load generator.

To carry out a large-scale test, we recommend you use several load generators with lighter loads.

When you click on either of the buttons, a new window opens in which you may add a description for the test to be launched. This description will be inserted in the test results and will serve to identify the purpose of the test.

This window also features a check box that gives you the option of updating the cache. This check box is enabled where appropriate, that is to say only if a virtual user has been configured with the cache management set to "Returning user" mode. If this box is checked at the start of the test, a virtual user is launched in order to retrieve the cache information.

The test then starts and its progress can be followed in real time.

Stopping the Test

A running test may be stopped by clicking on the "Stop" button in the toolbar. The test is halted in 6 steps:

  • Each load generator stops running its virtual users.

  • Post monitoring: NeoLoad collects the performance counters for the duration defined.

  • Collection of runtime information in debug mode for the virtual users concerned.

  • Shutting down of the load generators.

  • Calculation of the test statistics: this step may take several minutes, depending on the test duration. The progress bar shows the progress of the calculations. This step may be halted manually by clicking the "Stop" button again. Any statistics that could not be calculated due to this interruption will have a value of -1. All other statistics will be correct.

  • Generation of the results summary: the controller reads the statistics and generates the summary.

Once these steps have been completed, the Results screen is displayed.

Runtime Overview

The "Runtime overview" tab displays the following statistics:

NameDescription
Scenario nameName of the scenario currently running
Start timeScenario start date
Elapsed timeTime elapsed since test started
Total hitsTotal number of hits since test started
Total throughputTotal number of megabytes received from server
Total errorsTotal number of errors since test started
Total alertsTotal number of alerts since test started
Total users launchedTotal number of virtual users launched since test started, including those currently running.
Average response time (requests)Average response time for HTTP requests since test started
Average response time (pages)Average response time for web pages since test started
Average hits/sec.Average hits/sec. since test started
Average throughputAverage throughput since test started
Current response time (requests)Average request response time for HTTP requests over the last second
Current response time (pages)Average request response time for web pages over the last second
Current hits/sec.Average hits/sec. for HTTP requests over the last second
Current throughputAverage throughput over the last second
Current users countNumber of virtual users currently running

Graphs

The main statistics are plotted in real time: number of virtual users currently running, error rate (errors/sec.), number of alerts, hits/sec. and average request response time.

Load generators

Monitors the load generators' activity:

  • Host - Machine running the load generator.

  • Virtual Users - Number of virtual users currently being run by that load generator.

  • Hit Rate - Average hit rate generated by that load generator.

  • Errors - Current error rate (number of errors per second).

  • CPU Load - CPU load for the machine hosting the load generator.

  • Memory Used - Memory used, expressed as a percentage of the memory allocated to the load generator program (the program's default memory allocation is 384Mb).

  • Throughput - Throughput in Megabits per second for the network interface used on the load generator.

If the CPU Load or Memory Used figure regularly exceeds 90%, this indicates that the load generator is overloaded. Run the test with fewer virtual users or a longer think time, or use additional load generators.

Real-Time Graphs

Statistics and the monitors set on the servers can be plotted on graphs during the test runtime. When the test is first run, NeoLoad creates default graphs. These can be modified during the test, or new graphs can be created. When subsequent tests are run, NeoLoad restores the settings of the graphs used in the previous test.

The legend panel displays the legend for the selected graph.

[Note]Note

Depending on the monitor value sampling interval, there may be a delay before the curves are displayed on the graph (30 seconds using the default parameters).

The statistics can be accessed in the "Repository" tab and monitors in the "Monitors" tab.

The available statistics are:

  • Minimum time - Minimum response time over the entire test.

  • Average time - Average response time over the entire test.

  • Maximum time - Maximum response time over the entire test.

  • Hit rate - Number of hits.

  • Minimum TTFB - Minimum time to first byte.

  • Average TTFB - Average time to first byte.

  • Maximum TTFB - Maximum time to first byte.

  • Errors - Number of hits flagged as errors.

Monitors for general statistics are available for plotting by default: number of virtual users, number of pages per second and their response times, average test throughput, number of alerts etc. Statistics for CPU and memory usage and throughput, in percentage, are also available for each load generator.

Filtering by load generator, population or virtual user

Filtering by a specific virtual user displays only that virtual user's web pages and actions (containers, loops etc..).

Likewise, filtering by a specific population displays only that population's virtual users.

Likewise, filtering by a specific load generator displays only that load generator's populations and virtual users. In that case, the statistics displayed are the one get by the selected load generator.

[Note]Note

The load generator filter is disabled by default. It can be enabled in the project's preferences, section "Runtime parameters". It will be taken in account for the next test. See the section called “Statistics”.

Working with graphs

Graphs can be used in the same way as for the Runtime and Results views. See the section called “Working with Graphs”.

Graph features

The graphs' features are the same as those for the Runtime and Results views. See the section called “Graph Features”.

Restoring default graphs

Use the Restore button in the toolbar to delete all the current graphs and restore the default graphs.

Plotting interval

The graph curves are plotted using a plotting interval (time interval between two points on a same curve) which is separate from the monitoring interval.

For example, with the default plotting interval of 15 seconds and a monitoring interval of 5 seconds, NeoLoad will use the average of the 3 recorded monitor values to produce the point on the curve.

A long plotting interval produces a more readable curve, whereas a short plotting interval produces a more accurate curve.

Procedure 8.3. Changing the plotting interval

  1. Go to the "Edit / Preferences" menu item.

  2. Select the "Graphs" section.

  3. Modify the settings in the "Runtime Graphs" section.

Alerts

The icon indicates a performance counter for which one or more alert thresholds have been set.

Current and past alerts are shown by an extra notification against the performance counter's icon: for a warning alert, for a critical alert.

Alerts are also displayed on graphs as yellow and red zones. The alert thresholds are only shown for the graph curve selected in the legend bar.

To hide or show the alerts and thresholds:

  • Right-click, then select "Show alert zones" or "Show thresholds".

You may display a tooltip for the alerts and thresholds:

  • Hover the mouse pointer over the alert zone or threshold.

Real-Time Errors

Error details may be obtained while the test is running. Click on the "Refresh" button to display the latest error occurrences.

General error information

Select an error to obtain the following information:

  • Time - Time between test start and occurrence of error.

  • Code - Error code: the HTTP error code as defined by the HTTP protocol or the NeoLoad error code.

  • Duration - Duration of the failed request.

  • Size - Size of the server response content in bytes.

  • Page - Link to the definition of the page containing the request with the error.

  • Load Generator - Name of the load generator that played the request containing the error.

  • Population - Population within which the request containing the error originated.

  • Virtual User - Virtual user within which the request containing the error originated.

  • Request - Link to the definition of the request containing the error.

Selected error details

Request

Displays details of the HTTP request sent to the server. Check your form parameter values if need be.

Server response

Displays the server response. If the server could not be contacted, this contains an error message generated by NeoLoad.

Assertions

Displays the assertion results (validations) for the response. Empty if the assertion is validated.

Previous request

Displays details of the previous request (determined by the referrer) to help find the root cause of the current error. Indeed, an anomaly or error on a page may cause the following page to fail.

Real-Time Alerts

Alert details may be obtained while the test is running. Click on the "Refresh" button to display the latest alert occurrences.

Alert Table

  • Time. Alert start and end time, relative to the test start time.

  • Severity. Alert severity level.

  • Name. Alert name. The name comprises the corresponding performance counter's name plus a text description of the alert threshold.

Alert details

Select an alert to obtain the following details:

  • Monitored MachineName of the monitored machine that triggered the alert.

  • Monitor. Name of the monitor that triggered the alert.

  • Duration. Alert duration.

  • Description. Alert description.

  • Delay triggerDelay trigger for the alert's threshold.

Alert graphs

When an alert is selected in the table, the graph displays all the alerts relating to the same performance counter: a red zone for critical alerts and a yellow zone for warning alerts. The zone corresponding to the selected alert is shown in a slightly darker color.

The alert threshold values are represented by a horizontal dotted line.

[Tip]Tip

Click on an alert zone to select the corresponding entry in the table.

Graph Options

Check the following boxes to display the corresponding elements:

  • User Load. Displays the user load.

  • Critical Alerts. Displays the thresholds and zones indicating critical-level alerts.

  • Warning Alerts. Displays the thresholds and zones indicating warning-level alerts.

Viewing Virtual Users in Real Time

During the test, the virtual users running may be viewed in real time.

Virtual user information

The following information is available for each virtual user currently running:

  • Date - Date of instance's start in relation to start of the test.

  • Load Generator - Name of the load generator running the instance.

  • User Type - The user type for the instance.

  • Instance - The instance number for the virtual user.

  • Current Action - Name of the container the instance is currently running. If the virtual user does not contain any containers, the virtual user's name is displayed.

The virtual users displayed may be filtered by:

  • Number: by default, only the last hundred users currently running are displayed.

  • Population : "All" is selected by default.

Virtual user run monitoring

A particular virtual user's run can be monitored using the validation window.

Procedure 8.4. Monitoring a virtual user's run

  1. Click the "Monitor virtual user" button, or use the pop-up menu, or double-click on the desired virtual user.

  2. The virtual user monitoring window appears. The real-time monitoring will start at the next page played by that virtual user. Therefore, you may have to wait until the first monitoring information displays.

[Note]Note

Only one virtual user may be monitored at a time.

Virtual user monitoring may take a little time to display as the virtual user may be waiting out a think time on an action, a delay, container pacing, or it may be waiting at a rendezvous.

[Warning]Warning

The HTML rendering of pages run by the virtual user may be incomplete in some cases. This is because certain application resources (e.g. images, CSS, JavaScript) may have been retrieved from the previous pages before the viewing window was opened, making them unavailable for the HTML rendering.