result-indexer-scaled-1-1000rps.json


Overview

The `result-indexer-scaled-1-1000rps.json` file is a structured JSON data file representing performance testing results, likely produced by a load testing tool such as **k6**. It captures detailed metrics, configuration options, and state information for a test run simulating a high throughput scenario with up to 1000 requests per second (RPS).

This file serves as a **performance report snapshot** that indexes various runtime metrics, thresholds, and test environment settings. It is designed to be consumed by performance analysis tools or integrated into CI/CD pipelines for monitoring application behavior under stress.


Detailed Explanation

Top-Level Structure

Key

Description

`root_group`

Metadata and grouping container for the test scenario elements, currently empty in this file.

options

Configuration options used during the test run, such as statistics summary and display flags.

state

Captures the runtime environment state during the test, including terminal capabilities and test duration.

`metrics`

Core performance metrics collected during the test, including gauges, counters, rates, and trends.


root_group

*Usage:* This can be extended in more complex tests to organize checks and sub-tests logically.


options

*Usage Example:* Configure output formatting and statistical summaries for reporting tools or CLI output customization.


state

*Usage:* Used by reporting or visualization components to tailor output formatting or timing calculations.


metrics

This is the most extensive section, containing detailed performance data grouped by metric name.

Metric Types


Example Metric Breakdown

**Metric:** `http_req_duration{status:200}`

*Usage:* Critical for understanding response time distributions at scale.


Important Metrics Summary

Metric Name

Type

Description

Notable Values

`vus_max`

gauge

Max virtual users during test

max: 2591

`http_req_failed`

rate

Failure rate of HTTP requests

rate: 0 (all failed)

`iteration_duration`

trend

Duration of each test iteration

avg: 331.21 ms

`data_received`

counter

Amount of data received (bytes)

count: 143,303,056 bytes

`http_req_tls_handshaking`

trend

Time spent in TLS handshake

avg: 0.52 ms

`http_req_blocked`

trend

Time spent waiting to be processed by the client

avg: 0.78 ms

`http_reqs`

counter

Total HTTP requests sent

count: 299,873

`dropped_iterations`

counter

Number of iterations dropped due to resource constraints

count: 128


Implementation Details and Algorithms

No explicit algorithms are embedded in this file; it is purely a data report. The generation of these statistics would be done by the load testing engine that produced this file.


Interaction with Other System Components

This JSON file acts as a **data interchange format** between the load testing execution engine and:

It is a **read-only artifact** used post-test, not involved in direct runtime logic or application behavior.


Usage Example

To analyze the 95th percentile HTTP request duration from this file, a script could:

import json

with open('result-indexer-scaled-1-1000rps.json') as f:
    data = json.load(f)

p95_duration = data['metrics']['http_req_duration{status:200}']['values']['p(95)']
print(f"95th percentile request duration: {p95_duration} ms")

This allows developers or performance engineers to quickly extract key metrics programmatically.


Visual Diagram: Metrics Structure Flowchart

flowchart TD
    A[Metrics] --> B[gauge]
    A --> C[counter]
    A --> D[rate]
    A --> E[trend]

    B --> B1["vus_max"]
    B --> B2["vus"]

    C --> C1["data_received"]
    C --> C2["data_sent"]
    C --> C3["http_reqs"]
    C --> C4["iterations"]
    C --> C5["dropped_iterations"]

    D --> D1["http_req_failed"]
    D --> D2["http_req_failed{scenario:rps}"]

    E --> E1["http_req_duration"]
    E --> E2["http_req_duration{status:200}"]
    E --> E3["iteration_duration"]
    E --> E4["http_req_tls_handshaking"]
    E --> E5["http_req_receiving"]
    E --> E6["http_req_sending"]
    E --> E7["http_req_blocked"]
    E --> E8["http_req_connecting"]
    E --> E9["http_req_waiting"]
    E --> E10["http_req_duration{scenario:rps}"]

**Diagram Explanation:** The diagram shows the four main metric types (`gauge`, `counter`, `rate`, `trend`) branching out to specific metric names contained in the file. This hierarchical view helps understand how metrics are categorized and related.


Summary

The `result-indexer-scaled-1-1000rps.json` file is a **performance test result report** capturing detailed metrics, runtime state, and configuration options for a high throughput load testing scenario. It is an essential artifact for analyzing system performance, validating SLAs, and integrating with monitoring and reporting tools. The file’s structure is standardized for easy parsing and extensibility within performance engineering workflows.