Time series database streaming
For your test run, you can integrate an InfluxDB time series database (beta) to stream raw and aggregated data.
Real-time streaming
Integration with a time series database allows you to stream aggregated or raw data and view your testing metrics in real time.
The integration is done by adding a streaming data agent to the OpenText Core Performance Engineering assets. This agent lets you communicate with a time series database. Then you can view the test's progress using the monitoring tool of your choice, such as Grafana.
Currently, the streaming of raw data is only supported on cloud-based load generators and is limited to runs with a maximum of 5,000 concurrent Vusers.
Note: To use data streaming, submit a service request to enable data streaming for your tenant.
Install the streaming agent
The first step in integrating with InfluxDB, is installing the database and a OpenText Core Performance Engineering agent. The agent connects your InfluxDB time series database to your OpenText Core Performance Engineering tenant. Before you begin, download the Influx database from the InfluxData downloads page., and install it on your machine.
The following are the system requirements:
Resource | Value |
---|---|
Supported OS | Windows 64-bit or Linux Docker |
Supported InfluxDB versions |
2.x 1.8.x |
Install and configure a Windows streaming agent
To install a Windows streaming agent, do the following:
Action | Task |
---|---|
Download and install the agent |
To download and install the agent:
|
Configure the agent |
The Streaming Agent Configuration tool opens automatically after the agent installation. To manually run the configuration tool at any time, go to Start > LoadRunner Cloud – Streaming Agent , right-click Configure Streaming agent, and select Run as administrator. On the General tab enter:
In the Misc tab:
In the Streaming tab:
|
Launch the agent |
Go to Start > LoadRunner Cloud – Streaming Agent > Start Streaming Agent. When the agent starts running, it is shown in the Assets > Agents tab. |
Install and configure a Docker container for a streaming agent
To install a Docker container for a streaming agent, do the following:
Action | Task |
---|---|
Pull Docker image |
Pull the streaming agent Docker image from Docker Hub:
|
Launch a container |
To create the container in background/detached mode for InfluxDB version 2.x: docker run -d \ -e "STORM_TENANT=<tenant id>" \ -e "STORM_USERNAME=<user name>" \ -e "STORM_PASSWORD=<password>" \ -e "STORM_PROJECT_ID=<project id>" \ -e "STORM_AGENT_NAME=<agent name>" \ -e "STORM_INFLUXDB_URL=<InfluxDB URL>" \ -e "STORM_INFLUXDB_TOKEN=<InfluxDB v2.x token>" \ -e "STORM_INFLUXDB_BUCKET=<InfluxDB v2.x bucket>" \ -e "STORM_INFLUXDB_ORG=<InfluxDB v2.x organization>" \ --net=host performancetesting/lrc_streaming_agent To create the container in background/detached mode for InfluxDB version 1.8.x: docker run -d \ -e "STORM_TENANT=<tenant id>" \ -e "STORM_USERNAME=<user name>" \ -e "STORM_PASSWORD=<password>" \ -e "STORM_PROJECT_ID=<project id>" \ -e "STORM_AGENT_NAME=<agent name>" \ -e "STORM_INFLUXDB_URL=<InfluxDB URL>" \ -e "STORM_INFLUXDB_USER=<InfluxDB v1.8.x user>" \ -e "STORM_INFLUXDB_PASSWORD=<InfluxDB v1.8.x password>" \ -e "STORM_INFLUXDB_DATABASE=<InfluxDB v1.8.x database>" \ --net=host performancetesting/lrc_streaming_agent |
Environment variables |
You can also pass environment variables using the --env-file command line parameter.
InfluxDB version 2.x:
InfluxDB version 1.8.x:
If the agent requires a proxy, provide the proxy details using the https_proxy or http_proxy environment variable. |
For details about managing the agents in OpenText Core Performance Engineering, see Agents.
Add the InfluxDB streaming agent
You can view metrics of streaming data during the test run using the integration of OpenText Core Performance Engineering with the InfluxDB database. You can stream either raw or aggregated data.
Note: The streaming of raw data is a technical preview and limited to 5000 Vusers, not including Vusers running on on-premises load generators.
For information on how to set up the integration, see Install the streaming agent. After your integration is complete, you can configure the streaming agent.
To add an InfluxDB streaming agent:
- In the Load tests page, open the Streaming agent pane (only visible after integration).
- Click + Add from Assets.
- Select an agent and click Add.
- In the Data Type column, choose Raw or Aggregated. If only one of the data types is enabled for your tenant, the dropdown is inactive and the relevant data type is displayed.
After you begin the test run, you can check the streaming data in the InfluxDB database using a monitoring tool such as Grafana.
InfluxDB database measurements
This section lists the measurements added to the InfluxDB database when the streaming agent is configured.
Aggregated data measurements
Measurement | Description | Tags | Fields |
---|---|---|---|
agg_running_vusers | Vusers running in the load test | emulationId, locationId, runId, scriptId | value |
agg_failed_vusers | Vusers that failed in the load test | emulationId, locationId, runId, scriptId | value |
agg_errors | Error messages | emulationId, locationId, runId, scriptId | value |
agg_datapoints | Data, such as http_200 and http_302 | dataName, emulationId, locationId, runId, scriptId | count, value |
agg_transactions | Transaction related information | emulationId, locationId, runId, scriptId, txName, txStatus | count, max, min, sum, sumSqr, value |
agg_disruptions | Disruption events | runId, name, type | value |
Note: If you have configured LRC_CUST_APPLICATION, LRC_CUST_COMPONENT and LRC_CUST_ENVIRONMENT as additional attributes in the script's runtime settings, they are exposed as extra tags (cust_app, cust_env, cust_component) for the aggregated data measurements listed in the table above.
Raw data measurements
Measurement | Description | Tags | Fields |
---|---|---|---|
Transaction | Raw transactions | Name, ScriptName, GroupName, VuserID, Status, RunID, Product, Emulation, Region | StartTime, EndTime, ThinkTime, WastedTime |
DataPoint | Raw datapoints | Name, ScriptName, GroupName, VuserID, RunID, Product, Emulation, Region | Value |
Error | Raw error messages | Code, VuserID, GroupName, ScriptName, ActionName, Host, RunID, Product, Emulation, Region | Message, Iteration, FileLine |
See also: