The Cobra service prepares the data required for generating load tests. Users can upload data and later refer to them.
The data can be uploaded via the REST endpoint POST /measurement-data/{app-id}/{version}/{type}
. The app-id
and version
identify the application to which the data belongs. The type
can be open-xtrace
(see OPEN.xtrace), access-logs
(Apache common log format), csv
(CSV file with named columns), or session-logs
(see here for an example).
Cobra automatically learns workload models and intensities (numbers of concurrent users) from the data, which it stores into an Elasticsearch. For the clustering, it utilizes the Clustinator service.
When being triggered, Cobra can generate the artifacts traces
, sessions
, and behavior-model
. In addition, it always sets the intensity
artifact. For the intensity calculation (which can include time series forecasting), the Forecastic service is used.
The service can be configured using the configuration management of the Orchestrator. The following example illustrates the configuration space. We recommend to use the CLI for creating and editing the configurations.
---
service: cobra
app-id: sis
time-zone: Europe/Berlin
traces:
retention: P14D
map-to-idpa: true
discard-unmapped: true
log-unmapped: false
stop-on-failure: true
tailoring:
- - all
sessions:
timeout: PT30M
omit: false
hash-id: false
ignore-redirects: true
clustering:
interval: P7D
overlap: P21D
lookback: 200
initial:
strategy: kmeans
k: 20
parallelize: -2
num-seedings: 30
convergence-tolerance: 1.0E-5
quantile-range: 0.95
append:
strategy: minimum-distance
min-sample-size: 500
radius-factor: 1.1
omit: false
intensity:
resolution: PT1M
context:
auto-detect: true
variables:
black_friday:
type: boolean
ignore-by-default: false
The tailoring
field in the configuration relates to log-based service-tailoring, whis is introduced in the following publication:
Henning Schulz, Tobias Angerstein, Dušan Okanović, and André van Hoorn: Microservice-tailored generation of session-based workload models for representative load testing (full paper), Proceedings of the 27th IEEE International Symposium on the Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS 2019), 2019