diff --git a/.github/workflows/Nightly_Perf_Env_CI.yml b/.github/workflows/Nightly_Perf_Env_CI.yml index 184730f52..22f025971 100644 --- a/.github/workflows/Nightly_Perf_Env_CI.yml +++ b/.github/workflows/Nightly_Perf_Env_CI.yml @@ -217,6 +217,7 @@ jobs: if: always() run: | if [[ "${{ job.status }}" == "failure" || "${{ job.status }}" == "cancelled" ]]; then echo "status=${{ job.status }}" >> $GITHUB_OUTPUT; fi + finalize_nightly: name: finalize nightly runs-on: ubuntu-latest @@ -314,3 +315,84 @@ jobs: echo "if [[ \"\$(sudo podman images -q quay.io/ebattat/benchmark-runner 2> /dev/null)\" != \"\" ]]; then sudo podman rmi -f \$(sudo podman images -q quay.io/ebattat/benchmark-runner 2> /dev/null); fi" > "$RUNNER_PATH/remove_image.sh" scp -r "$RUNNER_PATH/remove_image.sh" provision:"/tmp/remove_image.sh" ssh -t provision "chmod +x /tmp/remove_image.sh;/tmp/./remove_image.sh;rm -f /tmp/remove_image.sh" + + update_grafana_dashboard: + # update grafana dashboard with latest product versions/ grafonnet code + name: update_grafana_dashboard + needs: [ initialize_nightly, workload, finalize_nightly ] + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v3 + - name: Install dependencies + run: | + python -m pip install --upgrade pip + if [[ -f requirements.txt ]]; then pip install -r requirements.txt; fi + + - name: Update latest product versions in main.libsonnet + env: + MAIN_LIBSONNET_PATH: ${{ secrets.PERF_MAIN_LIBSONNET_PATH }} + ELASTICSEARCH: ${{ secrets.PERF_ELASTICSEARCH }} + ELASTICSEARCH_PORT: ${{ secrets.PERF_ELASTICSEARCH_PORT }} + ELASTICSEARCH_USER: ${{ secrets.PERF_ELASTICSEARCH_USER }} + ELASTICSEARCH_PASSWORD: ${{ secrets.PERF_ELASTICSEARCH_PASSWORD }} + run: | + python "$GITHUB_WORKSPACE"/grafonnet_generator/grafana/update_versions_main_libsonnet.py + + - name: Generate grafana dashboard.json using grafonnet container + run: | + sudo podman run --rm --name run_grafonnet -v "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf:/app --privileged quay.io/ebattat/run_grafonnet:latest + + - name: Check for changes in dashboard.json + id: json_check_changes + run: | + git diff --quiet "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/dashboard.json || echo "changes=true" >> "$GITHUB_OUTPUT" + + - name: Update the Grafana dashboard if any changes are detected in dashboard.json + if: steps.json_check_changes.outputs.changes == 'true' + env: + PERF_GRAFANA_URL: ${{ secrets.PERF_GRAFANA_URL }} + PERF_GRAFANA_API_KEY: ${{ secrets.PERF_GRAFANA_API_KEY }} + GRAFANA_JSON: ${{ secrets.PERF_GRAFANA_JSON }} + run: | + # Backup dashboard.json before before adding dashboard version by Python code + cp -p "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/dashboard.json "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/dashboard_backup.json + # Updates new product versions and override Grafana dashboard + python "$GITHUB_WORKSPACE"/benchmark_runner/grafana/update_grafana_dashboard.py + # Revert dashboard.json after adding dashboard version by Python code + cp -p "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/dashboard_backup.json "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/dashboard.json + + - name: Commit dashboard.json if any changes are detected + if: steps.json_check_changes.outputs.changes == 'true' + run: | + git checkout main + git config --global user.email "${{ secrets.EMAIL }}" + git config --global user.name "${{ secrets.USER_NAME }}" + git add "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/dashboard.json + git commit -m "Update grafana json file" + + # Pull the latest changes from the remote main branch + git pull origin main + + # Push the changes to the remote main branch + git push + + - name: Check if adding new products versions in main.libsonnet + id: libsonnet_check_changes + run: | + git diff --quiet "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/jsonnet/main.libsonnet || echo "changes=true" >> "$GITHUB_OUTPUT" + + - name: Commit main.libsonnet if any changes are detected + if: steps.libsonnet_check_changes.outputs.changes == 'true' + run: | + git checkout main + git config --global user.email "${{ secrets.EMAIL }}" + git config --global user.name "${{ secrets.USER_NAME }}" + git add "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/jsonnet/main.libsonnet + git commit -m "Update grafana json file" + + # Pull the latest changes from the remote main branch + git pull origin main + + # Push the changes to the remote main branch + git push diff --git a/.github/workflows/Perf_Env_Build_Test_CI.yml b/.github/workflows/Perf_Env_Build_Test_CI.yml index fe575e94a..4a27daa83 100644 --- a/.github/workflows/Perf_Env_Build_Test_CI.yml +++ b/.github/workflows/Perf_Env_Build_Test_CI.yml @@ -135,6 +135,9 @@ jobs: IBM_BUCKET: ${{ secrets.IBM_BUCKET }} IBM_KEY: ${{ secrets.IBM_KEY }} RUN_ARTIFACTS_URL: ${{ secrets.PERF_RUN_ARTIFACTS_URL }} + GRAFANA_URL: ${{ secrets.PERF_GRAFANA_URL }} + GRAFANA_API_KEY: ${{ secrets.PERF_GRAFANA_API_KEY }} + GRAFANA_JSON: ${{ secrets.PERF_GRAFANA_JSON }} run: | # Install Dockerfile content for pytest # install oc/kubectl @@ -261,9 +264,90 @@ jobs: echo '⌛ Wait 30 sec till image will be updated in quay.io' sleep 30 + update_grafana_dashboard: + # update grafana dashboard with latest product versions/ grafonnet code + name: update_grafana_dashboard + needs: [ unittest, integration_test, pypi_upload, pypi_validate ] + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v3 + - name: Install dependencies + run: | + python -m pip install --upgrade pip + if [[ -f requirements.txt ]]; then pip install -r requirements.txt; fi + + - name: Update latest product versions in main.libsonnet + env: + MAIN_LIBSONNET_PATH: ${{ secrets.PERF_MAIN_LIBSONNET_PATH }} + ELASTICSEARCH: ${{ secrets.PERF_ELASTICSEARCH }} + ELASTICSEARCH_PORT: ${{ secrets.PERF_ELASTICSEARCH_PORT }} + ELASTICSEARCH_USER: ${{ secrets.PERF_ELASTICSEARCH_USER }} + ELASTICSEARCH_PASSWORD: ${{ secrets.PERF_ELASTICSEARCH_PASSWORD }} + run: | + python "$GITHUB_WORKSPACE"/grafonnet_generator/grafana/update_versions_main_libsonnet.py + + - name: Generate grafana dashboard.json using grafonnet container + run: | + sudo podman run --rm --name run_grafonnet -v "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf:/app --privileged quay.io/ebattat/run_grafonnet:latest + + - name: Check for changes in dashboard.json + id: json_check_changes + run: | + git diff --quiet "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/dashboard.json || echo "changes=true" >> "$GITHUB_OUTPUT" + + - name: Update the Grafana dashboard if any changes are detected in dashboard.json + if: steps.json_check_changes.outputs.changes == 'true' + env: + PERF_GRAFANA_URL: ${{ secrets.PERF_GRAFANA_URL }} + PERF_GRAFANA_API_KEY: ${{ secrets.PERF_GRAFANA_API_KEY }} + GRAFANA_JSON: ${{ secrets.PERF_GRAFANA_JSON }} + run: | + # Backup dashboard.json before before adding dashboard version by Python code + cp -p "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/dashboard.json "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/dashboard_backup.json + # Updates new product versions and override Grafana dashboard + python "$GITHUB_WORKSPACE"/benchmark_runner/grafana/update_grafana_dashboard.py + # Revert dashboard.json after adding dashboard version by Python code + cp -p "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/dashboard_backup.json "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/dashboard.json + + - name: Commit dashboard.json if any changes are detected + if: steps.json_check_changes.outputs.changes == 'true' + run: | + git checkout main + git config --global user.email "${{ secrets.EMAIL }}" + git config --global user.name "${{ secrets.USER_NAME }}" + git add "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/dashboard.json + git commit -m "Update grafana json file" + + # Pull the latest changes from the remote main branch + git pull origin main + + # Push the changes to the remote main branch + git push + + - name: Check if adding new products versions in main.libsonnet + id: libsonnet_check_changes + run: | + git diff --quiet "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/jsonnet/main.libsonnet || echo "changes=true" >> "$GITHUB_OUTPUT" + + - name: Commit main.libsonnet if any changes are detected + if: steps.libsonnet_check_changes.outputs.changes == 'true' + run: | + git checkout main + git config --global user.email "${{ secrets.EMAIL }}" + git config --global user.name "${{ secrets.USER_NAME }}" + git add "$GITHUB_WORKSPACE"/benchmark_runner/grafana/perf/jsonnet/main.libsonnet + git commit -m "Update grafana json file" + + # Pull the latest changes from the remote main branch + git pull origin main + + # Push the changes to the remote main branch + git push + bump_version: name: bump_version - needs: [unittest, integration_test, pypi_upload, pypi_validate, quay_upload] + needs: [unittest, integration_test, pypi_upload, pypi_validate, quay_upload, update_grafana_dashboard] runs-on: ubuntu-latest strategy: matrix: @@ -283,8 +367,8 @@ jobs: version=$(python3 setup.py --version) git checkout main pip install bumpversion - git config --global user.email ${{ secrets.EMAIL }} - git config --global user.name ${{ secrets.USER_NAME }} + git config --global user.email "${{ secrets.EMAIL }}" + git config --global user.name "${{ secrets.USER_NAME }}" git config pull.rebase false # merge (the default strategy) bumpversion patch # GITHUB_REPOSITORY already taken => GIT_REPOSITORY @@ -295,7 +379,7 @@ jobs: e2e: name: e2e - needs: [unittest, integration_test, pypi_upload, pypi_validate, quay_upload, bump_version] + needs: [unittest, integration_test, pypi_upload, pypi_validate, quay_upload, update_grafana_dashboard, bump_version] runs-on: ubuntu-latest strategy: # run one job every time @@ -373,4 +457,3 @@ jobs: ssh -t provision "podman run --rm -t -e WORKLOAD='${{ matrix.workload }}' -e KUBEADMIN_PASSWORD='$KUBEADMIN_PASSWORD' -e PIN_NODE_BENCHMARK_OPERATOR='$PIN_NODE_BENCHMARK_OPERATOR' -e PIN_NODE1='$PIN_NODE1' -e PIN_NODE2='$PIN_NODE2' -e ELASTICSEARCH='$ELASTICSEARCH' -e ELASTICSEARCH_PORT='$ELASTICSEARCH_PORT' -e ELASTICSEARCH_USER='$ELASTICSEARCH_USER' -e ELASTICSEARCH_PASSWORD='$ELASTICSEARCH_PASSWORD' -e IBM_REGION_NAME='$IBM_REGION_NAME' -e IBM_ENDPOINT_URL='$IBM_ENDPOINT_URL' -e IBM_ACCESS_KEY_ID='$IBM_ACCESS_KEY_ID' -e IBM_SECRET_ACCESS_KEY='$IBM_SECRET_ACCESS_KEY' -e IBM_BUCKET='$IBM_BUCKET' -e IBM_KEY='$IBM_KEY' -e RUN_ARTIFACTS_URL='$RUN_ARTIFACTS_URL' -e BUILD_VERSION='$build_version' -e RUN_TYPE='test_ci' -e TIMEOUT='2000' -e log_level='INFO' -v '$CONTAINER_KUBECONFIG_PATH':'$CONTAINER_KUBECONFIG_PATH' --privileged 'quay.io/ebattat/benchmark-runner:v$build_version'" ssh -t provision "podman rmi -f 'quay.io/ebattat/benchmark-runner:v$build_version'" echo '>>>>>>>>>>>>>>>>>>>>>>>>>> End E2E workload: ${{ matrix.workload }} >>>>>>>>>>>>>>>>>>>>>>>>>>>>' - diff --git a/.github/workflows/Perf_Env_PR_Test_CI.yml b/.github/workflows/Perf_Env_PR_Test_CI.yml index 98a7bc2e9..f6695fb39 100644 --- a/.github/workflows/Perf_Env_PR_Test_CI.yml +++ b/.github/workflows/Perf_Env_PR_Test_CI.yml @@ -148,6 +148,9 @@ jobs: IBM_BUCKET: ${{ secrets.IBM_BUCKET }} IBM_KEY: ${{ secrets.IBM_KEY }} RUN_ARTIFACTS_URL: ${{ secrets.PERF_RUN_ARTIFACTS_URL }} + GRAFANA_URL: ${{ secrets.PERF_GRAFANA_URL }} + GRAFANA_API_KEY: ${{ secrets.PERF_GRAFANA_API_KEY }} + GRAFANA_JSON: ${{ secrets.PERF_GRAFANA_JSON }} run: | # Install Dockerfile content for pytest # install oc/kubectl diff --git a/.gitignore b/.gitignore index e6f77ccdf..658d15553 100644 --- a/.gitignore +++ b/.gitignore @@ -200,6 +200,11 @@ fabric.properties # Editor-based Rest Client .idea/httpRequests +# Terraform +.terraform +.terraform.lock.hcl +terraform.tfstate + # custom file configuration /benchmark_runner/main/empty_environment_variables.py /benchmark_runner/main/empty_test_environment_variables.py diff --git a/HOW_TO.md b/HOW_TO.md index a434a09bf..e29870dd0 100644 --- a/HOW_TO.md +++ b/HOW_TO.md @@ -226,10 +226,10 @@ any template .yaml files. 6. Save & test 2. Open grafana dashboard benchmark-runner-report: 1. Open grafana - 2. Create(+) -> import -> paste [grafana/func/benchmark-runner-report.json](grafana/func/benchmark-runner-report.json) -> Load - 3. Create panel from scratch or duplicate existing on (stressng/uperf) + 2. Create(+) -> import -> paste [grafana/func/dashboard.json](benchmark_runner/grafana/func/dashboard.json) -> Load + 3. Create panel from scratch or duplicate existing on (e.g. uperf) 4. Configure the workload related metrics - 5. Save dashboard -> share -> Export -> view json -> Copy to clipboard -> override existing one [grafana/func/benchmark-runner-report.json](grafana/func/benchmark-runner-report.json) + 5. Save dashboard -> share -> Export -> view json -> Copy to clipboard -> override existing one [grafana/func/dashboard.json](benchmark_runner/grafana/func/dashboard.json) ### Data template diff --git a/README.md b/README.md index d39e6fb36..ef4067a14 100644 --- a/README.md +++ b/README.md @@ -128,10 +128,9 @@ SAVE RUN ARTIFACTS LOCAL: ## Grafana dashboards There are 2 grafana dashboards templates: -1. [grafana/func/benchmark-runner-ci-status-report.json](grafana/func/benchmark-runner-ci-status-report.json) - ![](media/benchmark-runner-ci-status.png) -2. [grafana/func/benchmark-runner-report.json](grafana/func/benchmark-runner-report.json) - ![](media/benchmark-runner-report.png) +1. [FuncCi dashboard](benchmark_runner/grafana/func/dashboard.json) +2. [PerfCi dashboard](benchmark_runner/grafana/perf/dashboard.json) +** PerfCi dashboard is generated automatically in [Build GitHub actions](https://github.com/redhat-performance/benchmark-runner/blob/main/.github/workflows/Perf_Env_Build_Test_CI.yml) from [main.libsonnet](benchmark_runner/grafana/perf/jsonnet/main.libsonnet) ** After importing json in grafana, you need to configure elasticsearch data source. (for more details: see [HOW_TO.md](HOW_TO.md)) diff --git a/benchmark_runner/common/grafana/__init__.py b/benchmark_runner/common/grafana/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/benchmark_runner/common/grafana/grafana_operations.py b/benchmark_runner/common/grafana/grafana_operations.py new file mode 100644 index 000000000..673990cc0 --- /dev/null +++ b/benchmark_runner/common/grafana/grafana_operations.py @@ -0,0 +1,106 @@ + +import requests +import json +import logging + +logging.basicConfig(level=logging.INFO) + + +class GrafanaOperations: + """ + This class is responsible for Grafana operations + """ + def __init__(self, grafana_url: str, grafana_api_key: str, grafana_json_path: str): + self.grafana_url = grafana_url + self.grafana_api_key = grafana_api_key + self.grafana_json_path = grafana_json_path + self.dashboard_data = {} + self.logger = logging.getLogger(__name__) + + def fetch_all_dashboards(self): + """ + This method fetches all dashboards + :return: + """ + dashboard_list = [] + headers = { + "Authorization": f"Bearer {self.grafana_api_key}", + } + + try: + response = requests.get(f"{self.grafana_url}/api/search", headers=headers) + + if response.status_code == 200: + dashboards = response.json() + for dashboard in dashboards: + dashboard_list.append(f"Dashboard ID: {dashboard['id']}, Title: {dashboard['title']}") + else: + raise Exception(f"Failed to fetch dashboards. Status code: {response.status_code}. Message: {response.text}") + return dashboard_list + except requests.exceptions.RequestException as e: + raise Exception(f"Error fetching dashboards: {e}") + + def increment_dashboard_version(self): + """ + This method increments dashboard version + :return: + """ + self.dashboard_data["version"] = self.get_latest_dashboard_version() + + def read_dashboard_json(self): + """ + This method reads dashboard from json into dictionary + :return: + """ + with open(self.grafana_json_path, 'r') as f: + self.dashboard_data = json.load(f) + + def write_dashboard_json(self): + """ + This method writes dashboard data into json + :return: + """ + with open(self.grafana_json_path, 'w') as json_file: + json.dump(self.dashboard_data, json_file, indent=2) + + def get_latest_dashboard_version(self): + """ + This method get latest dashboard version + :return: + """ + headers = { + "Authorization": f"Bearer {self.grafana_api_key}", + } + try: + response = requests.get(f"{self.grafana_url}/api/dashboards/uid/{self.dashboard_data['uid']}", headers=headers) + response_json = response.json() + return response_json['dashboard']['version'] + + except requests.exceptions.RequestException as e: + raise Exception(f"Error fetching dashboard version: {e}") + + def override_dashboard(self): + """ + This method overrides dashboard with new json + :return: + """ + headers = { + "Authorization": f"Bearer {self.grafana_api_key}", + "Content-Type": "application/json", + } + try: + response = requests.post( + f"{self.grafana_url}/api/dashboards/db", + headers=headers, + json={"dashboard": self.dashboard_data}, + ) + + if response.status_code == 200: + self.logger.info(f"Dashboard '{self.dashboard_data['title']}' overridden successfully.") + else: + # The 412 status code is used when a newer dashboard already exists. + raise Exception( + f"Failed to override dashboard '{self.dashboard_data['title']}'. Status code: {response.status_code}. Message: {response.text}") + + except requests.exceptions.RequestException as e: + raise Exception(f"Error overriding dashboard '{self.dashboard_data['title']}': {e}") diff --git a/benchmark_runner/common/grafana/update_grafana_last_value_mappings.py b/benchmark_runner/common/grafana/update_grafana_last_value_mappings.py new file mode 100644 index 000000000..fd578fce3 --- /dev/null +++ b/benchmark_runner/common/grafana/update_grafana_last_value_mappings.py @@ -0,0 +1,117 @@ + +import json +from datetime import datetime, timedelta + +from benchmark_runner.main.environment_variables import environment_variables +from benchmark_runner.common.elasticsearch.elasticsearch_operations import ElasticSearchOperations + + +class UpdateGrafanaLastValueMappings: + """ + This class updates grafana dashboard with last value mappings from ElasticSearch + """ + # Prevent error messages from being saved instead of versions in case of a connection issue + MAX_VERSION_LEN = 20 + + def __init__(self, main_libsonnet_path: str): + # Stamp start/ end value mapping for extract value mapping + self.start_value_mapping = "//START_VALUE_MAPPING_227" + self.end_value_mapping = "//END_VALUE_MAPPING_227" + self._environment_variables_dict = environment_variables.environment_variables_dict + self.elasticsearch = ElasticSearchOperations(es_host=self._environment_variables_dict.get('elasticsearch', ''), + es_port=self._environment_variables_dict.get('elasticsearch_port', ''), + es_user=self._environment_variables_dict.get('elasticsearch_user', ''), + es_password=self._environment_variables_dict.get('elasticsearch_password', '')) + self.main_libsonnet_path = main_libsonnet_path + self.value_mappings = self.get_value_mappings() + + def get_last_elasticsearch_versions(self, last_days=7): + """ + This method fetched new version from ElasticSearch + :param last_days: default fetch 7 days + :return: + """ + new_versions = {} + current_datetime = datetime.now() + start_datetime = current_datetime - timedelta(days=last_days) + + ids = self.elasticsearch.get_index_ids_between_dates(index='ci-status', start_datetime=start_datetime, + end_datetime=current_datetime) + + display_versions = ['ocp_version', 'cnv_version', 'kata_version', 'kata_rpm_version', 'odf_version'] + for id in ids: + data = self.elasticsearch.get_elasticsearch_index_by_id(index='ci-status', id=id) + for version, value in data['_source'].items(): + if version in display_versions and value not in new_versions.values() and len(value) < self.MAX_VERSION_LEN: + new_versions[value.replace(".", "").replace("-", "")] = value + + return new_versions + + def get_value_mappings(self): + """ + This method gets value mappings from main.libsonnet + :return: + """ + # Initialize a flag to indicate whether the lines are within the desired range + within_range = False + mapping_lines = [] + + # Read the content of the file and store lines between start and end patterns in a list + with open(self.main_libsonnet_path, 'r') as file: + for line in file: + if self.start_value_mapping in line.strip(): + within_range = True + continue # Skip storing the start line + elif self.end_value_mapping in line.strip(): + within_range = False + continue # Skip storing the end line + if within_range: + mapping_lines.append(line.strip()) + + # Join the lines to create the final string + content_string = ''.join(mapping_lines) + + # Convert the string into a dictionary using json.loads() + return json.loads(content_string) + + def update_value_mappings_last_versions(self, last_versions: dict): + """ + This method updated value mapping with last versions + :param last_versions: + :return: + """ + # Sort the dictionary by "index" values and convert it to a list of tuples + sorted_mapping = sorted(self.value_mappings.items(), key=lambda x: x[1]['index']) + # Get the maximum index value and the corresponding key + max_index, max_key = sorted_mapping[-1][1]['index'], sorted_mapping[-1][0] + + num = 1 + for key, value in last_versions.items(): + if not self.value_mappings.get(key): + self.value_mappings[key] = {"index": int(max_index) + num, "text": value} + num += 1 + + def update_main_libsonnet(self): + """ + This method updated last versions in main.libsonnet + :return: + """ + # Read the content of the file and store it in a list + with open(self.main_libsonnet_path, 'r') as file: + lines = file.readlines() + # Find the indices of the lines between start and end + start_index = None + end_index = None + for i, line in enumerate(lines): + if self.start_value_mapping in line: + start_index = i + elif self.end_value_mapping in line: + end_index = i + + # Replace the lines between start and end with the dictionary + if start_index is not None and end_index is not None: + lines[start_index + 1:end_index] = [f'\t\t\t\t {json.dumps(self.value_mappings, indent=None)} \n'] + + # Write the modified content back to the file + with open(self.main_libsonnet_path, 'w') as file: + file.writelines(lines) diff --git a/benchmark_runner/grafana/Dockerfile b/benchmark_runner/grafana/Dockerfile new file mode 100644 index 000000000..b70e55d2a --- /dev/null +++ b/benchmark_runner/grafana/Dockerfile @@ -0,0 +1,18 @@ +FROM quay.io/centos/centos:stream9 + +WORKDIR /app + +ENV TERRAFORM_VERSION=1.5.4 + +RUN dnf update -y && \ + dnf install -y git go wget unzip && \ + go install github.com/google/go-jsonnet/cmd/jsonnet@latest && \ + go install -a github.com/jsonnet-bundler/jsonnet-bundler/cmd/jb@latest && \ + wget https://releases.hashicorp.com/terraform/${TERRAFORM_VERSION}/terraform_${TERRAFORM_VERSION}_linux_amd64.zip && \ + unzip terraform_${TERRAFORM_VERSION}_linux_amd64.zip && \ + mv terraform /usr/local/bin/ && \ + rm terraform_${TERRAFORM_VERSION}_linux_amd64.zip + +ENV PATH="/root/go/bin:${PATH}" + +CMD ["/bin/sh", "-c", "terraform init; make; terraform destroy -auto-approve > /dev/null 2>&1"] diff --git a/benchmark_runner/grafana/__init__.py b/benchmark_runner/grafana/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/grafana/func/benchmark-runner-report.json b/benchmark_runner/grafana/func/benchmark-runner-report.json similarity index 100% rename from grafana/func/benchmark-runner-report.json rename to benchmark_runner/grafana/func/benchmark-runner-report.json diff --git a/grafana/func/benchmark-runner-summary-line-report-final.json b/benchmark_runner/grafana/func/benchmark-runner-summary-line-report-final.json similarity index 100% rename from grafana/func/benchmark-runner-summary-line-report-final.json rename to benchmark_runner/grafana/func/benchmark-runner-summary-line-report-final.json diff --git a/grafana/func/FuncCl-Regression-Summary.json b/benchmark_runner/grafana/func/dashboard.json similarity index 100% rename from grafana/func/FuncCl-Regression-Summary.json rename to benchmark_runner/grafana/func/dashboard.json diff --git a/grafana/func/system-metrics-report.json b/benchmark_runner/grafana/func/system-metrics-report.json similarity index 100% rename from grafana/func/system-metrics-report.json rename to benchmark_runner/grafana/func/system-metrics-report.json diff --git a/benchmark_runner/grafana/perf/Makefile b/benchmark_runner/grafana/perf/Makefile new file mode 100644 index 000000000..2069d55a8 --- /dev/null +++ b/benchmark_runner/grafana/perf/Makefile @@ -0,0 +1,6 @@ +# jsonnet/jsonnetfile.lock.json - representing a specific grafonnet version and not latest +apply: + @cd jsonnet/ && \ + jb install && \ + cd ../ && \ + terraform apply -auto-approve | python3 extract_dashboard.py > dashboard.json diff --git a/benchmark_runner/grafana/perf/dashboard.json b/benchmark_runner/grafana/perf/dashboard.json new file mode 100644 index 000000000..58c9a1f5e --- /dev/null +++ b/benchmark_runner/grafana/perf/dashboard.json @@ -0,0 +1,8580 @@ +{ + "links": [ + { + "asDropdown": false, + "icon": "info", + "includeVars": false, + "keepTime": false, + "targetBlank": true, + "title": "Details", + "type": "link", + "url": "https://docs.google.com/spreadsheets/d/1eSOmyZKJ6f0RIHN0zJNnH-S2YrqrU0oyzp7PNSQvksE/edit#gid=0" + }, + { + "asDropdown": false, + "icon": "bolt", + "includeVars": false, + "keepTime": false, + "targetBlank": true, + "title": "Issues", + "type": "link", + "url": "https://docs.google.com/spreadsheets/d/1vZtg0Gj8IxKPGLWAkB4iD1O59u_WA4ky5P7gGX6xW3M/edit#gid=0" + } + ], + "liveNow": false, + "panels": [ + { + "datasource": { + "type": "datasource", + "uid": "-- Mixed --" + }, + "gridPos": { + "h": 6, + "w": 5, + "x": 0, + "y": 0 + }, + "id": 1, + "options": { + "content": "\n
> 100% new peak
\n90% - 100% of peak
\n80% - 90% of peak
\n50% - 80% of peak
\n0% - 50% of peak
\n\n\n ", + "mode": "html" + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "", + "bucketAggs": [ + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "datasource": { + "type": "elasticsearch", + "uid": "cd4b9568-576c-4528-b200-89b91a098410" + }, + "metrics": [ + { + "id": "1", + "type": "count" + } + ], + "query": "", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "Workloads Legend", + "type": "text" + }, + { + "datasource": { + "type": "datasource", + "uid": "-- Mixed --" + }, + "description": "", + "gridPos": { + "h": 6, + "w": 5, + "x": 19, + "y": 0 + }, + "id": 2, + "options": { + "content": "![Cloud Governance](https://www.cielhr.com/wp-content/uploads/2019/10/PerformancewSpace-1080x675.png \"Tooltip Text\")\n", + "mode": "markdown" + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "", + "bucketAggs": [ + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "datasource": { + "type": "elasticsearch", + "uid": "cd4b9568-576c-4528-b200-89b91a098410" + }, + "metrics": [ + { + "id": "1", + "type": "count" + } + ], + "query": "", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "", + "type": "text" + }, + { + "datasource": "Elasticsearch-ci-status", + "description": "OVN - 09/19", + "fieldConfig": { + "defaults": { + "color": { + "fixedColor": "#132dc3", + "mode": "fixed" + }, + "custom": { + "fillOpacity": 85, + "lineWidth": 0 + }, + "mappings": [ + { + "options": { + "0": { + "index": 0, + "text": "fail" + }, + "1": { + "index": 1, + "text": "pass" + }, + "102": { + "index": 13, + "text": "1.0.2" + }, + "110": { + "index": 14, + "text": "1.1.0" + }, + "120": { + "index": 15, + "text": "1.2.0" + }, + "121": { + "index": 16, + "text": "1.2.1" + }, + "130": { + "index": 45, + "text": "1.3.0" + }, + "131": { + "index": 117, + "text": "1.3.1" + }, + "132": { + "index": 76, + "text": "1.3.2" + }, + "133": { + "index": 77, + "text": "1.3.3" + }, + "140": { + "index": 118, + "text": "1.4.0" + }, + "141": { + "index": 139, + "text": "1.4.1" + }, + "3025": { + "index": 86, + "text": "3.0.2-5" + }, + "3026": { + "index": 119, + "text": "3.0.2-6" + }, + "41002": { + "index": 30, + "text": "4.10.0-rc.2" + }, + "41003": { + "index": 31, + "text": "4.10.0-rc.3" + }, + "4100683": { + "index": 17, + "text": "4.10.0-683" + }, + "4100688": { + "index": 18, + "text": "4.10.0-688" + }, + "41007": { + "index": 32, + "text": "4.10.0-rc.7" + }, + "4100700": { + "index": 19, + "text": "4.10.0-700" + }, + "4100729": { + "index": 20, + "text": "4.10.0-729" + }, + "41010": { + "index": 39, + "text": "4.10.10" + }, + "41011": { + "index": 40, + "text": "4.10.11" + }, + "4101101": { + "index": 27, + "text": "4.10.1-101" + }, + "41012": { + "index": 41, + "text": "4.10.12" + }, + "410129": { + "index": 22, + "text": "4.10.1-29" + }, + "41013": { + "index": 42, + "text": "4.10.13" + }, + "410136": { + "index": 23, + "text": "4.10.1-36" + }, + "41014": { + "index": 43, + "text": "4.10.14" + }, + "41015": { + "index": 44, + "text": "4.10.15" + }, + "41016": { + "index": 21, + "text": "4.10.1-6" + }, + "410160": { + "index": 24, + "text": "4.10.1-60" + }, + "410170": { + "index": 25, + "text": "4.10.1-70" + }, + "410197": { + "index": 26, + "text": "4.10.1-97" + }, + "4102": { + "index": 33, + "text": "4.10.2" + }, + "41021": { + "index": 28, + "text": "4.10.2-1" + }, + "41023": { + "index": 29, + "text": "4.10.2-3" + }, + "4104": { + "index": 34, + "text": "4.10.4" + }, + "4105": { + "index": 35, + "text": "4.10.5" + }, + "41054": { + "index": 49, + "text": "4.10.5-4" + }, + "4106": { + "index": 36, + "text": "4.10.6" + }, + "41066": { + "index": 48, + "text": "4.10.6-6" + }, + "4108": { + "index": 37, + "text": "4.10.8" + }, + "4109": { + "index": 38, + "text": "4.10.9" + }, + "4110137": { + "index": 50, + "text": "4.11.0-137" + }, + "41110": { + "index": 60, + "text": "4.11.10" + }, + "41111": { + "index": 61, + "text": "4.11.11" + }, + "411115": { + "index": 52, + "text": "4.11.1-15" + }, + "41112": { + "index": 62, + "text": "4.11.12" + }, + "411121": { + "index": 51, + "text": "4.11.1-21" + }, + "41113": { + "index": 63, + "text": "4.11.13" + }, + "411135": { + "index": 46, + "text": "4.11.1-35" + }, + "41114": { + "index": 64, + "text": "4.11.14" + }, + "411142": { + "index": 47, + "text": "4.11.1-42" + }, + "4114": { + "index": 54, + "text": "4.11.4" + }, + "41144": { + "index": 78, + "text": "4.11.4-4" + }, + "4115": { + "index": 55, + "text": "4.11.5" + }, + "41159": { + "index": 79, + "text": "4.11.5-9" + }, + "4116": { + "index": 56, + "text": "4.11.6" + }, + "411605": { + "index": 53, + "text": "4.11.6-5" + }, + "4117": { + "index": 57, + "text": "4.11.7" + }, + "4118": { + "index": 58, + "text": "4.11.8" + }, + "4119": { + "index": 59, + "text": "4.11.9" + }, + "4120": { + "index": 68, + "text": "4.12.0" + }, + "4120173": { + "index": 83, + "text": "4.12.0-173" + }, + "41206": { + "index": 65, + "text": "4.12.0.6" + }, + "41207": { + "index": 66, + "text": "4.12.0.7" + }, + "4120777": { + "index": 71, + "text": "4.12.0-777" + }, + "4120781": { + "index": 72, + "text": "4.12.0-781" + }, + "41208": { + "index": 67, + "text": "4.12.0.8" + }, + "4121": { + "index": 69, + "text": "4.12.1" + }, + "412116": { + "index": 74, + "text": "4.12.1-16" + }, + "412119": { + "index": 84, + "text": "4.12.1-19" + }, + "412122": { + "index": 75, + "text": "4.12.1-22" + }, + "412139": { + "index": 82, + "text": "4.12.1-39" + }, + "412140": { + "index": 81, + "text": "4.12.1-40" + }, + "41218": { + "index": 73, + "text": "4.12.1-8" + }, + "4122": { + "index": 70, + "text": "4.12.2" + }, + "41224": { + "index": 85, + "text": "4.12.2-4" + }, + "412317": { + "index": 121, + "text": "4.12.3-17" + }, + "4124": { + "index": 80, + "text": "4.12.4" + }, + "41244": { + "index": 126, + "text": "4.12.4-4" + }, + "41252": { + "index": 140, + "text": "4.12.5-2" + }, + "41263": { + "index": 149, + "text": "4.12.6-3" + }, + "4130": { + "index": 106, + "text": "4.13.0" + }, + "413014": { + "index": 101, + "text": "4.13.0-ec.4" + }, + "41301586": { + "index": 88, + "text": "4.13.0-1586" + }, + "41301649": { + "index": 89, + "text": "4.13.0-1649" + }, + "41301666": { + "index": 91, + "text": "4.13.0-1666" + }, + "41301689": { + "index": 90, + "text": "4.13.0-1689" + }, + "41301782": { + "index": 92, + "text": "4.13.0-1782" + }, + "41301856": { + "index": 93, + "text": "4.13.0-1856" + }, + "41301938": { + "index": 94, + "text": "4.13.0-1938" + }, + "41301943": { + "index": 95, + "text": "4.13.0-1943" + }, + "41302115": { + "index": 96, + "text": "4.13.0-2115" + }, + "41302176": { + "index": 97, + "text": "4.13.0-2176" + }, + "41302229": { + "index": 98, + "text": "4.13.0-2229" + }, + "41302251": { + "index": 99, + "text": "4.13.0-2251" + }, + "41302269": { + "index": 100, + "text": "4.13.0-2269" + }, + "41304": { + "index": 102, + "text": "4.13.0-rc.4" + }, + "41305": { + "index": 103, + "text": "4.13.0-rc.5" + }, + "41307": { + "index": 104, + "text": "4.13.0-rc.7" + }, + "41308": { + "index": 105, + "text": "4.13.0-rc.8" + }, + "4130ec3": { + "index": 87, + "text": "4.13.0-ec.3" + }, + "4131": { + "index": 109, + "text": "4.13.1" + }, + "41310": { + "index": 147, + "text": "4.13.10" + }, + "4131154": { + "index": 115, + "text": "4.13.1-154" + }, + "413118": { + "index": 113, + "text": "4.13.1-18" + }, + "4131206": { + "index": 131, + "text": "4.13.1-206" + }, + "4131214": { + "index": 132, + "text": "4.13.1-214" + }, + "413140": { + "index": 114, + "text": "4.13.1-40" + }, + "4132": { + "index": 110, + "text": "4.13.2" + }, + "41323": { + "index": 133, + "text": "4.13.2-3" + }, + "413267": { + "index": 136, + "text": "4.13.2-67" + }, + "413273": { + "index": 134, + "text": "4.13.2-73" + }, + "4133": { + "index": 111, + "text": "4.13.3" + }, + "4133166": { + "index": 138, + "text": "4.13.3-166" + }, + "4133203": { + "index": 142, + "text": "4.13.3-203" + }, + "4133266": { + "index": 146, + "text": "4.13.3-266" + }, + "413360": { + "index": 123, + "text": "4.13.3-60" + }, + "41338": { + "index": 135, + "text": "4.13.3-8" + }, + "4134": { + "index": 130, + "text": "4.13.4" + }, + "413426": { + "index": 145, + "text": "4.13.4-26" + }, + "413482": { + "index": 148, + "text": "4.13.4-82" + }, + "4136": { + "index": 122, + "text": "4.13.6" + }, + "4137": { + "index": 137, + "text": "4.13.7" + }, + "4138": { + "index": 141, + "text": "4.13.8" + }, + "4139": { + "index": 143, + "text": "4.13.9" + }, + "4814": { + "index": 6, + "text": "4.8.14" + }, + "483": { + "index": 0, + "text": "4.8.3" + }, + "484": { + "index": 1, + "text": "4.8.4" + }, + "485": { + "index": 2, + "text": "4.8.5" + }, + "486": { + "index": 3, + "text": "4.8.6" + }, + "487": { + "index": 4, + "text": "4.8.7" + }, + "488": { + "index": 5, + "text": "4.8.8" + }, + "49211": { + "index": 7, + "text": "4.9.2-11" + }, + "4932": { + "index": 8, + "text": "4.9.3-2" + }, + "4947": { + "index": 9, + "text": "4.9.4-7" + }, + "4955": { + "index": 10, + "text": "4.9.5-5" + }, + "4961": { + "index": 11, + "text": "4.9.6-1" + }, + "4972": { + "index": 12, + "text": "4.9.7-2" + }, + "CNV": { + "index": 112, + "text": "CNV" + }, + "KATA": { + "index": 116, + "text": "KATA" + }, + "OCP": { + "index": 108, + "text": "OCP" + }, + "ODF": { + "index": 120, + "text": "ODF" + }, + "Product Versions": { + "index": 107, + "text": "Product Versions" + } + }, + "type": "value" + } + ], + "thresholds": { + "mode": "absolute", + "steps": [ + { + "color": "green", + "value": null + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "Ci Status" + }, + "properties": [ + { + "id": "color", + "value": { + "mode": "continuous-RdYlGr" + } + } + ] + } + ] + }, + "gridPos": { + "h": 6, + "w": 24, + "x": 0, + "y": 6 + }, + "id": 3, + "interval": "1d", + "links": [ + { + "targetBlank": true, + "title": "OCP version", + "url": "https://openshift-release.apps.ci.l2s4.p1.openshiftapps.com/" + } + ], + "options": { + "alignValue": "right", + "legend": { + "displayMode": "hidden", + "placement": "bottom" + }, + "mergeValues": true, + "rowHeight": 0.84999999999999998, + "showValue": "always", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "Openshift", + "bucketAggs": [ + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "ci_minutes_time", + "id": "1", + "settings": { + "script": "Integer.parseInt(\"0\"+doc[\"ocp_version.keyword\"].value.replace(\".\",\"\").replace(\"r\",\"\").replace(\"c\",\"\").replace(\"f\",\"\").replace(\"-\",\"\").replace(\"e\",\"1\").replace(\"c\",\"\").replace(\"r\",\"\"))" + }, + "type": "max" + } + ], + "query": "_exists_:ocp_version AND ocp_version:$ocp_version", + "refId": "A", + "timeField": "timestamp" + }, + { + "alias": "CNV Nightly op.", + "bucketAggs": [ + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "ci_minutes_time", + "id": "1", + "settings": { + "script": "(doc[\"cnv_version.keyword\"].value.indexOf(\" \") == -1) ? Integer.parseInt(\"0\"+doc[\"cnv_version.keyword\"].value.replace(\".\",\"\").replace(\"r\",\"\").replace(\"c\",\"\").replace(\"f\",\"\").replace(\"-\",\"\")) : 0" + }, + "type": "max" + } + ], + "query": "_exists_:cnv_version AND ocp_version:$ocp_version", + "refId": "C", + "timeField": "timestamp" + }, + { + "alias": "KATA op.", + "bucketAggs": [ + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "ci_minutes_time", + "id": "1", + "settings": { + "script": "(doc[\"kata_version.keyword\"].value.indexOf(\" \") == -1) ? Integer.parseInt(doc[\"kata_version.keyword\"].value.replace(\".\",\"\")) : 0" + }, + "type": "max" + } + ], + "query": "_exists_:kata_version AND ocp_version:$ocp_version", + "refId": "D", + "timeField": "timestamp" + }, + { + "alias": "Kata rpm", + "bucketAggs": [ + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "ci_minutes_time", + "id": "1", + "settings": { + "script": "Integer.parseInt(\"0\"+doc[\"kata_rpm_version.keyword\"].value.replace(\".\",\"\").replace(\"r\",\"\").replace(\"c\",\"\").replace(\"f\",\"\").replace(\"-\",\"\").replace(\"e\",\"1\").replace(\"c\",\"\").replace(\"r\",\"\"))" + }, + "type": "max" + } + ], + "query": "_exists_:kata_rpm_version AND ocp_version:$ocp_version", + "refId": "F", + "timeField": "timestamp" + }, + { + "alias": "ODF op.", + "bucketAggs": [ + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "ci_minutes_time", + "id": "1", + "settings": { + "script": "((doc[\"odf_version.keyword\"].size() != 0) ? ((doc[\"odf_version.keyword\"].value.indexOf(\" \") == -1) ? Integer.parseInt(\"0\"+doc[\"odf_version.keyword\"].value.replace(\".\",\"\").replace(\"r\",\"\").replace(\"c\",\"\").replace(\"f\",\"\").replace(\"-\",\"\")) : 0) : 0)" + }, + "type": "max" + } + ], + "query": "_exists_:odf_version AND ocp_version:$ocp_version", + "refId": "E", + "timeField": "timestamp" + }, + { + "alias": "ODF # disks", + "bucketAggs": [ + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "odf_disk_count", + "id": "1", + "settings": { }, + "type": "max" + } + ], + "query": "ocp_version:$ocp_version", + "refId": "B", + "timeField": "timestamp" + }, + { + "alias": "Ci Status", + "bucketAggs": [ + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "status#", + "id": "1", + "settings": { }, + "type": "max" + } + ], + "query": "ocp_version:$ocp_version", + "refId": "B", + "timeField": "timestamp" + } + ], + "title": "Product Versions", + "type": "state-timeline" + }, + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 12 + }, + "id": 4, + "panels": [ + { + "datasource": "Elasticsearch-hammerdb-results", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "dark-red" + }, + { + "color": "semi-dark-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 38, + "w": 24, + "x": 0, + "y": 13 + }, + "id": 5, + "interval": "1d", + "links": [ + { + "targetBlank": true, + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&viewPanel=128" + } + ], + "options": { + "alignValue": "center", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.90000000000000002, + "showValue": "always", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "{{term db_type.keyword}} : {{term current_worker}} threads : {{term kind.keyword}}: {{term storage_type.keyword}}", + "bucketAggs": [ + { + "field": "db_type.keyword", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "current_worker", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "storage_type.keyword", + "id": "5", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "kind.keyword", + "id": "6", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "tpm", + "id": "1", + "settings": { + "script": "_value/1000" + }, + "type": "max" + } + ], + "query": "_exists_:tpm AND db_type:$db_type AND current_worker:$current_worker AND kind:$kind AND ocp_version:$ocp_version", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "HammerDB KTPM", + "type": "state-timeline" + } + ], + "title": "Hammerdb", + "type": "row" + }, + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 13 + }, + "id": 6, + "panels": [ + { + "datasource": "Elasticsearch-uperf-results", + "description": "Lower is better", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "decimals": 1, + "mappings": [ ], + "max": -1, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "dark-blue" + }, + { + "color": "dark-green", + "value": 1 + }, + { + "color": "super-light-green", + "value": 10 + }, + { + "color": "semi-dark-orange", + "value": 20 + }, + { + "color": "dark-red", + "value": 50 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 15, + "w": 24, + "x": 0, + "y": 52 + }, + "id": 7, + "interval": "1d", + "links": [ + { + "targetBlank": true, + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&viewPanel=129" + } + ], + "options": { + "alignValue": "center", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.90000000000000002, + "showValue": "always", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "msg size: {{term read_message_size}} :{{term num_threads}}th: {{term kind.keyword}}", + "bucketAggs": [ + { + "field": "read_message_size", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "num_threads", + "id": "5", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "kind.keyword", + "id": "6", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "datasource": { + "type": "elasticsearch", + "uid": "cd4b9568-576c-4528-b200-89b91a098410" + }, + "metrics": [ + { + "field": "norm_ltcy", + "id": "1", + "settings": { }, + "type": "avg" + } + ], + "query": "_exists_:norm_ltcy AND read_message_size:(64 OR 1024 OR 8192) AND num_threads:(1) AND test_type:rr AND norm_ltcy:<1000 AND kind:$kind AND ocp_version:$ocp_version", + "refId": "A", + "timeField": "timestamp" + }, + { + "alias": "msg size: {{term read_message_size}} :{{term num_threads}}th: {{term kind.keyword}}", + "bucketAggs": [ + { + "field": "read_message_size", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "num_threads", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "kind.keyword", + "id": "5", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "datasource": { + "type": "elasticsearch", + "uid": "cd4b9568-576c-4528-b200-89b91a098410" + }, + "hide": false, + "metrics": [ + { + "field": "norm_ltcy", + "id": "1", + "settings": { + "script": "_value*8" + }, + "type": "avg" + } + ], + "query": "_exists_:norm_ltcy AND read_message_size:(64 OR 1024 OR 8192) AND num_threads:(8) AND test_type:rr AND norm_ltcy:<1000 AND kind:$kind AND ocp_version:$ocp_version", + "refId": "B", + "timeField": "timestamp" + } + ], + "title": "Uperf Latency (usecs)", + "type": "state-timeline" + }, + { + "datasource": "Elasticsearch-uperf-results", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "decimals": 1, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "semi-dark-red" + }, + { + "color": "semi-dark-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 15, + "w": 24, + "x": 0, + "y": 67 + }, + "id": 8, + "interval": "1d", + "links": [ + { + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&viewPanel=129" + } + ], + "options": { + "alignValue": "center", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.90000000000000002, + "showValue": "always", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "msg size: {{term read_message_size}} :{{term num_threads}}th: {{term kind.keyword}}", + "bucketAggs": [ + { + "field": "read_message_size", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "num_threads", + "id": "5", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "kind.keyword", + "id": "6", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "norm_byte", + "id": "1", + "settings": { + "script": "_value*8/1000000000" + }, + "type": "avg" + } + ], + "query": "_exists_:norm_ops AND read_message_size:(64 OR 1024 OR 8192) AND num_threads:(1 OR 8) AND test_type:stream AND kind:$kind AND ocp_version:$ocp_version", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "Uperf Throughput (Gbits/s)", + "type": "state-timeline" + } + ], + "title": "Uperf", + "type": "row" + }, + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 14 + }, + "id": 9, + "panels": [ + { + "datasource": "Elasticsearch-vdbench-results", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "dark-red" + }, + { + "color": "semi-dark-orange", + "value": 50 + }, + { + "color": "light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 48, + "w": 24, + "x": 0, + "y": 83 + }, + "id": 10, + "interval": "1d", + "links": [ + { + "targetBlank": true, + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&from=now-45d&to=now&viewPanel=133" + }, + { + "title": "scale log link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&from=now-45d&to=now&viewPanel=195" + } + ], + "options": { + "alignValue": "center", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.90000000000000002, + "showValue": "always", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "{{term Run.keyword}} : {{term Threads}}th : 1 {{term kind.keyword}}", + "bucketAggs": [ + { + "field": "Run.keyword", + "id": "2", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "kind.keyword", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "Threads", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "5", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "Rate", + "id": "1", + "type": "avg" + } + ], + "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", + "refId": "A", + "timeField": "timestamp" + }, + { + "alias": "Total {{term kind.keyword}} Memory (GB) [384GB]", + "bucketAggs": [ + { + "field": "kind.keyword", + "id": "6", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "5", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "total_Memory", + "id": "1", + "settings": { + "script": "_value/1000000000" + }, + "type": "max" + } + ], + "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", + "refId": "B", + "timeField": "timestamp" + }, + { + "alias": "Total {{term kind.keyword}} %CPU [240 cores]", + "bucketAggs": [ + { + "field": "kind.keyword", + "id": "6", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "5", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "total_CPU", + "id": "1", + "type": "max" + } + ], + "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", + "refId": "C", + "timeField": "timestamp" + }, + { + "alias": "{{term Run.keyword}} : {{term Threads}}th :{{term scale}} {{term kind.keyword}}s", + "bucketAggs": [ + { + "field": "Run.keyword", + "id": "2", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "kind.keyword", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "Threads", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "scale", + "id": "6", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "5", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "Rate", + "id": "1", + "type": "avg" + } + ], + "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", + "refId": "D", + "timeField": "timestamp" + }, + { + "alias": "Total {{term kind.keyword}} Memory (GB) [384GB]", + "bucketAggs": [ + { + "field": "kind.keyword", + "id": "2", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "5", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "total_Memory", + "id": "1", + "settings": { + "script": "_value/1000000000" + }, + "type": "max" + } + ], + "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", + "refId": "E", + "timeField": "timestamp" + }, + { + "alias": "Total {{term kind.keyword}} %CPU [240 cores]", + "bucketAggs": [ + { + "field": "kind.keyword", + "id": "2", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "5", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "total_CPU", + "id": "1", + "settings": { }, + "type": "max" + } + ], + "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", + "refId": "F", + "timeField": "timestamp" + } + ], + "title": "vdbench (IOPS)", + "type": "state-timeline" + }, + { + "datasource": "Elasticsearch-vdbench-results", + "description": "Lower is better", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "decimals": 1, + "mappings": [ ], + "max": -1, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "dark-blue" + }, + { + "color": "dark-green", + "value": 1 + }, + { + "color": "super-light-green", + "value": 10 + }, + { + "color": "semi-dark-orange", + "value": 20 + }, + { + "color": "dark-red", + "value": 50 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 50, + "w": 24, + "x": 0, + "y": 131 + }, + "id": 11, + "interval": "1d", + "links": [ + { + "targetBlank": true, + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&editPanel=133&from=now-45d&to=now" + } + ], + "options": { + "alignValue": "center", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.90000000000000002, + "showValue": "always", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "{{term Run.keyword}} : {{term Threads}}th : 1 {{term kind.keyword}}", + "bucketAggs": [ + { + "field": "Run.keyword", + "id": "2", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "kind.keyword", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "Threads", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "5", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "Resp", + "id": "1", + "type": "avg" + } + ], + "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", + "refId": "A", + "timeField": "timestamp" + }, + { + "alias": "\"Total {{term kind.keyword}} Memory (GB) [384GB]", + "bucketAggs": [ + { + "field": "kind.keyword", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "5", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "total_Memory", + "id": "1", + "settings": { + "script": "_value/1000000000" + }, + "type": "max" + } + ], + "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", + "refId": "B", + "timeField": "timestamp" + }, + { + "alias": "Total {{term kind.keyword}} %CPU [240 cores]", + "bucketAggs": [ + { + "field": "kind.keyword", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "5", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "total_CPU", + "id": "1", + "settings": { }, + "type": "max" + } + ], + "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", + "refId": "D", + "timeField": "timestamp" + }, + { + "alias": "{{term Run.keyword}} : {{term Threads}}th :{{term scale}} {{term kind.keyword}}s", + "bucketAggs": [ + { + "field": "Run.keyword", + "id": "2", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "kind.keyword", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "Threads", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "scale", + "id": "6", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "5", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "Resp", + "id": "1", + "type": "avg" + } + ], + "query": "SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", + "refId": "C", + "timeField": "timestamp" + }, + { + "alias": "Total {{term kind.keyword}} Memory (GB) [384GB]", + "bucketAggs": [ + { + "field": "kind.keyword", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "5", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "total_Memory", + "id": "1", + "settings": { + "script": "_value/1000000000" + }, + "type": "max" + } + ], + "query": "SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", + "refId": "E", + "timeField": "timestamp" + }, + { + "alias": "Total {{term kind.keyword}} %CPU [240 cores]", + "bucketAggs": [ + { + "field": "kind.keyword", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "5", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "total_CPU", + "id": "1", + "settings": { }, + "type": "max" + } + ], + "query": "SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", + "refId": "F", + "timeField": "timestamp" + } + ], + "title": "vdbench Latency (sec)", + "type": "state-timeline" + } + ], + "title": "Vdbench", + "type": "row" + }, + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 15 + }, + "id": 12, + "panels": [ + { + "datasource": "Elasticsearch-clusterbuster-cpusoaker-results", + "description": "Higher is better", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "red" + }, + { + "color": "semi-dark-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 10, + "w": 24, + "x": 0, + "y": 182 + }, + "id": 13, + "interval": "1d", + "links": [ + { + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" + } + ], + "options": { + "alignValue": "left", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.69999999999999996, + "showValue": "auto", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "Max {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "test_description.pods", + "id": "6", + "type": "max" + } + ], + "query": "", + "refId": "A", + "timeField": "timestamp" + }, + { + "alias": "CPU Iterations/sec {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "iterations_cpu_sec", + "id": "6", + "settings": { + "script": "_value/1000000" + }, + "type": "max" + } + ], + "query": "", + "refId": "B", + "timeField": "timestamp" + } + ], + "title": "Cpusoaker", + "transformations": [ + { + "id": "calculateField", + "options": { + "alias": "Diff Max ( runc - kata)", + "binary": { + "left": "Max runc", + "operator": "-", + "reducer": "sum", + "right": "Max kata" + }, + "mode": "reduceRow", + "reduce": { + "include": [ + "Max kata", + "Max runc" + ], + "reducer": "range" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "Diff CPU( kata / runc)", + "binary": { + "left": "CPU Iterations/sec kata", + "operator": "/", + "reducer": "sum", + "right": "CPU Iterations/sec runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "CPU Iterations/sec runc", + "CPU Iterations/sec kata" + ], + "reducer": "diff" + } + } + }, + { + "id": "organize", + "options": { + "excludeByName": { + "CPU Iterations/sec clusterbuster-ci": true, + "Diff Max ( runc - kata)": true, + "Max clusterbuster-ci": true + }, + "indexByName": { + "CPU Iterations/sec clusterbuster-ci": 5, + "CPU Iterations/sec kata": 3, + "CPU Iterations/sec runc": 2, + "Diff CPU( kata / runc)": 6, + "Diff Max ( runc - kata)": 1, + "Max clusterbuster-ci": 4, + "Max kata": 8, + "Max runc": 7, + "Time": 0 + }, + "renameByName": { } + } + }, + { + "id": "convertFieldType", + "options": { + "conversions": [ + { + "destinationType": "number", + "targetField": "Ratio Last( kata/ runc)" + }, + { + "destinationType": "number", + "targetField": "Diff CPU( kata / runc)" + } + ], + "fields": { } + } + } + ], + "type": "state-timeline" + }, + { + "datasource": "Elasticsearch-clusterbuster-cpusoaker-results", + "description": "Lower is better", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "decimals": 1, + "mappings": [ ], + "max": -1, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "dark-blue" + }, + { + "color": "dark-green", + "value": 1 + }, + { + "color": "super-light-green", + "value": 10 + }, + { + "color": "semi-dark-orange", + "value": 20 + }, + { + "color": "dark-red", + "value": 50 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 3, + "w": 24, + "x": 0, + "y": 192 + }, + "id": 14, + "interval": "1d", + "links": [ + { + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" + } + ], + "options": { + "alignValue": "left", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.69999999999999996, + "showValue": "auto", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "Max {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "test_description.pods", + "id": "6", + "type": "max" + } + ], + "query": "", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "", + "transformations": [ + { + "id": "calculateField", + "options": { + "alias": "Diff Max ( runc - kata)", + "binary": { + "left": "Max runc", + "operator": "-", + "reducer": "sum", + "right": "Max kata" + }, + "mode": "reduceRow", + "reduce": { + "include": [ + "Max kata", + "Max runc" + ], + "reducer": "range" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "Diff CPU( kata / runc)", + "binary": { + "left": "CPU Iterations/sec kata", + "operator": "/", + "reducer": "sum", + "right": "CPU Iterations/sec runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "CPU Iterations/sec runc", + "CPU Iterations/sec kata" + ], + "reducer": "diff" + } + } + }, + { + "id": "organize", + "options": { + "excludeByName": { + "CPU Iterations/sec clusterbuster-ci": true, + "Diff Max ( runc - kata)": false, + "Max clusterbuster-ci": true, + "Max kata": true, + "Max runc": true, + "Time": false + }, + "indexByName": { + "CPU Iterations/sec kata": 14, + "CPU Iterations/sec runc": 13, + "Diff CPU( kata - runc)": 15, + "Diff First( kata - runc)": 6, + "Diff Max ( runc - kata)": 3, + "Diff Memory( kata - runc)": 12, + "First start (sec) kata": 5, + "First start (sec) runc": 4, + "Last start (sec) kata": 8, + "Last start (sec) runc": 7, + "Max kata": 2, + "Max runc": 1, + "Memory (GB) kata": 11, + "Memory (GB) runc": 10, + "Ratio Last( kata/ runc)": 9, + "Time": 0 + }, + "renameByName": { } + } + }, + { + "id": "convertFieldType", + "options": { + "conversions": [ + { + "destinationType": "number", + "targetField": "Ratio Last( kata/ runc)" + }, + { + "destinationType": "number", + "targetField": "Diff CPU( kata / runc)" + } + ], + "fields": { } + } + } + ], + "type": "state-timeline" + }, + { + "datasource": "Elasticsearch-clusterbuster-cpusoaker-results", + "description": "Lower is better", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "mappings": [ ], + "max": -1, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "dark-blue" + }, + { + "color": "dark-green", + "value": 1 + }, + { + "color": "super-light-green", + "value": 10 + }, + { + "color": "light-red", + "value": 20 + }, + { + "color": "dark-red", + "value": 50 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 10, + "w": 24, + "x": 0, + "y": 195 + }, + "id": 15, + "interval": "1d", + "links": [ + { + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" + } + ], + "options": { + "alignValue": "left", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.90000000000000002, + "showValue": "auto", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "First start (sec) {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "first_pod_start", + "id": "6", + "type": "max" + } + ], + "query": "", + "refId": "A", + "timeField": "timestamp" + }, + { + "alias": "Last start (sec) {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "last_pod_start", + "id": "6", + "type": "max" + } + ], + "query": "", + "refId": "B", + "timeField": "timestamp" + }, + { + "alias": "Memory (MB) {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "memory_per_pod", + "id": "6", + "settings": { + "script": "_value/1000000" + }, + "type": "max" + } + ], + "query": "", + "refId": "C", + "timeField": "timestamp" + } + ], + "title": "", + "transformations": [ + { + "id": "calculateField", + "options": { + "alias": "Diff First( kata - runc)", + "mode": "reduceRow", + "reduce": { + "include": [ + "First start (sec) runc", + "First start (sec) kata" + ], + "reducer": "diff" + }, + "replaceFields": false + } + }, + { + "id": "calculateField", + "options": { + "alias": "Ratio Last( kata/ runc)", + "binary": { + "left": "Last start (sec) kata", + "operator": "/", + "reducer": "sum", + "right": "Last start (sec) runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "Last start (sec) runc", + "Last start (sec) kata" + ], + "reducer": "diff" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "Diff Memory( kata - runc)", + "binary": { + "left": "Memory (GB) runc", + "operator": "-", + "reducer": "sum", + "right": "Memory (GB) kata" + }, + "mode": "reduceRow", + "reduce": { + "include": [ + "Memory (MB) runc", + "Memory (MB) kata" + ], + "reducer": "diff" + } + } + }, + { + "id": "organize", + "options": { + "excludeByName": { + "First start (sec) clusterbuster-ci": true, + "Last start (sec) clusterbuster-ci": true, + "Memory (MB) clusterbuster-ci": true + }, + "indexByName": { + "Diff First( kata - runc)": 3, + "Diff Memory( kata - runc)": 11, + "First start (sec) clusterbuster-ci": 7, + "First start (sec) kata": 2, + "First start (sec) runc": 1, + "Last start (sec) clusterbuster-ci": 8, + "Last start (sec) kata": 5, + "Last start (sec) runc": 4, + "Memory (MB) clusterbuster-ci": 12, + "Memory (MB) kata": 10, + "Memory (MB) runc": 9, + "Ratio Last( kata/ runc)": 6, + "Time": 0 + }, + "renameByName": { } + } + }, + { + "id": "convertFieldType", + "options": { + "conversions": [ + { + "destinationType": "number", + "targetField": "Ratio Last( kata/ runc)" + }, + { + "destinationType": "number", + "targetField": "Diff CPU( kata / runc)" + } + ], + "fields": { } + } + } + ], + "type": "state-timeline" + } + ], + "title": "Clusterbuster - Cpusoaker", + "type": "row" + }, + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 16 + }, + "id": 16, + "panels": [ + { + "datasource": "Elasticsearch-clusterbuster-fio-results", + "description": "Higher is better", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "red" + }, + { + "color": "semi-dark-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 15, + "w": 24, + "x": 0, + "y": 183 + }, + "id": 17, + "interval": "1d", + "links": [ + { + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" + } + ], + "options": { + "alignValue": "center", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.90000000000000002, + "showValue": "always", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "read.iops: {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "read.iops", + "id": "6", + "settings": { + "script": "_value/1000" + }, + "type": "max" + } + ], + "query": "", + "refId": "A", + "timeField": "timestamp" + }, + { + "alias": "write.iops: {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "write.iops", + "id": "6", + "settings": { + "script": "_value/1000" + }, + "type": "max" + } + ], + "query": "", + "refId": "B", + "timeField": "timestamp" + }, + { + "alias": "total.iops: {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "total.iops", + "id": "6", + "settings": { + "script": "_value/1000" + }, + "type": "max" + } + ], + "query": "", + "refId": "C", + "timeField": "timestamp" + }, + { + "alias": "read.throughput: {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "read.throughput", + "id": "6", + "settings": { + "script": "_value/1000000" + }, + "type": "max" + } + ], + "query": "", + "refId": "D", + "timeField": "timestamp" + }, + { + "alias": "write.throughput: {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "write.throughput", + "id": "6", + "settings": { + "script": "_value/1000000" + }, + "type": "max" + } + ], + "query": "", + "refId": "E", + "timeField": "timestamp" + }, + { + "alias": "total.throughput: {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "total.throughput", + "id": "6", + "settings": { + "script": "_value/1000000" + }, + "type": "max" + } + ], + "query": "", + "refId": "F", + "timeField": "timestamp" + } + ], + "title": "FIO (IOPS/Throughtput)", + "transformations": [ + { + "id": "calculateField", + "options": { + "alias": "read.iops kata/runc", + "binary": { + "left": "read.iops: kata", + "operator": "/", + "reducer": "sum", + "right": "read.iops: runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "read.iops: runc", + "read.iops: kata" + ], + "reducer": "diffperc" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "write.iops kata/runc", + "binary": { + "left": "write.iops: kata", + "operator": "/", + "reducer": "sum", + "right": "write.iops: runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "write.iops: runc", + "write.iops: kata" + ], + "reducer": "sum" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "total.iops kata/runc", + "binary": { + "left": "total.iops: kata", + "operator": "/", + "reducer": "sum", + "right": "total.iops: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "read.throughput kata/runc", + "binary": { + "left": "read.throughput: kata", + "operator": "/", + "reducer": "sum", + "right": "read.throughput: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "write.throughput kata/runc", + "binary": { + "left": "write.throughput: kata", + "operator": "/", + "reducer": "sum", + "right": "write.throughput: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "total.throughput kata/runc", + "binary": { + "left": "total.throughput: kata", + "operator": "/", + "reducer": "sum", + "right": "total.throughput: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + } + }, + { + "id": "organize", + "options": { + "excludeByName": { + "read.iops: clusterbuster-ci": true, + "read.throughput: clusterbuster-ci": true, + "total.iops: clusterbuster-ci": true, + "total.throughput: clusterbuster-ci": true, + "write.iops: clusterbuster-ci": true, + "write.throughput: clusterbuster-ci": true + }, + "indexByName": { + "Time": 0, + "read.iops kata/runc": 3, + "read.iops: kata": 2, + "read.iops: runc": 1, + "read.throughput kata/runc": 12, + "read.throughput: kata": 11, + "read.throughput: runc": 10, + "total.iops kata/runc": 9, + "total.iops: kata": 8, + "total.iops: runc": 7, + "total.throughput kata/runc": 18, + "total.throughput: kata": 17, + "total.throughput: runc": 16, + "write.iops kata/runc": 6, + "write.iops: kata": 5, + "write.iops: runc": 4, + "write.throughput kata/runc": 15, + "write.throughput: kata": 14, + "write.throughput: runc": 13 + }, + "renameByName": { } + } + }, + { + "id": "convertFieldType", + "options": { + "conversions": [ + { + "destinationType": "number", + "targetField": "read.iops kata/runc" + }, + { + "destinationType": "number", + "targetField": "write.iops kata/runc" + }, + { + "destinationType": "number", + "targetField": "total.iops kata/runc" + }, + { + "destinationType": "number", + "targetField": "read.throughput kata/runc" + }, + { + "destinationType": "number", + "targetField": "write.throughput kata/runc" + }, + { + "destinationType": "number", + "targetField": "total.throughput kata/runc" + } + ], + "fields": { } + } + } + ], + "type": "state-timeline" + } + ], + "title": "Clusterbuster - FIO", + "type": "row" + }, + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 17 + }, + "id": 18, + "panels": [ + { + "datasource": "Elasticsearch-clusterbuster-files-results", + "description": "Lower is better", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "decimals": 2, + "mappings": [ ], + "max": -1, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "dark-blue" + }, + { + "color": "dark-green", + "value": 1 + }, + { + "color": "super-light-green", + "value": 10 + }, + { + "color": "semi-dark-orange", + "value": 20 + }, + { + "color": "dark-red", + "value": 50 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 16, + "w": 24, + "x": 0, + "y": 184 + }, + "id": 19, + "interval": "1d", + "links": [ + { + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" + } + ], + "options": { + "alignValue": "left", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.90000000000000002, + "showValue": "auto", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "create: 4096: {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "create.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.filesize:4096", + "refId": "A", + "timeField": "timestamp" + }, + { + "alias": "create: 262,144: {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "create.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.filesize:262144", + "refId": "G", + "timeField": "timestamp" + }, + { + "alias": "read : 4096: {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "read.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.filesize:4096", + "refId": "C", + "timeField": "timestamp" + }, + { + "alias": "read : 262,144: {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "read.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.filesize:262144", + "refId": "I", + "timeField": "timestamp" + }, + { + "alias": "remove : 4096: {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "remove.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.filesize:4096", + "refId": "E", + "timeField": "timestamp" + }, + { + "alias": "remove : 262,144: {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.runtime.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "remove.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.filesize:262144", + "refId": "K", + "timeField": "timestamp" + } + ], + "title": "Files (sec)", + "transformations": [ + { + "id": "calculateField", + "options": { + "alias": "create 4096 kata/runc", + "binary": { + "left": "create: 4096: kata", + "operator": "/", + "reducer": "sum", + "right": "create: 4096: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "create 262,144 kata/runc", + "binary": { + "left": "create: 262,144: kata", + "operator": "/", + "reducer": "sum", + "right": "create: 262,144: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "read 4096 kata/runc", + "binary": { + "left": "read : 4096: kata", + "operator": "/", + "reducer": "sum", + "right": "read : 4096: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "read 262,144 kata/runc", + "binary": { + "left": "read : 262,144: kata", + "operator": "/", + "reducer": "sum", + "right": "read : 262,144: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "remove 4096 kata/runc", + "binary": { + "left": "remove : 4096: kata", + "operator": "/", + "reducer": "sum", + "right": "remove : 4096: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "remove 262,144 kata/runc", + "binary": { + "left": "remove : 262,144: kata", + "operator": "/", + "reducer": "sum", + "right": "remove : 262,144: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + } + }, + { + "id": "organize", + "options": { + "excludeByName": { + "create: 262,144: clusterbuster-ci": true, + "create: 4096: clusterbuster-ci": true, + "read : 262,144: clusterbuster-ci": true, + "read : 4096: clusterbuster-ci": true, + "remove : 262,144: clusterbuster-ci": true, + "remove : 4096: clusterbuster-ci": true + }, + "indexByName": { + "Time": 0, + "create 262,144 kata/runc": 6, + "create 4096 kata/runc": 3, + "create: 262,144: kata": 5, + "create: 262,144: runc": 4, + "create: 4096: kata": 2, + "create: 4096: runc": 1, + "read 262,144 kata/runc": 12, + "read 4096 kata/runc": 9, + "read : 262,144: kata": 11, + "read : 262,144: runc": 10, + "read : 4096: kata": 8, + "read : 4096: runc": 7, + "remove 262,144 kata/runc": 18, + "remove 4096 kata/runc": 15, + "remove : 262,144: kata": 17, + "remove : 262,144: runc": 16, + "remove : 4096: kata": 14, + "remove : 4096: runc": 13 + }, + "renameByName": { } + } + }, + { + "id": "convertFieldType", + "options": { + "conversions": [ + { + "destinationType": "number", + "targetField": "create 4096 kata/runc" + }, + { + "destinationType": "number", + "targetField": "create 262,144 kata/runc" + }, + { + "destinationType": "number", + "targetField": "read 4096 kata/runc" + }, + { + "destinationType": "number", + "targetField": "read 262,144 kata/runc" + }, + { + "destinationType": "number", + "targetField": "remove 4096 kata/runc" + }, + { + "destinationType": "number", + "targetField": "remove 262,144 kata/runc" + } + ], + "fields": { } + } + } + ], + "type": "state-timeline" + } + ], + "title": "Clusterbuster - Files", + "type": "row" + }, + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 18 + }, + "id": 20, + "panels": [ + { + "datasource": "Elasticsearch-clusterbuster-uperf-results", + "description": "Lower is better", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "decimals": 2, + "mappings": [ ], + "max": -1, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "dark-blue" + }, + { + "color": "dark-green", + "value": 1 + }, + { + "color": "super-light-green", + "value": 10 + }, + { + "color": "semi-dark-orange", + "value": 20 + }, + { + "color": "dark-red", + "value": 50 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 9, + "w": 24, + "x": 0, + "y": 185 + }, + "id": 21, + "interval": "1d", + "links": [ + { + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" + } + ], + "options": { + "alignValue": "left", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.69999999999999996, + "showValue": "auto", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "latency: {{term test_description.msgsize}}: {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.msgsize", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "test_description.runtime.keyword", + "id": "9", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "max_time_op", + "id": "6", + "settings": { + "script": "_value*1000" + }, + "type": "max" + } + ], + "query": "", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "Uperf (Latency)", + "transformations": [ + { + "id": "calculateField", + "options": { + "alias": "rate:64 kata/runc", + "binary": { + "left": "rate: 64: kata", + "operator": "/", + "reducer": "sum", + "right": "rate: 64: runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "rate: 64: runc", + "rate: 64: kata" + ], + "reducer": "sum" + }, + "replaceFields": false + } + }, + { + "id": "calculateField", + "options": { + "alias": "rate:1024 kata/runc", + "binary": { + "left": "rate: 1024: kata", + "operator": "/", + "reducer": "sum", + "right": "rate: 1024: runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "rate: 1024: runc", + "rate: 1024: kata" + ], + "reducer": "sum" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "rate:8192 kata/runc", + "binary": { + "left": "rate: 8192: kata", + "operator": "/", + "reducer": "sum", + "right": "rate: 8192: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + } + }, + { + "id": "organize", + "options": { + "excludeByName": { + "latency: 1024: clusterbuster-ci": true, + "latency: 64: clusterbuster-ci": true, + "latency: 8192: clusterbuster-ci": true + }, + "indexByName": { + "Time": 0, + "rate: 1024: kata": 5, + "rate: 1024: runc": 4, + "rate: 64: kata": 2, + "rate: 64: runc": 1, + "rate: 8192: kata": 8, + "rate: 8192: runc": 7, + "rate:1024 kata/runc": 6, + "rate:64 kata/runc": 3, + "rate:8192 kata/runc": 9 + }, + "renameByName": { } + } + }, + { + "id": "convertFieldType", + "options": { + "conversions": [ + { + "destinationType": "number", + "targetField": "rate:64 kata/runc" + }, + { + "destinationType": "number", + "targetField": "rate:1024 kata/runc" + }, + { + "destinationType": "number", + "targetField": "rate:8192 kata/runc" + } + ], + "fields": { } + } + } + ], + "type": "state-timeline" + }, + { + "datasource": "Elasticsearch-clusterbuster-uperf-results", + "description": "Higher is better", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "red" + }, + { + "color": "semi-dark-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 12, + "w": 24, + "x": 0, + "y": 194 + }, + "id": 22, + "interval": "1d", + "links": [ + { + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" + } + ], + "options": { + "alignValue": "left", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.69999999999999996, + "showValue": "auto", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "rate: {{term test_description.msgsize}}: {{term test_description.runtime.keyword}}", + "bucketAggs": [ + { + "field": "test_description.msgsize", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "test_description.runtime.keyword", + "id": "9", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "rate", + "id": "6", + "settings": { + "script": "_value/1000000" + }, + "type": "max" + } + ], + "query": "", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "Uperf (Throughput)", + "transformations": [ + { + "id": "calculateField", + "options": { + "alias": "rate: 64 kata/runc", + "binary": { + "left": "rate: 64: kata", + "operator": "/", + "reducer": "sum", + "right": "rate: 64: runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "rate: 64: runc", + "rate: 64: kata" + ], + "reducer": "sum" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "rate: 1024: kata/runc", + "binary": { + "left": "rate: 1024: kata", + "operator": "/", + "reducer": "sum", + "right": "rate: 1024: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + } + }, + { + "id": "calculateField", + "options": { + "alias": "rate:8192: kata/runc", + "binary": { + "left": "rate: 8192: kata", + "operator": "/", + "reducer": "sum", + "right": "rate: 8192: runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "rate: 8192: runc", + "rate: 8192: kata" + ], + "reducer": "sum" + } + } + }, + { + "id": "organize", + "options": { + "excludeByName": { + "rate: 1024: clusterbuster-ci": true, + "rate: 64: clusterbuster-ci": true, + "rate: 8192: clusterbuster-ci": true + }, + "indexByName": { + "Time": 0, + "rate: 1024: kata": 5, + "rate: 1024: kata/runc": 6, + "rate: 1024: runc": 4, + "rate: 64 kata/runc": 3, + "rate: 64: kata": 2, + "rate: 64: runc": 1, + "rate: 8192: kata": 8, + "rate: 8192: runc": 7, + "rate:8192: kata/runc": 9 + }, + "renameByName": { } + } + }, + { + "id": "convertFieldType", + "options": { + "conversions": [ + { + "destinationType": "number", + "targetField": "rate: 64 kata/runc" + }, + { + "destinationType": "number", + "targetField": "rate: 1024: kata/runc" + }, + { + "destinationType": "number", + "targetField": "rate:8192: kata/runc" + } + ], + "fields": { } + } + } + ], + "type": "state-timeline" + } + ], + "title": "Clusterbuster - Uperf", + "type": "row" + }, + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 19 + }, + "id": 23, + "panels": [ + { + "datasource": "Elasticsearch-clusterbuster-cpusoaker-release-results", + "description": "OVN - 09/19", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "red" + }, + { + "color": "semi-dark-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 36, + "w": 24, + "x": 0, + "y": 261 + }, + "id": 24, + "interval": "1d", + "links": [ + { + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=1659592686997&to=1663480686997&viewPanel=166" + } + ], + "options": { + "alignValue": "left", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.90000000000000002, + "showValue": "auto", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "pod: max", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "datasource": { + "type": "elasticsearch", + "uid": "cd4b9568-576c-4528-b200-89b91a098410" + }, + "hide": false, + "metrics": [ + { + "field": "test_description.pods", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='runc'", + "refId": "A", + "timeField": "timestamp" + }, + { + "alias": "kata: max", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "datasource": { + "type": "elasticsearch", + "uid": "cd4b9568-576c-4528-b200-89b91a098410" + }, + "hide": false, + "metrics": [ + { + "field": "test_description.pods", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='kata'", + "refId": "B", + "timeField": "timestamp" + }, + { + "alias": "pod: Memory per pod (MB)", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "datasource": { + "type": "elasticsearch", + "uid": "cd4b9568-576c-4528-b200-89b91a098410" + }, + "hide": false, + "metrics": [ + { + "field": "memory_per_pod", + "id": "6", + "settings": { + "script": "_value/1000000" + }, + "type": "max" + } + ], + "query": "test_description.runtime='runc'", + "refId": "C", + "timeField": "timestamp" + }, + { + "alias": "kata: Memory per kata (MB)", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "datasource": { + "type": "elasticsearch", + "uid": "cd4b9568-576c-4528-b200-89b91a098410" + }, + "hide": false, + "metrics": [ + { + "field": "memory_per_pod", + "id": "6", + "settings": { + "script": "_value/1000000" + }, + "type": "max" + } + ], + "query": "test_description.runtime='kata'", + "refId": "D", + "timeField": "timestamp" + }, + { + "alias": "\"pod: start per seconds", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "datasource": { + "type": "elasticsearch", + "uid": "cd4b9568-576c-4528-b200-89b91a098410" + }, + "hide": false, + "metrics": [ + { + "field": "pod_starts_per_second", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='runc'", + "refId": "E", + "timeField": "timestamp" + }, + { + "alias": "kata: start per seconds", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "datasource": { + "type": "elasticsearch", + "uid": "cd4b9568-576c-4528-b200-89b91a098410" + }, + "hide": false, + "metrics": [ + { + "field": "pod_starts_per_second", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='kata'", + "refId": "F", + "timeField": "timestamp" + }, + { + "alias": "pod: Iteration cpu sec", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "datasource": { + "type": "elasticsearch", + "uid": "cd4b9568-576c-4528-b200-89b91a098410" + }, + "hide": false, + "metrics": [ + { + "field": "iterations_cpu_sec", + "id": "6", + "settings": { + "script": "_value/1000000" + }, + "type": "max" + } + ], + "query": "test_description.runtime='runc'", + "refId": "G", + "timeField": "timestamp" + }, + { + "alias": "kata: Iteration cpu sec", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "datasource": { + "type": "elasticsearch", + "uid": "cd4b9568-576c-4528-b200-89b91a098410" + }, + "hide": false, + "metrics": [ + { + "field": "iterations_cpu_sec", + "id": "6", + "settings": { + "script": "_value/1000000" + }, + "type": "max" + } + ], + "query": "test_description.runtime='kata'", + "refId": "H", + "timeField": "timestamp" + }, + { + "alias": "pod: Iteration sec", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "datasource": { + "type": "elasticsearch", + "uid": "cd4b9568-576c-4528-b200-89b91a098410" + }, + "hide": false, + "metrics": [ + { + "field": "iterations_sec", + "id": "6", + "settings": { + "script": "_value/1000000" + }, + "type": "max" + } + ], + "query": "test_description.runtime='runc'", + "refId": "I", + "timeField": "timestamp" + }, + { + "alias": "kata: Iteration sec", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "datasource": { + "type": "elasticsearch", + "uid": "cd4b9568-576c-4528-b200-89b91a098410" + }, + "hide": false, + "metrics": [ + { + "field": "iterations_sec", + "id": "6", + "settings": { + "script": "_value/1000000" + }, + "type": "max" + } + ], + "query": "test_description.runtime='kata'", + "refId": "J", + "timeField": "timestamp" + } + ], + "title": "clusterbuster-cpusoaker [OVN - 09/19]", + "type": "state-timeline" + }, + { + "datasource": "Elasticsearch-clusterbuster-files-release-results", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "red" + }, + { + "color": "semi-dark-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 36, + "w": 24, + "x": 0, + "y": 297 + }, + "id": 25, + "interval": "1d", + "links": [ + { + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" + } + ], + "options": { + "alignValue": "left", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.90000000000000002, + "showValue": "auto", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "pod: create: filesize 4096", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "create.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='runc' and test_description.filesize:4096", + "refId": "A", + "timeField": "timestamp" + }, + { + "alias": "kata: create: filesize 4096", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "create.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='kata' and test_description.filesize:4096", + "refId": "B", + "timeField": "timestamp" + }, + { + "alias": "pod: read : filesize 4096", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "read.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='runc' and test_description.filesize:4096", + "refId": "C", + "timeField": "timestamp" + }, + { + "alias": "kata: read: filesize 4096", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "read.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='kata' and test_description.filesize:4096", + "refId": "D", + "timeField": "timestamp" + }, + { + "alias": "pod: remove : filesize 4096", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "remove.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='runc' and test_description.filesize:4096", + "refId": "E", + "timeField": "timestamp" + }, + { + "alias": "kata: remove: filesize 4096", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "remove.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='kata' and test_description.filesize:4096", + "refId": "F", + "timeField": "timestamp" + }, + { + "alias": "pod: create: filesize 262,144", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "create.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='runc' and test_description.filesize:262144", + "refId": "G", + "timeField": "timestamp" + }, + { + "alias": "kata: create: filesize 262,144", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "create.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='kata' and test_description.filesize:262144", + "refId": "H", + "timeField": "timestamp" + }, + { + "alias": "pod: read : filesize 262,144", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "read.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='runc' and test_description.filesize:262144", + "refId": "I", + "timeField": "timestamp" + }, + { + "alias": "kata: read : filesize 262,144", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "read.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='kata' and test_description.filesize:262144", + "refId": "J", + "timeField": "timestamp" + }, + { + "alias": "pod: remove : filesize 262,144", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "remove.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='runc' and test_description.filesize:262144", + "refId": "K", + "timeField": "timestamp" + }, + { + "alias": "kata: remove: filesize 262,144", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "remove.elapsed_time", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='kata' and test_description.filesize:262144", + "refId": "K", + "timeField": "timestamp" + } + ], + "title": "clusterbuster-files: elapsed_time: Direct/ 64 dirs/files", + "type": "state-timeline" + }, + { + "datasource": "Elasticsearch-clusterbuster-fio-release-results", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "red" + }, + { + "color": "semi-dark-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 36, + "w": 24, + "x": 0, + "y": 333 + }, + "id": 26, + "interval": "1d", + "links": [ + { + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" + } + ], + "options": { + "alignValue": "left", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.90000000000000002, + "showValue": "auto", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "runc read", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "read.iops", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='runc'", + "refId": "A", + "timeField": "timestamp" + }, + { + "alias": "kata read", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "read.iops", + "id": "6", + "type": "max" + } + ], + "query": "test_description.runtime='kata'", + "refId": "B", + "timeField": "timestamp" + } + ], + "title": "clusterbuster-fio", + "type": "state-timeline" + }, + { + "datasource": "Elasticsearch-clusterbuster-uperf-release-results", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 70, + "lineWidth": 0 + }, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "red" + }, + { + "color": "semi-dark-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ ] + }, + "gridPos": { + "h": 36, + "w": 24, + "x": 0, + "y": 369 + }, + "id": 27, + "interval": "1d", + "links": [ + { + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" + } + ], + "options": { + "alignValue": "left", + "legend": { + "displayMode": "list", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.90000000000000002, + "showValue": "auto", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "runc rate", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "field": "rate", + "id": "6", + "settings": { + "script": "_value/1000000" + }, + "type": "max" + } + ], + "query": "test_description.runtime='runc'", + "refId": "A", + "timeField": "timestamp" + }, + { + "alias": "kata rate", + "bucketAggs": [ + { + "field": "timestamp", + "id": "7", + "settings": { + "interval": "auto", + "min_doc_count": "0", + "timeZone": "utc", + "trimEdges": "0" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "rate", + "id": "6", + "settings": { + "script": "_value/1000000" + }, + "type": "max" + } + ], + "query": "test_description.runtime='kata'", + "refId": "B", + "timeField": "timestamp" + } + ], + "title": "clusterbuster-uperf", + "type": "state-timeline" + } + ], + "title": "Clusterbuster - release", + "type": "row" + }, + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 20 + }, + "id": 28, + "panels": [ + { + "datasource": "Elasticsearch-bootstorm-results", + "description": "Time till VM Login - Lower is better", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 77, + "lineWidth": 0 + }, + "decimals": 1, + "mappings": [ + { + "options": { + "0": { + "color": "transparent", + "index": 0, + "text": "." + } + }, + "type": "value" + } + ], + "max": -1, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "dark-blue" + }, + { + "color": "dark-green", + "value": 1 + }, + { + "color": "super-light-green", + "value": 10 + }, + { + "color": "semi-dark-orange", + "value": 20 + }, + { + "color": "dark-red", + "value": 50 + } + ] + }, + "unit": "none" + }, + "overrides": [ ] + }, + "gridPos": { + "h": 19, + "w": 24, + "x": 0, + "y": 187 + }, + "id": 29, + "interval": "1d", + "links": [ + { + "targetBlank": true, + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=190" + } + ], + "options": { + "alignValue": "center", + "legend": { + "displayMode": "hidden", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.90000000000000002, + "showValue": "always", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "Min", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "bootstorm_time", + "id": "1", + "settings": { + "script": "_value/1000" + }, + "type": "min" + } + ], + "query": "scale:240 AND ocp_version:$ocp_version", + "refId": "A", + "timeField": "timestamp" + }, + { + "alias": "Max", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "bootstorm_time", + "id": "1", + "settings": { + "script": "_value/1000" + }, + "type": "max" + } + ], + "query": "scale:240 AND ocp_version:$ocp_version", + "refId": "B", + "timeField": "timestamp" + }, + { + "alias": "", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "bootstorm_time", + "id": "1", + "settings": { + "percents": [ + "25", + "50", + "75", + "95", + "99" + ], + "script": "_value/1000" + }, + "type": "percentiles" + } + ], + "query": "scale:240 AND ocp_version:$ocp_version", + "refId": "C", + "timeField": "timestamp" + }, + { + "alias": "AVG. 100 vms {{term node.keyword}}", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "node.keyword", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "bootstorm_time", + "id": "1", + "settings": { + "script": "_value/1000" + }, + "type": "avg" + } + ], + "query": "scale:240 AND ocp_version:$ocp_version", + "refId": "D", + "timeField": "timestamp" + }, + { + "alias": "Memory(GB) [384GB]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "total_Memory", + "id": "1", + "settings": { + "script": "_value/1000000000" + }, + "type": "max" + } + ], + "query": "scale:240 AND ocp_version:$ocp_version", + "refId": "F", + "timeField": "timestamp" + }, + { + "alias": "Memory Worker-0 (GB) [128GB]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "worker-0_Memory", + "id": "1", + "settings": { + "script": "_value/1000000000" + }, + "type": "max" + } + ], + "query": "scale:240 AND ocp_version:$ocp_version", + "refId": "E", + "timeField": "timestamp" + }, + { + "alias": "Memory Worker-1 (GB) [128GB]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "worker-1_Memory", + "id": "1", + "settings": { + "script": "_value/1000000000" + }, + "type": "max" + } + ], + "query": "scale:240 AND ocp_version:$ocp_version", + "refId": "G", + "timeField": "timestamp" + }, + { + "alias": "Memory Worker-2 (GB) [128GB]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "worker-2_Memory", + "id": "1", + "settings": { + "script": "_value/1000000000" + }, + "type": "max" + } + ], + "query": "scale:240 AND ocp_version:$ocp_version", + "refId": "H", + "timeField": "timestamp" + }, + { + "alias": "%CPU [240 cores]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "total_CPU", + "id": "1", + "settings": { }, + "type": "max" + } + ], + "query": "scale:240 AND ocp_version:$ocp_version", + "refId": "I", + "timeField": "timestamp" + }, + { + "alias": "%CPU worker-0 [80 cores]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "worker-0_CPU", + "id": "1", + "settings": { }, + "type": "max" + } + ], + "query": "scale:240 AND ocp_version:$ocp_version", + "refId": "J", + "timeField": "timestamp" + }, + { + "alias": "%CPU worker-1 [80 cores]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "worker-1_CPU", + "id": "1", + "settings": { }, + "type": "max" + } + ], + "query": "scale:240 AND ocp_version:$ocp_version", + "refId": "K", + "timeField": "timestamp" + }, + { + "alias": "%CPU worker-2 [80 cores]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "worker-2_CPU", + "id": "1", + "settings": { }, + "type": "max" + } + ], + "query": "scale:240 AND ocp_version:$ocp_version", + "refId": "L", + "timeField": "timestamp" + }, + { + "alias": "VMs #", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "id": "1", + "type": "count" + } + ], + "query": "scale:240 AND ocp_version:$ocp_version", + "refId": "M", + "timeField": "timestamp" + } + ], + "title": "240 Fedora37 VMs(Sec)", + "type": "state-timeline" + }, + { + "datasource": "Elasticsearch-windows-results", + "description": "Time till VM Login - Lower is better", + "fieldConfig": { + "defaults": { + "color": { + "mode": "thresholds" + }, + "custom": { + "fillOpacity": 77, + "lineWidth": 0 + }, + "decimals": 1, + "mappings": [ + { + "options": { + "0": { + "color": "transparent", + "index": 0, + "text": "." + } + }, + "type": "value" + } + ], + "max": -1, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "dark-blue" + }, + { + "color": "dark-green", + "value": 1 + }, + { + "color": "super-light-green", + "value": 10 + }, + { + "color": "semi-dark-orange", + "value": 20 + }, + { + "color": "dark-red", + "value": 50 + } + ] + }, + "unit": "none" + }, + "overrides": [ ] + }, + "gridPos": { + "h": 19, + "w": 24, + "x": 0, + "y": 206 + }, + "id": 30, + "interval": "1d", + "links": [ + { + "targetBlank": true, + "title": "artifacts link", + "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&from=now-45d&to=now&viewPanel=194" + } + ], + "options": { + "alignValue": "center", + "legend": { + "displayMode": "hidden", + "placement": "bottom" + }, + "mergeValues": false, + "rowHeight": 0.90000000000000002, + "showValue": "always", + "tooltip": { + "mode": "single" + } + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "Min", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "bootstorm_time", + "id": "1", + "settings": { + "script": "_value/1000" + }, + "type": "min" + } + ], + "query": "scale:120 AND ocp_version:$ocp_version", + "refId": "A", + "timeField": "timestamp" + }, + { + "alias": "Max", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "bootstorm_time", + "id": "1", + "settings": { + "script": "_value/1000" + }, + "type": "max" + } + ], + "query": "scale:120 AND ocp_version:$ocp_version", + "refId": "B", + "timeField": "timestamp" + }, + { + "alias": "", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "bootstorm_time", + "id": "1", + "settings": { + "percents": [ + "25", + "50", + "75", + "95", + "99" + ], + "script": "_value/1000" + }, + "type": "percentiles" + } + ], + "query": "scale:120 AND ocp_version:$ocp_version", + "refId": "C", + "timeField": "timestamp" + }, + { + "alias": "AVG. 40 vms {{term node.keyword}}", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "node.keyword", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "bootstorm_time", + "id": "1", + "settings": { + "script": "_value/1000" + }, + "type": "avg" + } + ], + "query": "scale:120 AND ocp_version:$ocp_version", + "refId": "D", + "timeField": "timestamp" + }, + { + "alias": "Memory(GB) [384GB]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "total_Memory", + "id": "1", + "settings": { + "script": "_value/1000000000/2" + }, + "type": "max" + } + ], + "query": "scale:120 AND ocp_version:$ocp_version", + "refId": "F", + "timeField": "timestamp" + }, + { + "alias": "Memory Worker-0 (GB) [128GB]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "worker-0_Memory", + "id": "1", + "settings": { + "script": "_value/1000000000" + }, + "type": "max" + } + ], + "query": "scale:240 AND ocp_version:$ocp_version", + "refId": "E", + "timeField": "timestamp" + }, + { + "alias": "Memory Worker-1 (GB) [128GB]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "worker-1_Memory", + "id": "1", + "settings": { + "script": "_value/1000000000/2" + }, + "type": "max" + } + ], + "query": "scale:120 AND ocp_version:$ocp_version", + "refId": "G", + "timeField": "timestamp" + }, + { + "alias": "Memory Worker-2 (GB) [128GB]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "worker-2_Memory", + "id": "1", + "settings": { + "script": "_value/1000000000/2" + }, + "type": "max" + } + ], + "query": "scale:120 AND ocp_version:$ocp_version", + "refId": "H", + "timeField": "timestamp" + }, + { + "alias": "%CPU [240 cores]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "total_CPU", + "id": "1", + "settings": { }, + "type": "max" + } + ], + "query": "scale:120 AND ocp_version:$ocp_version", + "refId": "I", + "timeField": "timestamp" + }, + { + "alias": "%CPU worker-0 [80 cores]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "worker-0_CPU", + "id": "1", + "settings": { }, + "type": "max" + } + ], + "query": "scale:120 AND ocp_version:$ocp_version", + "refId": "J", + "timeField": "timestamp" + }, + { + "alias": "%CPU worker-1 [80 cores]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "worker-1_CPU", + "id": "1", + "settings": { }, + "type": "max" + } + ], + "query": "scale:120 AND ocp_version:$ocp_version", + "refId": "K", + "timeField": "timestamp" + }, + { + "alias": "%CPU worker-2 [80 cores]", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "field": "worker-2_CPU", + "id": "1", + "settings": { }, + "type": "max" + } + ], + "query": "scale:120 AND ocp_version:$ocp_version", + "refId": "L", + "timeField": "timestamp" + }, + { + "alias": "VMs #", + "bucketAggs": [ + { + "field": "scale", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "hide": false, + "metrics": [ + { + "id": "1", + "type": "count" + } + ], + "query": "scale:120 AND ocp_version:$ocp_version", + "refId": "M", + "timeField": "timestamp" + } + ], + "title": "120 Windows Server 2019 VMs virtio (Sec)", + "type": "state-timeline" + } + ], + "title": "BootStorm", + "type": "row" + }, + { + "collapsed": true, + "gridPos": { + "h": 1, + "w": 24, + "x": 0, + "y": 21 + }, + "id": 31, + "panels": [ + { + "datasource": "Elasticsearch-hammerdb-results", + "fieldConfig": { + "defaults": { + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "semi-dark-red" + }, + { + "color": "light-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "ci_date.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 169 + }, + { + "id": "displayName", + "value": "Date" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "db_type.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 137 + }, + { + "id": "displayName", + "value": "Database" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "current_worker" + }, + "properties": [ + { + "id": "custom.width", + "value": 134 + }, + { + "id": "displayName", + "value": "Thread" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "kind.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 159 + }, + { + "id": "displayName", + "value": "Kind" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "run_artifacts_url.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 1068 + }, + { + "id": "displayName", + "value": "Artifacts Link" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "storage_type.keyword" + }, + "properties": [ + { + "id": "displayName", + "value": "Storage" + } + ] + } + ] + }, + "gridPos": { + "h": 28, + "w": 24, + "x": 0, + "y": 22 + }, + "id": 32, + "interval": "1d", + "links": [ + { + "targetBlank": true, + "title": "link", + "url": "${__data.fields['run_artifacts_url.keyword']}" + } + ], + "options": { + "footer": { + "fields": [ + "" + ], + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true, + "sortBy": [ ] + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "", + "bucketAggs": [ + { + "field": "ci_date.keyword", + "id": "6", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "db_type.keyword", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "current_worker", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "kind.keyword", + "id": "5", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "storage_type.keyword", + "id": "2", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "run_artifacts_url.keyword", + "id": "7", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + } + ], + "metrics": [ + { + "field": "tpm", + "id": "1", + "settings": { + "script": "_value/1000" + }, + "type": "max" + } + ], + "query": "_exists_:tpm AND db_type:$db_type AND current_worker:$current_worker AND kind:$kind", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "HammerDB artifacts", + "type": "table" + }, + { + "datasource": "Elasticsearch-uperf-results", + "fieldConfig": { + "defaults": { + "decimals": 1, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "semi-dark-red" + }, + { + "color": "light-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "ci_date.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 169 + }, + { + "id": "displayName", + "value": "Date" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "read_message_size" + }, + "properties": [ + { + "id": "custom.width", + "value": 167 + }, + { + "id": "displayName", + "value": "Read Message Size" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "num_threads" + }, + "properties": [ + { + "id": "custom.width", + "value": 125 + }, + { + "id": "displayName", + "value": "Thread" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "kind.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 114 + }, + { + "id": "displayName", + "value": "Kind" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "run_artifacts_url.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 1068 + }, + { + "id": "displayName", + "value": "Artifacts Link" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Average" + }, + "properties": [ + { + "id": "displayName", + "value": "Average Gbits" + } + ] + } + ] + }, + "gridPos": { + "h": 15, + "w": 24, + "x": 0, + "y": 50 + }, + "id": 33, + "interval": "1d", + "links": [ + { + "targetBlank": true, + "title": "link", + "url": "${__data.fields['run_artifacts_url.keyword']}" + } + ], + "options": { + "footer": { + "fields": [ + "" + ], + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true, + "sortBy": [ ] + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "", + "bucketAggs": [ + { + "field": "ci_date.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "5" + }, + "type": "terms" + }, + { + "field": "read_message_size", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "num_threads", + "id": "5", + "settings": { + "min_doc_count": "1", + "order": "asc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "kind.keyword", + "id": "6", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "run_artifacts_url.keyword", + "id": "7", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + } + ], + "metrics": [ + { + "field": "norm_byte", + "id": "1", + "settings": { + "script": "_value*8/1000000000" + }, + "type": "avg" + } + ], + "query": "_exists_:norm_ops AND read_message_size:(64 OR 1024 OR 8192) AND num_threads:(1 OR 8) AND test_type:stream", + "refId": "A", + "timeField": "uperf_ts" + } + ], + "title": "Uperf artifacts", + "type": "table" + }, + { + "datasource": "Elasticsearch-vdbench-results", + "fieldConfig": { + "defaults": { + "decimals": 1, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "semi-dark-red" + }, + { + "color": "light-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "ci_date.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 227 + }, + { + "id": "displayName", + "value": "Date" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "kind.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 100 + }, + { + "id": "displayName", + "value": "Kind" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "run_artifacts_url.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 1000 + }, + { + "id": "displayName", + "value": "Artifacts Link" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Average" + }, + "properties": [ + { + "id": "displayName", + "value": "Average Rate" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Run.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 140 + }, + { + "id": "displayName", + "value": "Run" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Threads" + }, + "properties": [ + { + "id": "custom.width", + "value": 100 + }, + { + "id": "displayName", + "value": "Thread" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Artifacts Link" + }, + "properties": [ + { + "id": "custom.width", + "value": 1521 + } + ] + } + ] + }, + "gridPos": { + "h": 10, + "w": 24, + "x": 0, + "y": 65 + }, + "id": 34, + "interval": "1d", + "links": [ + { + "targetBlank": true, + "title": "link", + "url": "${__data.fields['run_artifacts_url.keyword']}" + } + ], + "options": { + "footer": { + "fields": [ + "" + ], + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true, + "sortBy": [ ] + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "", + "bucketAggs": [ + { + "field": "ci_date.keyword", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "5" + }, + "type": "terms" + }, + { + "field": "kind.keyword", + "id": "7", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "run_artifacts_url.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + } + ], + "metrics": [ + { + "field": "Rate", + "id": "1", + "type": "avg" + } + ], + "query": "!SCALE AND !Run.keyword='fillup'", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "vdbench artifacts", + "transformations": [ + { + "id": "organize", + "options": { + "excludeByName": { + "Average": true + }, + "indexByName": { }, + "renameByName": { } + } + } + ], + "type": "table" + }, + { + "datasource": "Elasticsearch-vdbench-results", + "desc": "ci_date.keyword", + "fieldConfig": { + "defaults": { + "decimals": 1, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "semi-dark-red" + }, + { + "color": "light-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "ci_date.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 227 + }, + { + "id": "displayName", + "value": "Date" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "kind.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 100 + }, + { + "id": "displayName", + "value": "Kind" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "run_artifacts_url.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 1000 + }, + { + "id": "displayName", + "value": "Artifacts Link" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Average" + }, + "properties": [ + { + "id": "displayName", + "value": "Average Rate" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Run.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 140 + }, + { + "id": "displayName", + "value": "Run" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Threads" + }, + "properties": [ + { + "id": "custom.width", + "value": 100 + }, + { + "id": "displayName", + "value": "Thread" + } + ] + } + ] + }, + "gridPos": { + "h": 10, + "w": 24, + "x": 0, + "y": 75 + }, + "id": 35, + "interval": "1d", + "links": [ + { + "targetBlank": true, + "title": "link", + "url": "${__data.fields[\"run_artifacts_url.keyword\"]}" + } + ], + "options": { + "footer": { + "fields": [ + "" + ], + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "", + "bucketAggs": [ + { + "field": "ci_date.keyword", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "5" + }, + "type": "terms" + }, + { + "field": "Run.keyword", + "id": "5", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "Threads", + "id": "6", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "kind.keyword", + "id": "7", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "scale", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "run_artifacts_url.keyword", + "id": "9", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + } + ], + "hide": false, + "metrics": [ + { + "field": "Rate", + "id": "1", + "type": "avg" + } + ], + "query": "!Run.keyword='fillup'", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "vdbench scale artifacts", + "type": "table" + }, + { + "datasource": "Elasticsearch-clusterbuster-results", + "fieldConfig": { + "defaults": { + "decimals": 1, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "run_artifacts_url" + }, + "properties": [ + { + "id": "custom.width", + "value": 1600 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Date" + }, + "properties": [ + { + "id": "custom.width", + "value": 227 + } + ] + } + ] + }, + "gridPos": { + "h": 6, + "w": 24, + "x": 0, + "y": 85 + }, + "id": 36, + "interval": "1d", + "links": [ + { + "targetBlank": true, + "title": "link", + "url": "${__data.fields[\"run_artifacts_url.keyword\"]}" + } + ], + "options": { + "footer": { + "fields": [ + "" + ], + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "", + "bucketAggs": [ + { + "field": "ci_date.keyword", + "id": "4", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "5" + }, + "type": "terms" + }, + { + "field": "timestamp", + "id": "2", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "run_artifacts_url.keyword", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + } + ], + "metrics": [ + { + "field": "job_runtime", + "hide": false, + "id": "1", + "type": "avg" + } + ], + "query": "", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "clusterbuster artifacts", + "transformations": [ + { + "id": "organize", + "options": { + "excludeByName": { + "Average": true, + "_id": true, + "_index": true, + "_type": true, + "highlight": true, + "job_end": true, + "job_runtime": true, + "job_start": true, + "kata_version": true, + "openshift_version": true, + "result": true, + "run_host": true, + "sort": true, + "uuid": true + }, + "indexByName": { + "_id": 6, + "_index": 7, + "_type": 8, + "highlight": 9, + "job_end": 12, + "job_runtime": 10, + "job_start": 11, + "kata_version": 4, + "openshift_version": 3, + "result": 2, + "run_artifacts_url": 1, + "run_host": 5, + "sort": 13, + "timestamp": 0, + "uuid": 14 + }, + "renameByName": { + "Average": "Run time", + "run_artifacts_url": "Artifacts Link", + "run_artifacts_url.keyword": "Artifacts Link", + "timestamp": "Date" + } + } + } + ], + "type": "table" + }, + { + "datasource": "Elasticsearch-clusterbuster-release-results", + "fieldConfig": { + "defaults": { + "decimals": 1, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "green" + }, + { + "color": "red", + "value": 80 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "run_artifacts_url" + }, + "properties": [ + { + "id": "custom.width", + "value": 1600 + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Date" + }, + "properties": [ + { + "id": "custom.width", + "value": 227 + } + ] + } + ] + }, + "gridPos": { + "h": 6, + "w": 24, + "x": 0, + "y": 91 + }, + "id": 37, + "links": [ + { + "targetBlank": true, + "title": "link", + "url": "${__data.fields[\"run_artifacts_url.keyword\"]}" + } + ], + "options": { + "footer": { + "fields": [ + "" + ], + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "", + "bucketAggs": [ + { + "field": "timestamp", + "id": "2", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "run_artifacts_url.keyword", + "id": "3", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + } + ], + "metrics": [ + { + "field": "job_runtime", + "hide": false, + "id": "1", + "type": "avg" + } + ], + "query": "", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "clusterbuster release artifacts", + "transformations": [ + { + "id": "organize", + "options": { + "excludeByName": { + "Average": true, + "_id": true, + "_index": true, + "_type": true, + "highlight": true, + "job_end": true, + "job_runtime": true, + "job_start": true, + "kata_version": true, + "openshift_version": true, + "result": true, + "run_host": true, + "sort": true, + "uuid": true + }, + "indexByName": { + "_id": 6, + "_index": 7, + "_type": 8, + "highlight": 9, + "job_end": 12, + "job_runtime": 10, + "job_start": 11, + "kata_version": 4, + "openshift_version": 3, + "result": 2, + "run_artifacts_url": 1, + "run_host": 5, + "sort": 13, + "timestamp": 0, + "uuid": 14 + }, + "renameByName": { + "Average": "Run time", + "run_artifacts_url": "Artifacts Link", + "run_artifacts_url.keyword": "Artifacts Link", + "timestamp": "Date" + } + } + } + ], + "type": "table" + }, + { + "datasource": "Elasticsearch-bootstorm-results", + "desc": "ci_date.keyword", + "fieldConfig": { + "defaults": { + "decimals": 1, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "semi-dark-red" + }, + { + "color": "light-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "ci_date.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 227 + }, + { + "id": "displayName", + "value": "Date" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "kind.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 100 + }, + { + "id": "displayName", + "value": "Kind" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "run_artifacts_url.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 1000 + }, + { + "id": "displayName", + "value": "Artifacts Link" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Average" + }, + "properties": [ + { + "id": "displayName", + "value": "Average Rate" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Run.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 140 + }, + { + "id": "displayName", + "value": "Run" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Threads" + }, + "properties": [ + { + "id": "custom.width", + "value": 100 + }, + { + "id": "displayName", + "value": "Thread" + } + ] + } + ] + }, + "gridPos": { + "h": 5, + "w": 24, + "x": 0, + "y": 97 + }, + "id": 38, + "links": [ + { + "targetBlank": true, + "title": "link", + "url": "${__data.fields[\"run_artifacts_url.keyword\"]}" + } + ], + "options": { + "footer": { + "fields": [ + "" + ], + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "", + "bucketAggs": [ + { + "field": "ci_date.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "kind.keyword", + "id": "9", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "scale", + "id": "100", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "run_artifacts_url.keyword", + "id": "11", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + } + ], + "metrics": [ + { + "field": "Rate", + "id": "1", + "type": "avg" + } + ], + "query": "scale:240", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "bootstorm artifacts", + "transformations": [ + { + "id": "organize", + "options": { + "excludeByName": { + "Average": true + }, + "indexByName": { }, + "renameByName": { } + } + } + ], + "type": "table" + }, + { + "datasource": "Elasticsearch-windows-results", + "desc": "ci_date.keyword", + "fieldConfig": { + "defaults": { + "decimals": 1, + "mappings": [ ], + "min": 0, + "thresholds": { + "mode": "percentage", + "steps": [ + { + "color": "semi-dark-red" + }, + { + "color": "light-orange", + "value": 50 + }, + { + "color": "super-light-green", + "value": 80 + }, + { + "color": "dark-green", + "value": 90 + }, + { + "color": "dark-blue", + "value": 100 + } + ] + } + }, + "overrides": [ + { + "matcher": { + "id": "byName", + "options": "ci_date.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 227 + }, + { + "id": "displayName", + "value": "Date" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "kind.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 100 + }, + { + "id": "displayName", + "value": "Kind" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "run_artifacts_url.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 1000 + }, + { + "id": "displayName", + "value": "Artifacts Link" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Average" + }, + "properties": [ + { + "id": "displayName", + "value": "Average Rate" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Run.keyword" + }, + "properties": [ + { + "id": "custom.width", + "value": 140 + }, + { + "id": "displayName", + "value": "Run" + } + ] + }, + { + "matcher": { + "id": "byName", + "options": "Threads" + }, + "properties": [ + { + "id": "custom.width", + "value": 100 + }, + { + "id": "displayName", + "value": "Thread" + } + ] + } + ] + }, + "gridPos": { + "h": 5, + "w": 24, + "x": 0, + "y": 102 + }, + "id": 39, + "interval": "1d", + "links": [ + { + "targetBlank": true, + "title": "link", + "url": "${__data.fields[\"run_artifacts_url.keyword\"]}" + } + ], + "options": { + "footer": { + "fields": [ + "" + ], + "reducer": [ + "sum" + ], + "show": false + }, + "showHeader": true + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "", + "bucketAggs": [ + { + "field": "ci_date.keyword", + "id": "8", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "kind.keyword", + "id": "9", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "scale", + "id": "10", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + }, + { + "field": "run_artifacts_url.keyword", + "id": "11", + "settings": { + "min_doc_count": "1", + "order": "desc", + "orderBy": "_term", + "size": "10" + }, + "type": "terms" + } + ], + "metrics": [ + { + "field": "Rate", + "id": "1", + "type": "avg" + } + ], + "query": "scale:120", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "Windows artifacts", + "transformations": [ + { + "id": "organize", + "options": { + "excludeByName": { + "Average": true + }, + "indexByName": { }, + "renameByName": { } + } + } + ], + "type": "table" + }, + { + "datasource": "Elasticsearch-ci-status", + "gridPos": { + "h": 4, + "w": 5, + "x": 19, + "y": 107 + }, + "id": 40, + "links": [ + { + "targetBlank": true, + "title": "PerfCI", + "url": "https://github.com/redhat-performance/benchmark-runner/actions" + } + ], + "options": { + "content": "![Cloud Governance](https://github.com/redhat-performance/benchmark-runner/blob/main/media/benchmark_runner.png?raw=true \"Tooltip Text\")\n", + "mode": "markdown" + }, + "pluginVersion": "v10.0.0", + "targets": [ + { + "alias": "", + "bucketAggs": [ + { + "field": "timestamp", + "id": "2", + "settings": { + "interval": "auto" + }, + "type": "date_histogram" + } + ], + "metrics": [ + { + "id": "1", + "type": "count" + } + ], + "query": "", + "refId": "A", + "timeField": "timestamp" + } + ], + "title": "", + "type": "text" + } + ], + "title": "Artifacts", + "type": "row" + } + ], + "refresh": "", + "schemaVersion": 34, + "style": "dark", + "tags": [ ], + "templating": { + "list": [ + { + "allValue": "", + "datasource": "Elasticsearch-hammerdb-results", + "hide": 0, + "includeAll": true, + "multi": true, + "name": "ocp_version", + "query": "{\"find\":\"terms\",\"field\":\"ocp_version.keyword\"}", + "refresh": 2, + "regex": "", + "sort": 6, + "type": "query" + }, + { + "allValue": "", + "datasource": "Elasticsearch-hammerdb-results", + "hide": 0, + "includeAll": true, + "multi": true, + "name": "db_type", + "query": "{\"find\":\"terms\",\"field\":\"db_type.keyword\"}", + "refresh": 2, + "regex": "", + "sort": 1, + "type": "query" + }, + { + "allValue": "", + "datasource": "Elasticsearch-hammerdb-results", + "hide": 0, + "includeAll": true, + "multi": true, + "name": "current_worker", + "query": "{\"find\":\"terms\",\"field\":\"current_worker\"}", + "refresh": 2, + "regex": "", + "sort": 1, + "type": "query" + }, + { + "allValue": "", + "datasource": "Elasticsearch-hammerdb-results", + "hide": 0, + "includeAll": true, + "multi": true, + "name": "kind", + "query": "{\"find\":\"terms\",\"field\":\"kind.keyword\"}", + "refresh": 2, + "regex": "", + "sort": 1, + "type": "query" + }, + { + "allValue": "", + "datasource": "Elasticsearch-vdbench-results", + "hide": 0, + "includeAll": true, + "multi": true, + "name": "vdbench_type", + "query": "{\"find\":\"terms\",\"field\":\"Run.keyword\"}", + "refresh": 2, + "regex": "", + "sort": 6, + "type": "query" + } + ] + }, + "time": { + "from": "now-45d", + "to": "now" + }, + "timepicker": { }, + "timezone": "", + "title": "PerfCI-Regression-Summary", + "uid": "T4775LKnzzmichey", + "weekStart": "" +} diff --git a/benchmark_runner/grafana/perf/dashboard.tf b/benchmark_runner/grafana/perf/dashboard.tf new file mode 100644 index 000000000..5a2cd92ff --- /dev/null +++ b/benchmark_runner/grafana/perf/dashboard.tf @@ -0,0 +1,20 @@ +terraform { + required_providers { + jsonnet = { + source = "alxrem/jsonnet" + version = ">= 2.2.0" + } + } +} + +provider "jsonnet" { + jsonnet_path = "${path.cwd}/jsonnet/vendor" +} + +data "jsonnet_file" "dashboard" { + source = "${path.cwd}/jsonnet/main.libsonnet" +} + +output "dashboard" { + value = data.jsonnet_file.dashboard.rendered +} diff --git a/benchmark_runner/grafana/perf/extract_dashboard.py b/benchmark_runner/grafana/perf/extract_dashboard.py new file mode 100644 index 000000000..3024cc834 --- /dev/null +++ b/benchmark_runner/grafana/perf/extract_dashboard.py @@ -0,0 +1,19 @@ +import re +import sys +import json + +input_text = sys.stdin.read() + +match = re.search(r'dashboard = <90% - 100% of peak
\n80% - 90% of peak
\n50% - 80% of peak
\n0% - 50% of peak
\n\n\n ') + + g.panel.text.options.withMode("html") + + + g.panel.text.withPluginVersion() + + + g.panel.text.withTargets([ + + elasticsearch.withAlias('') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + ]) + + + g.panel.text.datasource.withType('elasticsearch') + + g.panel.text.datasource.withUid('cd4b9568-576c-4528-b200-89b91a098410') + + + elasticsearch.withMetrics([ + elasticsearch.metrics.Count.withId('1') + + elasticsearch.metrics.Count.withType('count') + + ]) + + + elasticsearch.withQuery('') + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('timestamp') + + + ]), + + //////////////////////////////////////////// + g.panel.text.new('') + + g.panel.text.panelOptions.withDescription("") + + + g.panel.text.gridPos.withH(6) + + g.panel.text.gridPos.withW(5) + + g.panel.text.gridPos.withX(19) + + g.panel.text.gridPos.withY(0) + + + g.panel.text.withId('187') + + + g.panel.text.options.withContent('![Cloud Governance](https://www.cielhr.com/wp-content/uploads/2019/10/PerformancewSpace-1080x675.png \"Tooltip Text\")\n') + + g.panel.text.options.withMode("markdown") + + + g.panel.text.withPluginVersion() + + + + g.panel.text.withTargets([ + + elasticsearch.withAlias('') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + ]) + + + g.panel.text.datasource.withType('elasticsearch') + + g.panel.text.datasource.withUid('cd4b9568-576c-4528-b200-89b91a098410') + + + elasticsearch.withMetrics([ + elasticsearch.metrics.Count.withId('1') + + elasticsearch.metrics.Count.withType('count') + + ]) + + + elasticsearch.withQuery('') + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('timestamp') + + + ]), + + + + + + + + //////////////////////////////////////// + stateTimeline.new('Product Versions') + + + + stateTimeline.withDescription("OVN - 09/19") + + + stateTimeline.queryOptions.withDatasource('Elasticsearch-ci-status') + + stateTimeline.standardOptions.color.withFixedColor('#132dc3') + + stateTimeline.standardOptions.color.withMode('fixed') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(85) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withMappings([ + stateTimeline.valueMapping.RegexMap.withOptions( + //START_VALUE_MAPPING_227 + {"0": {"index": 0, "text": "fail"}, "1": {"index": 1, "text": "pass"}, "102": {"index": 13, "text": "1.0.2"}, "110": {"index": 14, "text": "1.1.0"}, "120": {"index": 15, "text": "1.2.0"}, "121": {"index": 16, "text": "1.2.1"}, "130": {"index": 45, "text": "1.3.0"}, "131": {"index": 117, "text": "1.3.1"}, "132": {"index": 76, "text": "1.3.2"}, "133": {"index": 77, "text": "1.3.3"}, "140": {"index": 118, "text": "1.4.0"}, "483": {"index": 0, "text": "4.8.3"}, "484": {"index": 1, "text": "4.8.4"}, "485": {"index": 2, "text": "4.8.5"}, "486": {"index": 3, "text": "4.8.6"}, "487": {"index": 4, "text": "4.8.7"}, "488": {"index": 5, "text": "4.8.8"}, "3025": {"index": 86, "text": "3.0.2-5"}, "3026": {"index": 119, "text": "3.0.2-6"}, "4102": {"index": 33, "text": "4.10.2"}, "4104": {"index": 34, "text": "4.10.4"}, "4105": {"index": 35, "text": "4.10.5"}, "4106": {"index": 36, "text": "4.10.6"}, "4108": {"index": 37, "text": "4.10.8"}, "4109": {"index": 38, "text": "4.10.9"}, "4114": {"index": 54, "text": "4.11.4"}, "4115": {"index": 55, "text": "4.11.5"}, "4116": {"index": 56, "text": "4.11.6"}, "4117": {"index": 57, "text": "4.11.7"}, "4118": {"index": 58, "text": "4.11.8"}, "4119": {"index": 59, "text": "4.11.9"}, "4120": {"index": 68, "text": "4.12.0"}, "4121": {"index": 69, "text": "4.12.1"}, "4122": {"index": 70, "text": "4.12.2"}, "4124": {"index": 80, "text": "4.12.4"}, "4130": {"index": 106, "text": "4.13.0"}, "4131": {"index": 109, "text": "4.13.1"}, "4132": {"index": 110, "text": "4.13.2"}, "4133": {"index": 111, "text": "4.13.3"}, "4814": {"index": 6, "text": "4.8.14"}, "4932": {"index": 8, "text": "4.9.3-2"}, "4947": {"index": 9, "text": "4.9.4-7"}, "4955": {"index": 10, "text": "4.9.5-5"}, "4961": {"index": 11, "text": "4.9.6-1"}, "4972": {"index": 12, "text": "4.9.7-2"}, "41002": {"index": 30, "text": "4.10.0-rc.2"}, "41003": {"index": 31, "text": "4.10.0-rc.3"}, "41007": {"index": 32, "text": "4.10.0-rc.7"}, "41010": {"index": 39, "text": "4.10.10"}, "41011": {"index": 40, "text": "4.10.11"}, "41012": {"index": 41, "text": "4.10.12"}, "41013": {"index": 42, "text": "4.10.13"}, "41014": {"index": 43, "text": "4.10.14"}, "41015": {"index": 44, "text": "4.10.15"}, "41016": {"index": 21, "text": "4.10.1-6"}, "41021": {"index": 28, "text": "4.10.2-1"}, "41023": {"index": 29, "text": "4.10.2-3"}, "41054": {"index": 49, "text": "4.10.5-4"}, "41066": {"index": 48, "text": "4.10.6-6"}, "41110": {"index": 60, "text": "4.11.10"}, "41111": {"index": 61, "text": "4.11.11"}, "41112": {"index": 62, "text": "4.11.12"}, "41113": {"index": 63, "text": "4.11.13"}, "41114": {"index": 64, "text": "4.11.14"}, "41144": {"index": 78, "text": "4.11.4-4"}, "41159": {"index": 79, "text": "4.11.5-9"}, "41206": {"index": 65, "text": "4.12.0.6"}, "41207": {"index": 66, "text": "4.12.0.7"}, "41208": {"index": 67, "text": "4.12.0.8"}, "41218": {"index": 73, "text": "4.12.1-8"}, "41224": {"index": 85, "text": "4.12.2-4"}, "41304": {"index": 102, "text": "4.13.0-rc.4"}, "41305": {"index": 103, "text": "4.13.0-rc.5"}, "41307": {"index": 104, "text": "4.13.0-rc.7"}, "41308": {"index": 105, "text": "4.13.0-rc.8"}, "49211": {"index": 7, "text": "4.9.2-11"}, "410129": {"index": 22, "text": "4.10.1-29"}, "410136": {"index": 23, "text": "4.10.1-36"}, "410160": {"index": 24, "text": "4.10.1-60"}, "410170": {"index": 25, "text": "4.10.1-70"}, "410197": {"index": 26, "text": "4.10.1-97"}, "411115": {"index": 52, "text": "4.11.1-15"}, "411121": {"index": 51, "text": "4.11.1-21"}, "411135": {"index": 46, "text": "4.11.1-35"}, "411142": {"index": 47, "text": "4.11.1-42"}, "411605": {"index": 53, "text": "4.11.6-5"}, "412116": {"index": 74, "text": "4.12.1-16"}, "412119": {"index": 84, "text": "4.12.1-19"}, "412122": {"index": 75, "text": "4.12.1-22"}, "412139": {"index": 82, "text": "4.12.1-39"}, "412140": {"index": 81, "text": "4.12.1-40"}, "412317": {"index": 121, "text": "4.12.3-17"}, "413014": {"index": 101, "text": "4.13.0-ec.4"}, "413118": {"index": 113, "text": "4.13.1-18"}, "413140": {"index": 114, "text": "4.13.1-40"}, "4100683": {"index": 17, "text": "4.10.0-683"}, "4100688": {"index": 18, "text": "4.10.0-688"}, "4100700": {"index": 19, "text": "4.10.0-700"}, "4100729": {"index": 20, "text": "4.10.0-729"}, "4101101": {"index": 27, "text": "4.10.1-101"}, "4110137": {"index": 50, "text": "4.11.0-137"}, "4120173": {"index": 83, "text": "4.12.0-173"}, "4120777": {"index": 71, "text": "4.12.0-777"}, "4120781": {"index": 72, "text": "4.12.0-781"}, "4131154": {"index": 115, "text": "4.13.1-154"}, "41301586": {"index": 88, "text": "4.13.0-1586"}, "41301649": {"index": 89, "text": "4.13.0-1649"}, "41301666": {"index": 91, "text": "4.13.0-1666"}, "41301689": {"index": 90, "text": "4.13.0-1689"}, "41301782": {"index": 92, "text": "4.13.0-1782"}, "41301856": {"index": 93, "text": "4.13.0-1856"}, "41301938": {"index": 94, "text": "4.13.0-1938"}, "41301943": {"index": 95, "text": "4.13.0-1943"}, "41302115": {"index": 96, "text": "4.13.0-2115"}, "41302176": {"index": 97, "text": "4.13.0-2176"}, "41302229": {"index": 98, "text": "4.13.0-2229"}, "41302251": {"index": 99, "text": "4.13.0-2251"}, "41302269": {"index": 100, "text": "4.13.0-2269"}, "4130ec3": {"index": 87, "text": "4.13.0-ec.3"}, "CNV": {"index": 112, "text": "CNV"}, "KATA": {"index": 116, "text": "KATA"}, "OCP": {"index": 108, "text": "OCP"}, "ODF": {"index": 120, "text": "ODF"}, "Product Versions": {"index": 107, "text": "Product Versions"}, "4136": {"index": 122, "text": "4.13.6"}, "413360": {"index": 123, "text": "4.13.3-60"}, "41244": {"index": 126, "text": "4.12.4-4"}, "4134": {"index": 130, "text": "4.13.4"}, "4131206": {"index": 131, "text": "4.13.1-206"}, "4131214": {"index": 132, "text": "4.13.1-214"}, "41323": {"index": 133, "text": "4.13.2-3"}, "413273": {"index": 134, "text": "4.13.2-73"}, "41338": {"index": 135, "text": "4.13.3-8"}, "413267": {"index": 136, "text": "4.13.2-67"}, "4137": {"index": 137, "text": "4.13.7"}, "4133166": {"index": 138, "text": "4.13.3-166"}, "141": {"index": 139, "text": "1.4.1"}, "41252": {"index": 140, "text": "4.12.5-2"}, "4138": {"index": 141, "text": "4.13.8"}, "4133203": {"index": 142, "text": "4.13.3-203"}, "4139": {"index": 143, "text": "4.13.9"}, "413426": {"index": 145, "text": "4.13.4-26"}, "4133266": {"index": 146, "text": "4.13.3-266"}} + //END_VALUE_MAPPING_227 + ) + + stateTimeline.valueMapping.RegexMap.withType('value') + + + ]) + + + stateTimeline.fieldConfig.defaults.thresholds.withMode('absolute') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + g.panel.alertGroups.thresholdStep.withColor('green') + + g.panel.alertGroups.thresholdStep.withValue(null) + + ]) + + + stateTimeline.fieldConfig.withOverrides([ + stateTimeline.fieldOverride.byName.new('Ci Status') + + g.panel.table.fieldOverride.byName.withProperty('color', {"mode": "continuous-RdYlGr"}) + ]) + + + stateTimeline.gridPos.withH(6) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(6) + + + stateTimeline.withId(171) + + stateTimeline.queryOptions.withInterval("1d") + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTargetBlank(true) + + stateTimeline.link.withTitle('OCP version') + + stateTimeline.link.withUrl('https://openshift-release.apps.ci.l2s4.p1.openshiftapps.com/') + + ]) + + + stateTimeline.options.withAlignValue("right") + + stateTimeline.options.legend.withDisplayMode("hidden") + + stateTimeline.options.legend.withPlacement("bottom") + + stateTimeline.options.withMergeValues(true) + + stateTimeline.options.withRowHeight(0.85) + + stateTimeline.options.withShowValue("always") + + stateTimeline.options.tooltip.withMode("single") + + + stateTimeline.withPluginVersion() + + + g.panel.stateTimeline.withTargets([ + + elasticsearch.withAlias('Openshift') + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + ]) + + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('ci_minutes_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('Integer.parseInt(\"0\"+doc["ocp_version.keyword"].value.replace(\".\",\"\").replace(\"r\",\"\").replace(\"c\",\"\").replace(\"f\",\"\").replace(\"-\",\"\").replace(\"e\",\"1\").replace(\"c\",\"\").replace(\"r\",\"\"))') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('_exists_:ocp_version AND ocp_version:$ocp_version') + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('timestamp'), + + //// + + elasticsearch.withAlias('CNV Nightly op.') + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('ci_minutes_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('(doc["cnv_version.keyword"].value.indexOf(\" \") == -1) ? Integer.parseInt(\"0\"+doc["cnv_version.keyword"].value.replace(\".\",\"\").replace(\"r\",\"\").replace(\"c\",\"\").replace(\"f\",\"\").replace(\"-\",\"\")) : 0') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('_exists_:cnv_version AND ocp_version:$ocp_version') + + elasticsearch.withRefId('C') + + elasticsearch.withTimeField('timestamp'), + + //// + elasticsearch.withAlias('KATA op.') + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('ci_minutes_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('(doc["kata_version.keyword"].value.indexOf(\" \") == -1) ? Integer.parseInt(doc["kata_version.keyword"].value.replace(\".\",\"\")) : 0') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('_exists_:kata_version AND ocp_version:$ocp_version') + + elasticsearch.withRefId('D') + + elasticsearch.withTimeField('timestamp'), + + //// + elasticsearch.withAlias('Kata rpm') + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + ]) + + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('ci_minutes_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('Integer.parseInt(\"0\"+doc["kata_rpm_version.keyword"].value.replace(\".\",\"\").replace(\"r\",\"\").replace(\"c\",\"\").replace(\"f\",\"\").replace(\"-\",\"\").replace(\"e\",\"1\").replace(\"c\",\"\").replace(\"r\",\"\"))') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('_exists_:kata_rpm_version AND ocp_version:$ocp_version') + + elasticsearch.withRefId('F') + + elasticsearch.withTimeField('timestamp'), + + //// + elasticsearch.withAlias('ODF op.') + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + ]) + + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('ci_minutes_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('((doc["odf_version.keyword"].size() != 0) ? ((doc["odf_version.keyword"].value.indexOf(\" \") == -1) ? Integer.parseInt(\"0\"+doc["odf_version.keyword"].value.replace(\".\",\"\").replace(\"r\",\"\").replace(\"c\",\"\").replace(\"f\",\"\").replace(\"-\",\"\")) : 0) : 0)') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('_exists_:odf_version AND ocp_version:$ocp_version') + + elasticsearch.withRefId('E') + + elasticsearch.withTimeField('timestamp'), + + //// + elasticsearch.withAlias('ODF # disks') + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('odf_disk_count') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withSettings({}) + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('ocp_version:$ocp_version') + + elasticsearch.withRefId('B') + + elasticsearch.withTimeField('timestamp'), + //// + elasticsearch.withAlias('Ci Status') + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('status#') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withSettings({}) + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('ocp_version:$ocp_version') + + elasticsearch.withRefId('B') + + elasticsearch.withTimeField('timestamp') + + ]), + +////////////////////////////////////////// + g.panel.row.new("Hammerdb") + + g.panel.row.withCollapsed(value=true) + + + g.panel.row.gridPos.withH(1) + + g.panel.row.gridPos.withW(24) + + g.panel.row.gridPos.withX(0) + + g.panel.row.gridPos.withY(12) + + + g.panel.row.withId(136) + + g.panel.row.withPanels([ + + g.panel.stateTimeline.new('HammerDB KTPM') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-hammerdb-results') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMin(0) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('dark-red'), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(50), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(80), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(90), + + stateTimeline.thresholdStep.withColor('dark-blue') + + stateTimeline.thresholdStep.withValue(100) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(38) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(13) + + + stateTimeline.withId(120) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTargetBlank(true) + + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&viewPanel=128') + + ]) + + + stateTimeline.options.withAlignValue('center') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.9) + + stateTimeline.options.withShowValue('always') + + stateTimeline.options.tooltip.withMode('single') + + + stateTimeline.withPluginVersion() + + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('{{term db_type.keyword}} : {{term current_worker}} threads : {{term kind.keyword}}: {{term storage_type.keyword}}') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('db_type.keyword') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('current_worker') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('storage_type.keyword') + + elasticsearch.bucketAggs.Terms.withId('5') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('6') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + + + + ]) + + + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('tpm') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + + ]) + + elasticsearch.withQuery('_exists_:tpm AND db_type:$db_type AND current_worker:$current_worker AND kind:$kind AND ocp_version:$ocp_version') + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('timestamp') + ]) + + + + + + ]), + + + + + + + + ////////////////////////////////////////// + + + + + + + + g.panel.row.new("Uperf") + + + g.panel.row.withCollapsed(value=true) + + + g.panel.row.gridPos.withH(1) + + g.panel.row.gridPos.withW(24) + + g.panel.row.gridPos.withX(0) + + g.panel.row.gridPos.withY(13) + + + g.panel.row.withId(138) + + g.panel.row.withPanels([ + + g.panel.stateTimeline.new('Uperf Latency (usecs)') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-uperf-results') + + + g.panel.stateTimeline.withDescription('Lower is better') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withDecimals(1) + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMax(-1) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('dark-blue'), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(1), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(10), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(20), + + stateTimeline.thresholdStep.withColor('dark-red') + + stateTimeline.thresholdStep.withValue(50) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(15) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(52) + + + stateTimeline.withId(116) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTargetBlank(true) + + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&viewPanel=129') + + ]) + + + stateTimeline.options.withAlignValue('center') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.9) + + stateTimeline.options.withShowValue('always') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('msg size: {{term read_message_size}} :{{term num_threads}}th: {{term kind.keyword}}') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('read_message_size') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('num_threads') + + elasticsearch.bucketAggs.Terms.withId('5') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('6') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + + + + ]) + + + stateTimeline.datasource.withType('elasticsearch') + + stateTimeline.datasource.withUid('cd4b9568-576c-4528-b200-89b91a098410') + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('norm_ltcy') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withSettings({}) + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + + ]) + + +elasticsearch.withQuery('_exists_:norm_ltcy AND read_message_size:(64 OR 1024 OR 8192) AND num_threads:(1) AND test_type:rr AND norm_ltcy:<1000 AND kind:$kind AND ocp_version:$ocp_version') + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('msg size: {{term read_message_size}} :{{term num_threads}}th: {{term kind.keyword}}') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('read_message_size') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('num_threads') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('5') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + stateTimeline.datasource.withType('elasticsearch') + + stateTimeline.datasource.withUid('cd4b9568-576c-4528-b200-89b91a098410') + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('norm_ltcy') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.settings.withScript('_value*8') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + + ]) + + +elasticsearch.withQuery('_exists_:norm_ltcy AND read_message_size:(64 OR 1024 OR 8192) AND num_threads:(8) AND test_type:rr AND norm_ltcy:<1000 AND kind:$kind AND ocp_version:$ocp_version') + +elasticsearch.withRefId('B') + +elasticsearch.withTimeField('timestamp') + + + + ]), + + g.panel.stateTimeline.new('Uperf Throughput (Gbits/s)') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-uperf-results') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withDecimals(1) + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMin(0) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('semi-dark-red'), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(50), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(80), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(90), + + stateTimeline.thresholdStep.withColor('dark-blue') + + stateTimeline.thresholdStep.withValue(100) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(15) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(67) + + + stateTimeline.withId(115) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&viewPanel=129') + + ]) + + + stateTimeline.options.withAlignValue('center') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.9) + + stateTimeline.options.withShowValue('always') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('msg size: {{term read_message_size}} :{{term num_threads}}th: {{term kind.keyword}}') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('read_message_size') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('num_threads') + + elasticsearch.bucketAggs.Terms.withId('5') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('6') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + + + + ]) + + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('norm_byte') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.settings.withScript('_value*8/1000000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + + ]) + + +elasticsearch.withQuery('_exists_:norm_ops AND read_message_size:(64 OR 1024 OR 8192) AND num_threads:(1 OR 8) AND test_type:stream AND kind:$kind AND ocp_version:$ocp_version') + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp') + + ]) + + + ]), + + + + + + + + ////////////////////////////////////////// + + + + + + + g.panel.row.new("Vdbench") + + g.panel.row.withCollapsed(value=true) + + + g.panel.row.gridPos.withH(1) + + g.panel.row.gridPos.withW(24) + + g.panel.row.gridPos.withX(0) + + g.panel.row.gridPos.withY(14) + + + g.panel.row.withId(142) + + g.panel.row.withPanels([ + + g.panel.stateTimeline.new('vdbench (IOPS)') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-vdbench-results') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMin(0) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('dark-red'), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(50), + + stateTimeline.thresholdStep.withColor('light-green') + + stateTimeline.thresholdStep.withValue(80), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(90), + + stateTimeline.thresholdStep.withColor('dark-blue') + + stateTimeline.thresholdStep.withValue(100) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(48) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(83) + + + stateTimeline.withId(132) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTargetBlank(true) + + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&from=now-45d&to=now&viewPanel=133'), + + stateTimeline.link.withTitle('scale log link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&from=now-45d&to=now&viewPanel=195') + + ]) + + + stateTimeline.options.withAlignValue('center') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.9) + + stateTimeline.options.withShowValue('always') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('{{term Run.keyword}} : {{term Threads}}th : 1 {{term kind.keyword}}') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('Run.keyword') + + elasticsearch.bucketAggs.Terms.withId('2') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('Threads') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('5') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + + + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('Rate') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + ]) + + +elasticsearch.withQuery("!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version") + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('Total {{term kind.keyword}} Memory (GB) [384GB]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('6') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('5') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('total_Memory') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + + ]) + + +elasticsearch.withQuery("!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version") + +elasticsearch.withRefId('B') + +elasticsearch.withTimeField('timestamp'), + + //// + + elasticsearch.withAlias('Total {{term kind.keyword}} %CPU [240 cores]') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('6') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('5') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('total_CPU') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version") + +elasticsearch.withRefId('C') + +elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('{{term Run.keyword}} : {{term Threads}}th :{{term scale}} {{term kind.keyword}}s') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('Run.keyword') + + elasticsearch.bucketAggs.Terms.withId('2') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('Threads') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('6') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('5') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('Rate') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + + ]) + + +elasticsearch.withQuery("!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version") + +elasticsearch.withRefId('D') + +elasticsearch.withTimeField('timestamp'), + + + //// + + elasticsearch.withAlias('Total {{term kind.keyword}} Memory (GB) [384GB]') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('2') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('5') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('total_Memory') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + + ]) + + +elasticsearch.withQuery("!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version") + +elasticsearch.withRefId('E') + +elasticsearch.withTimeField('timestamp'), + + //// + + elasticsearch.withAlias('Total {{term kind.keyword}} %CPU [240 cores]') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('2') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('5') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('total_CPU') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withSettings({}) + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + + ]) + + +elasticsearch.withQuery("!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version") + +elasticsearch.withRefId('F') + +elasticsearch.withTimeField('timestamp'), + + + + + ]), + + //// + + g.panel.stateTimeline.new('vdbench Latency (sec)') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-vdbench-results') + + + + g.panel.stateTimeline.withDescription('Lower is better') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withDecimals(1) + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMax(-1) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('dark-blue'), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(1), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(10), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(20), + + stateTimeline.thresholdStep.withColor('dark-red') + + stateTimeline.thresholdStep.withValue(50) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(50) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(131) + + + stateTimeline.withId(134) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTargetBlank(true) + + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&editPanel=133&from=now-45d&to=now') + + ]) + + + stateTimeline.options.withAlignValue('center') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.9) + + stateTimeline.options.withShowValue('always') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('{{term Run.keyword}} : {{term Threads}}th : 1 {{term kind.keyword}}') + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('Run.keyword') + + elasticsearch.bucketAggs.Terms.withId('2') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('Threads') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('5') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + + + + ]) + + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('Resp') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + + ]) + + +elasticsearch.withQuery("!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version") + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('"Total {{term kind.keyword}} Memory (GB) [384GB]') + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('5') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('total_Memory') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + + ]) + + +elasticsearch.withQuery("!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version") + +elasticsearch.withRefId('B') + +elasticsearch.withTimeField('timestamp'), + + //// + + + + elasticsearch.withAlias('Total {{term kind.keyword}} %CPU [240 cores]') + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('5') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('total_CPU') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withSettings({}) + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version") + +elasticsearch.withRefId('D') + +elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('{{term Run.keyword}} : {{term Threads}}th :{{term scale}} {{term kind.keyword}}s') + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('Run.keyword') + + elasticsearch.bucketAggs.Terms.withId('2') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('Threads') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('6') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('5') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('Resp') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + + ]) + + +elasticsearch.withQuery("SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version") + +elasticsearch.withRefId('C') + +elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('Total {{term kind.keyword}} Memory (GB) [384GB]') + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('5') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('total_Memory') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version") + +elasticsearch.withRefId('E') + +elasticsearch.withTimeField('timestamp'), + + //// + + elasticsearch.withAlias('Total {{term kind.keyword}} %CPU [240 cores]') + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('5') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('total_CPU') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withSettings({}) + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version") + +elasticsearch.withRefId('F') + +elasticsearch.withTimeField('timestamp') + + //// + + + + ]) + + + + ]), + + ////////////////////////////// + + g.panel.row.new("Clusterbuster - Cpusoaker") + + g.panel.row.withCollapsed(value=true) + + + g.panel.row.gridPos.withH(1) + + g.panel.row.gridPos.withW(24) + + g.panel.row.gridPos.withX(0) + + g.panel.row.gridPos.withY(15) + + + g.panel.row.withId(180) + + + g.panel.row.withPanels([ + g.panel.stateTimeline.new('Cpusoaker') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-clusterbuster-cpusoaker-results') + + g.panel.stateTimeline.withDescription('Higher is better') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMin(0) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('red'), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(50), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(80), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(90), + + stateTimeline.thresholdStep.withColor('dark-blue') + + stateTimeline.thresholdStep.withValue(100) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(10) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(182) + + + stateTimeline.withId(192) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150') + + ]) + + + stateTimeline.options.withAlignValue('left') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.7) + + stateTimeline.options.withShowValue('auto') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('Max {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('test_description.pods') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("") + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('CPU Iterations/sec {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('iterations_cpu_sec') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("") + +elasticsearch.withRefId('B') + +elasticsearch.withTimeField('timestamp') + + ]) + + stateTimeline.withTransformations([ + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "Diff Max ( runc - kata)", + "binary": { + "left": "Max runc", + "operator": "-", + "reducer": "sum", + "right": "Max kata" + }, + "mode": "reduceRow", + "reduce": { + "include": [ + "Max kata", + "Max runc" + ], + "reducer": "range" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "Diff CPU( kata / runc)", + "binary": { + "left": "CPU Iterations/sec kata", + "operator": "/", + "reducer": "sum", + "right": "CPU Iterations/sec runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "CPU Iterations/sec runc", + "CPU Iterations/sec kata" + ], + "reducer": "diff" + } + }), + stateTimeline.transformation.withId('organize') + + stateTimeline.transformation.withOptions({ + "excludeByName": { + "CPU Iterations/sec clusterbuster-ci": true, + "Diff Max ( runc - kata)": true, + "Max clusterbuster-ci": true + }, + "indexByName": { + "CPU Iterations/sec clusterbuster-ci": 5, + "CPU Iterations/sec kata": 3, + "CPU Iterations/sec runc": 2, + "Diff CPU( kata / runc)": 6, + "Diff Max ( runc - kata)": 1, + "Max clusterbuster-ci": 4, + "Max kata": 8, + "Max runc": 7, + "Time": 0 + }, + "renameByName": {} + }), + stateTimeline.transformation.withId('convertFieldType') + + stateTimeline.transformation.withOptions({ + "conversions": [ + { + "destinationType": "number", + "targetField": "Ratio Last( kata/ runc)" + }, + { + "destinationType": "number", + "targetField": "Diff CPU( kata / runc)" + } + ], + "fields": {} + }), + + + + + + + + ]), + + + //////////////////////////////// + + g.panel.stateTimeline.new('') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-clusterbuster-cpusoaker-results') + + g.panel.stateTimeline.withDescription('Lower is better') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withDecimals(1) + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMax(-1) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('dark-blue'), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(1), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(10), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(20), + + stateTimeline.thresholdStep.withColor('dark-red') + + stateTimeline.thresholdStep.withValue(50) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(3) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(192) + + + stateTimeline.withId(191) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150') + + ]) + + + stateTimeline.options.withAlignValue('left') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.7) + + stateTimeline.options.withShowValue('auto') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('Max {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('test_description.pods') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("") + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + ]) + + stateTimeline.withTransformations([ + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "Diff Max ( runc - kata)", + "binary": { + "left": "Max runc", + "operator": "-", + "reducer": "sum", + "right": "Max kata" + }, + "mode": "reduceRow", + "reduce": { + "include": [ + "Max kata", + "Max runc" + ], + "reducer": "range" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "Diff CPU( kata / runc)", + "binary": { + "left": "CPU Iterations/sec kata", + "operator": "/", + "reducer": "sum", + "right": "CPU Iterations/sec runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "CPU Iterations/sec runc", + "CPU Iterations/sec kata" + ], + "reducer": "diff" + } + }), + stateTimeline.transformation.withId('organize') + + stateTimeline.transformation.withOptions({ + "excludeByName": { + "CPU Iterations/sec clusterbuster-ci": true, + "Diff Max ( runc - kata)": false, + "Max clusterbuster-ci": true, + "Max kata": true, + "Max runc": true, + "Time": false + }, + "indexByName": { + "CPU Iterations/sec kata": 14, + "CPU Iterations/sec runc": 13, + "Diff CPU( kata - runc)": 15, + "Diff First( kata - runc)": 6, + "Diff Max ( runc - kata)": 3, + "Diff Memory( kata - runc)": 12, + "First start (sec) kata": 5, + "First start (sec) runc": 4, + "Last start (sec) kata": 8, + "Last start (sec) runc": 7, + "Max kata": 2, + "Max runc": 1, + "Memory (GB) kata": 11, + "Memory (GB) runc": 10, + "Ratio Last( kata/ runc)": 9, + "Time": 0 + }, + "renameByName": {} + }), + stateTimeline.transformation.withId('convertFieldType') + + stateTimeline.transformation.withOptions({ + "conversions": [ + { + "destinationType": "number", + "targetField": "Ratio Last( kata/ runc)" + }, + { + "destinationType": "number", + "targetField": "Diff CPU( kata / runc)" + } + ], + "fields": {} + }), + + + + + + + + ]), + + //////////////////////////////// + + g.panel.stateTimeline.new('') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-clusterbuster-cpusoaker-results') + + g.panel.stateTimeline.withDescription('Lower is better') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMax(-1) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('dark-blue'), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(1), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(10), + + stateTimeline.thresholdStep.withColor('light-red') + + stateTimeline.thresholdStep.withValue(20), + + stateTimeline.thresholdStep.withColor('dark-red') + + stateTimeline.thresholdStep.withValue(50) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(10) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(195) + + + stateTimeline.withId(185) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150') + + ]) + + + stateTimeline.options.withAlignValue('left') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.9) + + stateTimeline.options.withShowValue('auto') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('First start (sec) {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('first_pod_start') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("") + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp'), + + + //////// + + elasticsearch.withAlias('Last start (sec) {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('last_pod_start') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("") + +elasticsearch.withRefId('B') + +elasticsearch.withTimeField('timestamp'), + + + /////// + + elasticsearch.withAlias('Memory (MB) {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('memory_per_pod') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("") + +elasticsearch.withRefId('C') + +elasticsearch.withTimeField('timestamp'), + + + + + + ////// + + ]) + + stateTimeline.withTransformations([ + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "Diff First( kata - runc)", + "mode": "reduceRow", + "reduce": { + "include": [ + "First start (sec) runc", + "First start (sec) kata" + ], + "reducer": "diff" + }, + "replaceFields": false + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "Ratio Last( kata/ runc)", + "binary": { + "left": "Last start (sec) kata", + "operator": "/", + "reducer": "sum", + "right": "Last start (sec) runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "Last start (sec) runc", + "Last start (sec) kata" + ], + "reducer": "diff" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "Diff Memory( kata - runc)", + "binary": { + "left": "Memory (GB) runc", + "operator": "-", + "reducer": "sum", + "right": "Memory (GB) kata" + }, + "mode": "reduceRow", + "reduce": { + "include": [ + "Memory (MB) runc", + "Memory (MB) kata" + ], + "reducer": "diff" + } + }), + stateTimeline.transformation.withId('organize') + + stateTimeline.transformation.withOptions({ + "excludeByName": { + "First start (sec) clusterbuster-ci": true, + "Last start (sec) clusterbuster-ci": true, + "Memory (MB) clusterbuster-ci": true + }, + "indexByName": { + "Diff First( kata - runc)": 3, + "Diff Memory( kata - runc)": 11, + "First start (sec) clusterbuster-ci": 7, + "First start (sec) kata": 2, + "First start (sec) runc": 1, + "Last start (sec) clusterbuster-ci": 8, + "Last start (sec) kata": 5, + "Last start (sec) runc": 4, + "Memory (MB) clusterbuster-ci": 12, + "Memory (MB) kata": 10, + "Memory (MB) runc": 9, + "Ratio Last( kata/ runc)": 6, + "Time": 0 + }, + "renameByName": {} + }), + stateTimeline.transformation.withId('convertFieldType') + + stateTimeline.transformation.withOptions({ + "conversions": [ + { + "destinationType": "number", + "targetField": "Ratio Last( kata/ runc)" + }, + { + "destinationType": "number", + "targetField": "Diff CPU( kata / runc)" + } + ], + "fields": {} + }), + + + + + + + + ]), + + + + + + + + + ]), + + + + + /////////////////////////////// + + g.panel.row.new("Clusterbuster - FIO") + + g.panel.row.withCollapsed(value=true) + + + g.panel.row.gridPos.withH(1) + + g.panel.row.gridPos.withW(24) + + g.panel.row.gridPos.withX(0) + + g.panel.row.gridPos.withY(16) + + + g.panel.row.withId(148) + + + g.panel.row.withPanels([ + + g.panel.stateTimeline.new('FIO (IOPS/Throughtput)') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-clusterbuster-fio-results') + + g.panel.stateTimeline.withDescription('Higher is better') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMin(0) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('red'), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(50), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(80), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(90), + + stateTimeline.thresholdStep.withColor('dark-blue') + + stateTimeline.thresholdStep.withValue(100) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(15) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(183) + + + stateTimeline.withId(167) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150') + + ]) + + stateTimeline.options.withAlignValue('center') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.9) + + stateTimeline.options.withShowValue('always') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('read.iops: {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('read.iops') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery('') + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('write.iops: {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('write.iops') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery('') + +elasticsearch.withRefId('B') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('total.iops: {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('total.iops') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery('') + +elasticsearch.withRefId('C') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + elasticsearch.withAlias('read.throughput: {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('read.throughput') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery('') + +elasticsearch.withRefId('D') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + elasticsearch.withAlias('write.throughput: {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('write.throughput') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery('') + +elasticsearch.withRefId('E') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('total.throughput: {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('total.throughput') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery('') + +elasticsearch.withRefId('F') + +elasticsearch.withTimeField('timestamp') + + ]) + + + stateTimeline.withTransformations([ + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "read.iops kata/runc", + "binary": { + "left": "read.iops: kata", + "operator": "/", + "reducer": "sum", + "right": "read.iops: runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "read.iops: runc", + "read.iops: kata" + ], + "reducer": "diffperc" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "write.iops kata/runc", + "binary": { + "left": "write.iops: kata", + "operator": "/", + "reducer": "sum", + "right": "write.iops: runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "write.iops: runc", + "write.iops: kata" + ], + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "total.iops kata/runc", + "binary": { + "left": "total.iops: kata", + "operator": "/", + "reducer": "sum", + "right": "total.iops: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "read.throughput kata/runc", + "binary": { + "left": "read.throughput: kata", + "operator": "/", + "reducer": "sum", + "right": "read.throughput: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "write.throughput kata/runc", + "binary": { + "left": "write.throughput: kata", + "operator": "/", + "reducer": "sum", + "right": "write.throughput: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "total.throughput kata/runc", + "binary": { + "left": "total.throughput: kata", + "operator": "/", + "reducer": "sum", + "right": "total.throughput: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('organize') + + stateTimeline.transformation.withOptions({ + "excludeByName": { + "read.iops: clusterbuster-ci": true, + "read.throughput: clusterbuster-ci": true, + "total.iops: clusterbuster-ci": true, + "total.throughput: clusterbuster-ci": true, + "write.iops: clusterbuster-ci": true, + "write.throughput: clusterbuster-ci": true + }, + "indexByName": { + "Time": 0, + "read.iops kata/runc": 3, + "read.iops: kata": 2, + "read.iops: runc": 1, + "read.throughput kata/runc": 12, + "read.throughput: kata": 11, + "read.throughput: runc": 10, + "total.iops kata/runc": 9, + "total.iops: kata": 8, + "total.iops: runc": 7, + "total.throughput kata/runc": 18, + "total.throughput: kata": 17, + "total.throughput: runc": 16, + "write.iops kata/runc": 6, + "write.iops: kata": 5, + "write.iops: runc": 4, + "write.throughput kata/runc": 15, + "write.throughput: kata": 14, + "write.throughput: runc": 13 + }, + "renameByName": {} + }), + stateTimeline.transformation.withId('convertFieldType') + + stateTimeline.transformation.withOptions({ + "conversions": [ + { + "destinationType": "number", + "targetField": "read.iops kata/runc" + }, + { + "destinationType": "number", + "targetField": "write.iops kata/runc" + }, + { + "destinationType": "number", + "targetField": "total.iops kata/runc" + }, + { + "destinationType": "number", + "targetField": "read.throughput kata/runc" + }, + { + "destinationType": "number", + "targetField": "write.throughput kata/runc" + }, + { + "destinationType": "number", + "targetField": "total.throughput kata/runc" + } + ], + "fields": {} + }), + + + + + + + + ]), + + + + + ]), + + + /////////////////////////////// + + + + g.panel.row.new("Clusterbuster - Files") + + g.panel.row.withCollapsed(value=true) + + + g.panel.row.gridPos.withH(1) + + g.panel.row.gridPos.withW(24) + + g.panel.row.gridPos.withX(0) + + g.panel.row.gridPos.withY(17) + + + g.panel.row.withId(182) + + + g.panel.row.withPanels([ + + g.panel.stateTimeline.new('Files (sec)') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-clusterbuster-files-results') + + g.panel.stateTimeline.withDescription('Lower is better') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withDecimals(2) + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMax(-1) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('dark-blue'), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(1), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(10), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(20), + + stateTimeline.thresholdStep.withColor('dark-red') + + stateTimeline.thresholdStep.withValue(50) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(16) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(184) + + + stateTimeline.withId(165) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150') + + ]) + + stateTimeline.options.withAlignValue('left') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.9) + + stateTimeline.options.withShowValue('auto') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('create: 4096: {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('create.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery('test_description.filesize:4096') + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('create: 262,144: {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('create.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery('test_description.filesize:262144') + +elasticsearch.withRefId('G') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('read : 4096: {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('read.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery('test_description.filesize:4096') + +elasticsearch.withRefId('C') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + elasticsearch.withAlias('read : 262,144: {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('read.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery('test_description.filesize:262144') + +elasticsearch.withRefId('I') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + elasticsearch.withAlias('remove : 4096: {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('remove.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery('test_description.filesize:4096') + +elasticsearch.withRefId('E') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('remove : 262,144: {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('remove.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery('test_description.filesize:262144') + +elasticsearch.withRefId('K') + +elasticsearch.withTimeField('timestamp') + + ]) + + + stateTimeline.withTransformations([ + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "create 4096 kata/runc", + "binary": { + "left": "create: 4096: kata", + "operator": "/", + "reducer": "sum", + "right": "create: 4096: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "create 262,144 kata/runc", + "binary": { + "left": "create: 262,144: kata", + "operator": "/", + "reducer": "sum", + "right": "create: 262,144: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "read 4096 kata/runc", + "binary": { + "left": "read : 4096: kata", + "operator": "/", + "reducer": "sum", + "right": "read : 4096: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "read 262,144 kata/runc", + "binary": { + "left": "read : 262,144: kata", + "operator": "/", + "reducer": "sum", + "right": "read : 262,144: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "remove 4096 kata/runc", + "binary": { + "left": "remove : 4096: kata", + "operator": "/", + "reducer": "sum", + "right": "remove : 4096: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "remove 262,144 kata/runc", + "binary": { + "left": "remove : 262,144: kata", + "operator": "/", + "reducer": "sum", + "right": "remove : 262,144: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('organize') + + stateTimeline.transformation.withOptions({ + "excludeByName": { + "create: 262,144: clusterbuster-ci": true, + "create: 4096: clusterbuster-ci": true, + "read : 262,144: clusterbuster-ci": true, + "read : 4096: clusterbuster-ci": true, + "remove : 262,144: clusterbuster-ci": true, + "remove : 4096: clusterbuster-ci": true + }, + "indexByName": { + "Time": 0, + "create 262,144 kata/runc": 6, + "create 4096 kata/runc": 3, + "create: 262,144: kata": 5, + "create: 262,144: runc": 4, + "create: 4096: kata": 2, + "create: 4096: runc": 1, + "read 262,144 kata/runc": 12, + "read 4096 kata/runc": 9, + "read : 262,144: kata": 11, + "read : 262,144: runc": 10, + "read : 4096: kata": 8, + "read : 4096: runc": 7, + "remove 262,144 kata/runc": 18, + "remove 4096 kata/runc": 15, + "remove : 262,144: kata": 17, + "remove : 262,144: runc": 16, + "remove : 4096: kata": 14, + "remove : 4096: runc": 13 + }, + "renameByName": {} + }), + stateTimeline.transformation.withId('convertFieldType') + + stateTimeline.transformation.withOptions({ + "conversions": [ + { + "destinationType": "number", + "targetField": "create 4096 kata/runc" + }, + { + "destinationType": "number", + "targetField": "create 262,144 kata/runc" + }, + { + "destinationType": "number", + "targetField": "read 4096 kata/runc" + }, + { + "destinationType": "number", + "targetField": "read 262,144 kata/runc" + }, + { + "destinationType": "number", + "targetField": "remove 4096 kata/runc" + }, + { + "destinationType": "number", + "targetField": "remove 262,144 kata/runc" + } + ], + "fields": {} + }), + + + + + + + + ]), + + + + + ]), + + + /////////////////////////////// + + + g.panel.row.new("Clusterbuster - Uperf") + + g.panel.row.withCollapsed(value=true) + + + g.panel.row.gridPos.withH(1) + + g.panel.row.gridPos.withW(24) + + g.panel.row.gridPos.withX(0) + + g.panel.row.gridPos.withY(18) + + + g.panel.row.withId(184) + + + g.panel.row.withPanels([ + + g.panel.stateTimeline.new('Uperf (Latency)') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-clusterbuster-uperf-results') + + g.panel.stateTimeline.withDescription('Lower is better') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withDecimals(2) + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMax(-1) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('dark-blue'), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(1), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(10), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(20), + + stateTimeline.thresholdStep.withColor('dark-red') + + stateTimeline.thresholdStep.withValue(50) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(9) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(185) + + + stateTimeline.withId(169) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150') + + ]) + + stateTimeline.options.withAlignValue('left') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.7) + + stateTimeline.options.withShowValue('auto') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('latency: {{term test_description.msgsize}}: {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('test_description.msgsize') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('9') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('max_time_op') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value*1000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery('') + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + ]) + + + stateTimeline.withTransformations([ + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "rate:64 kata/runc", + "binary": { + "left": "rate: 64: kata", + "operator": "/", + "reducer": "sum", + "right": "rate: 64: runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "rate: 64: runc", + "rate: 64: kata" + ], + "reducer": "sum" + }, + "replaceFields": false + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "rate:1024 kata/runc", + "binary": { + "left": "rate: 1024: kata", + "operator": "/", + "reducer": "sum", + "right": "rate: 1024: runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "rate: 1024: runc", + "rate: 1024: kata" + ], + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "rate:8192 kata/runc", + "binary": { + "left": "rate: 8192: kata", + "operator": "/", + "reducer": "sum", + "right": "rate: 8192: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('organize') + + stateTimeline.transformation.withOptions({ + "excludeByName": { + "latency: 1024: clusterbuster-ci": true, + "latency: 64: clusterbuster-ci": true, + "latency: 8192: clusterbuster-ci": true + }, + "indexByName": { + "Time": 0, + "rate: 1024: kata": 5, + "rate: 1024: runc": 4, + "rate: 64: kata": 2, + "rate: 64: runc": 1, + "rate: 8192: kata": 8, + "rate: 8192: runc": 7, + "rate:1024 kata/runc": 6, + "rate:64 kata/runc": 3, + "rate:8192 kata/runc": 9 + }, + "renameByName": {} + }), + stateTimeline.transformation.withId('convertFieldType') + + stateTimeline.transformation.withOptions({ + "conversions": [ + { + "destinationType": "number", + "targetField": "rate:64 kata/runc" + }, + { + "destinationType": "number", + "targetField": "rate:1024 kata/runc" + }, + { + "destinationType": "number", + "targetField": "rate:8192 kata/runc" + } + ], + "fields": {} + }), + + + + + + + + ]), + + /////////////// + + + + g.panel.stateTimeline.new('Uperf (Throughput)') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-clusterbuster-uperf-results') + + g.panel.stateTimeline.withDescription('Higher is better') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMin(0) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('red'), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(50), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(80), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(90), + + stateTimeline.thresholdStep.withColor('dark-blue') + + stateTimeline.thresholdStep.withValue(100) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(12) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(194) + + + stateTimeline.withId(174) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150') + + ]) + + stateTimeline.options.withAlignValue('left') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.7) + + stateTimeline.options.withShowValue('auto') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('rate: {{term test_description.msgsize}}: {{term test_description.runtime.keyword}}') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('test_description.msgsize') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('test_description.runtime.keyword') + + elasticsearch.bucketAggs.Terms.withId('9') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('rate') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery('') + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + ]) + + + stateTimeline.withTransformations([ + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "rate: 64 kata/runc", + "binary": { + "left": "rate: 64: kata", + "operator": "/", + "reducer": "sum", + "right": "rate: 64: runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "rate: 64: runc", + "rate: 64: kata" + ], + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "rate: 1024: kata/runc", + "binary": { + "left": "rate: 1024: kata", + "operator": "/", + "reducer": "sum", + "right": "rate: 1024: runc" + }, + "mode": "binary", + "reduce": { + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('calculateField') + + stateTimeline.transformation.withOptions({ + "alias": "rate:8192: kata/runc", + "binary": { + "left": "rate: 8192: kata", + "operator": "/", + "reducer": "sum", + "right": "rate: 8192: runc" + }, + "mode": "binary", + "reduce": { + "include": [ + "rate: 8192: runc", + "rate: 8192: kata" + ], + "reducer": "sum" + } + }), + stateTimeline.transformation.withId('organize') + + stateTimeline.transformation.withOptions({ + "excludeByName": { + "rate: 1024: clusterbuster-ci": true, + "rate: 64: clusterbuster-ci": true, + "rate: 8192: clusterbuster-ci": true + }, + "indexByName": { + "Time": 0, + "rate: 1024: kata": 5, + "rate: 1024: kata/runc": 6, + "rate: 1024: runc": 4, + "rate: 64 kata/runc": 3, + "rate: 64: kata": 2, + "rate: 64: runc": 1, + "rate: 8192: kata": 8, + "rate: 8192: runc": 7, + "rate:8192: kata/runc": 9 + }, + "renameByName": {} + }), + stateTimeline.transformation.withId('convertFieldType') + + stateTimeline.transformation.withOptions({ + "conversions": [ + { + "destinationType": "number", + "targetField": "rate: 64 kata/runc" + }, + { + "destinationType": "number", + "targetField": "rate: 1024: kata/runc" + }, + { + "destinationType": "number", + "targetField": "rate:8192: kata/runc" + } + ], + "fields": {} + }), + + + + + + + + ]) + ]), + + + + + + + + /////////////////////////////// + + + + + + g.panel.row.new("Clusterbuster - release") + + g.panel.row.withCollapsed(value=true) + + + g.panel.row.gridPos.withH(1) + + g.panel.row.gridPos.withW(24) + + g.panel.row.gridPos.withX(0) + + g.panel.row.gridPos.withY(19) + + + g.panel.row.withId(157) + + + g.panel.row.withPanels([ + g.panel.stateTimeline.new('clusterbuster-cpusoaker [OVN - 09/19]') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-clusterbuster-cpusoaker-release-results') + + g.panel.stateTimeline.withDescription('OVN - 09/19') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMin(0) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('red'), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(50), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(80), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(90), + + stateTimeline.thresholdStep.withColor('dark-blue') + + stateTimeline.thresholdStep.withValue(100) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(36) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(261) + + + stateTimeline.withId(164) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=1659592686997&to=1663480686997&viewPanel=166') + + ]) + + + stateTimeline.options.withAlignValue('left') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.9) + + stateTimeline.options.withShowValue('auto') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('pod: max') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + stateTimeline.datasource.withType('elasticsearch') + + stateTimeline.datasource.withUid('cd4b9568-576c-4528-b200-89b91a098410') + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('test_description.pods') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='runc'") + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('kata: max') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + stateTimeline.datasource.withType('elasticsearch') + + stateTimeline.datasource.withUid('cd4b9568-576c-4528-b200-89b91a098410') + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('test_description.pods') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='kata'") + +elasticsearch.withRefId('B') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('pod: Memory per pod (MB)') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + stateTimeline.datasource.withType('elasticsearch') + + stateTimeline.datasource.withUid('cd4b9568-576c-4528-b200-89b91a098410') + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('memory_per_pod') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='runc'") + +elasticsearch.withRefId('C') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('kata: Memory per kata (MB)') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + stateTimeline.datasource.withType('elasticsearch') + + stateTimeline.datasource.withUid('cd4b9568-576c-4528-b200-89b91a098410') + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('memory_per_pod') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='kata'") + +elasticsearch.withRefId('D') + +elasticsearch.withTimeField('timestamp'), + + ////// + + + elasticsearch.withAlias('"pod: start per seconds') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + stateTimeline.datasource.withType('elasticsearch') + + stateTimeline.datasource.withUid('cd4b9568-576c-4528-b200-89b91a098410') + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('pod_starts_per_second') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='runc'") + +elasticsearch.withRefId('E') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('kata: start per seconds') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + stateTimeline.datasource.withType('elasticsearch') + + stateTimeline.datasource.withUid('cd4b9568-576c-4528-b200-89b91a098410') + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('pod_starts_per_second') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='kata'") + +elasticsearch.withRefId('F') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('pod: Iteration cpu sec') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + stateTimeline.datasource.withType('elasticsearch') + + stateTimeline.datasource.withUid('cd4b9568-576c-4528-b200-89b91a098410') + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('iterations_cpu_sec') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='runc'") + +elasticsearch.withRefId('G') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('kata: Iteration cpu sec') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + stateTimeline.datasource.withType('elasticsearch') + + stateTimeline.datasource.withUid('cd4b9568-576c-4528-b200-89b91a098410') + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('iterations_cpu_sec') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='kata'") + +elasticsearch.withRefId('H') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('pod: Iteration sec') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + stateTimeline.datasource.withType('elasticsearch') + + stateTimeline.datasource.withUid('cd4b9568-576c-4528-b200-89b91a098410') + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('iterations_sec') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='runc'") + +elasticsearch.withRefId('I') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('kata: Iteration sec') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + stateTimeline.datasource.withType('elasticsearch') + + stateTimeline.datasource.withUid('cd4b9568-576c-4528-b200-89b91a098410') + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('iterations_sec') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='kata'") + +elasticsearch.withRefId('J') + +elasticsearch.withTimeField('timestamp') + + + ]), + + + + + + + ///////////////////////////////////////////// + + + + + + g.panel.stateTimeline.new('clusterbuster-files: elapsed_time: Direct/ 64 dirs/files') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-clusterbuster-files-release-results') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMin(0) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('red'), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(50), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(80), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(90), + + stateTimeline.thresholdStep.withColor('dark-blue') + + stateTimeline.thresholdStep.withValue(100) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(36) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(297) + + + stateTimeline.withId(153) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150') + + ]) + + + stateTimeline.options.withAlignValue('left') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.9) + + stateTimeline.options.withShowValue('auto') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('pod: create: filesize 4096') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('create.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='runc' and test_description.filesize:4096") + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('kata: create: filesize 4096') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('create.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='kata' and test_description.filesize:4096") + +elasticsearch.withRefId('B') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('pod: read : filesize 4096') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('read.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='runc' and test_description.filesize:4096") + +elasticsearch.withRefId('C') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('kata: read: filesize 4096') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('read.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='kata' and test_description.filesize:4096") + +elasticsearch.withRefId('D') + +elasticsearch.withTimeField('timestamp'), + + ////// + + + elasticsearch.withAlias('pod: remove : filesize 4096') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('remove.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='runc' and test_description.filesize:4096") + +elasticsearch.withRefId('E') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('kata: remove: filesize 4096') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('remove.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='kata' and test_description.filesize:4096") + +elasticsearch.withRefId('F') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('pod: create: filesize 262,144') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('create.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='runc' and test_description.filesize:262144") + +elasticsearch.withRefId('G') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('kata: create: filesize 262,144') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('create.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='kata' and test_description.filesize:262144") + +elasticsearch.withRefId('H') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('pod: read : filesize 262,144') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('read.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='runc' and test_description.filesize:262144") + +elasticsearch.withRefId('I') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('kata: read : filesize 262,144') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('read.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='kata' and test_description.filesize:262144") + +elasticsearch.withRefId('J') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('pod: remove : filesize 262,144') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('remove.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='runc' and test_description.filesize:262144") + +elasticsearch.withRefId('K') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('kata: remove: filesize 262,144') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('remove.elapsed_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='kata' and test_description.filesize:262144") + +elasticsearch.withRefId('K') + +elasticsearch.withTimeField('timestamp') + + + ]), + + + + + + + + ///////////////////////////////////////////// + + + + + + g.panel.stateTimeline.new('clusterbuster-fio') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-clusterbuster-fio-release-results') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMin(0) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('red'), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(50), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(80), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(90), + + stateTimeline.thresholdStep.withColor('dark-blue') + + stateTimeline.thresholdStep.withValue(100) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(36) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(333) + + + stateTimeline.withId(168) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150') + + ]) + + + stateTimeline.options.withAlignValue('left') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.9) + + stateTimeline.options.withShowValue('auto') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('runc read') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('read.iops') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='runc'") + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('kata read') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('read.iops') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='kata'") + +elasticsearch.withRefId('B') + +elasticsearch.withTimeField('timestamp') + ]), + + + + + + + ///////////////////////////////////////////// + + + + + + g.panel.stateTimeline.new('clusterbuster-uperf') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-clusterbuster-uperf-release-results') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(70) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withMappings([]) + + stateTimeline.standardOptions.withMin(0) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('red'), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(50), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(80), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(90), + + stateTimeline.thresholdStep.withColor('dark-blue') + + stateTimeline.thresholdStep.withValue(100) + + ]) + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(36) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(369) + + + stateTimeline.withId(170) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150') + + ]) + + + stateTimeline.options.withAlignValue('left') + + stateTimeline.options.legend.withDisplayMode('list') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.9) + + stateTimeline.options.withShowValue('auto') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('runc rate') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('rate') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='runc'") + +elasticsearch.withRefId('A') + +elasticsearch.withTimeField('timestamp'), + + + ////// + + + elasticsearch.withAlias('kata rate') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.settings.withMinDocCount('0') + + elasticsearch.bucketAggs.DateHistogram.settings.withTimeZone('utc') + + elasticsearch.bucketAggs.DateHistogram.settings.withTrimEdges('0') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('rate') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('6') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + +elasticsearch.withQuery("test_description.runtime='kata'") + +elasticsearch.withRefId('B') + +elasticsearch.withTimeField('timestamp') + ]) + + + + ]), + + + + + + + + + + + + + + + + ////////////////////////////////////////////////////// + + + g.panel.row.new("BootStorm") + + g.panel.row.withCollapsed(value=true) + + + g.panel.row.gridPos.withH(1) + + g.panel.row.gridPos.withW(24) + + g.panel.row.gridPos.withX(0) + + g.panel.row.gridPos.withY(20) + + + g.panel.row.withId(176) + + + g.panel.row.withPanels([ + g.panel.stateTimeline.new('240 Fedora37 VMs(Sec)') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-bootstorm-results') + + g.panel.stateTimeline.withDescription('Time till VM Login - Lower is better') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(77) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withDecimals(1) + + stateTimeline.fieldConfig.defaults.withMappings([ + stateTimeline.valueMapping.ValueMap.withOptions( + { + "0": { + "color": "transparent", + "index": 0, + "text": "." + } + } + ) + + stateTimeline.valueMapping.ValueMap.withType('value') + + ]) + + stateTimeline.standardOptions.withMax(-1) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('dark-blue'), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(1), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(10), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(20), + + stateTimeline.thresholdStep.withColor('dark-red') + + stateTimeline.thresholdStep.withValue(50) + + ]) + + stateTimeline.standardOptions.withUnit('none') + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(19) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(187) + + + stateTimeline.withId(178) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTargetBlank(true) + + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=190') + + ]) + + + stateTimeline.options.withAlignValue('center') + + stateTimeline.options.legend.withDisplayMode('hidden') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.9) + + stateTimeline.options.withShowValue('always') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('Min') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Min.withField('bootstorm_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Min.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Min.settings.withScript('_value/1000') + + elasticsearch.metrics.MetricAggregationWithSettings.Min.withType('min') + + ]) + + + elasticsearch.withQuery('scale:240 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('timestamp'), + + //// + + elasticsearch.withAlias('Max') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('bootstorm_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:240 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('B') + + elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Percentiles.withField('bootstorm_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Percentiles.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Percentiles.settings.withPercents(['25', '50', '75', '95', '99']) + + elasticsearch.metrics.MetricAggregationWithSettings.Percentiles.settings.withScript('_value/1000') + + elasticsearch.metrics.MetricAggregationWithSettings.Percentiles.withType('percentiles') + + ]) + + + elasticsearch.withQuery('scale:240 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('C') + + elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('AVG. 100 vms {{term node.keyword}}') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('node.keyword') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('bootstorm_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.settings.withScript('_value/1000') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + ]) + + + elasticsearch.withQuery('scale:240 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('D') + + elasticsearch.withTimeField('timestamp'), + + //// + + elasticsearch.withAlias('Memory(GB) [384GB]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('total_Memory') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:240 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('F') + + elasticsearch.withTimeField('timestamp'), + + //// + + elasticsearch.withAlias('Memory Worker-0 (GB) [128GB]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('worker-0_Memory') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:240 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('E') + + elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('Memory Worker-1 (GB) [128GB]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('worker-1_Memory') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:240 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('G') + + elasticsearch.withTimeField('timestamp'), + + //// + + + + elasticsearch.withAlias('Memory Worker-2 (GB) [128GB]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('worker-2_Memory') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:240 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('H') + + elasticsearch.withTimeField('timestamp'), + + //// + + + + elasticsearch.withAlias('%CPU [240 cores]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('total_CPU') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withSettings({}) + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:240 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('I') + + elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('%CPU worker-0 [80 cores]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('worker-0_CPU') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withSettings({}) + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:240 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('J') + + elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('%CPU worker-1 [80 cores]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('worker-1_CPU') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withSettings({}) + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:240 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('K') + + elasticsearch.withTimeField('timestamp'), + + //// + + elasticsearch.withAlias('%CPU worker-2 [80 cores]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('worker-2_CPU') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withSettings({}) + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:240 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('L') + + elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('VMs #') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.UniqueCount.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.UniqueCount.withType('count') + + ]) + + + elasticsearch.withQuery('scale:240 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('M') + + elasticsearch.withTimeField('timestamp') + + //// + + + + + + + + + + ]), + + //////////////////////// + + + g.panel.stateTimeline.new('120 Windows Server 2019 VMs virtio (Sec)') + + stateTimeline.queryOptions.withDatasource('Elasticsearch-windows-results') + + g.panel.stateTimeline.withDescription('Time till VM Login - Lower is better') + + + stateTimeline.standardOptions.color.withMode('thresholds') + + stateTimeline.fieldConfig.defaults.custom.withFillOpacity(77) + + stateTimeline.fieldConfig.defaults.custom.withLineWidth(0) + + + stateTimeline.fieldConfig.defaults.withDecimals(1) + + stateTimeline.fieldConfig.defaults.withMappings([ + stateTimeline.valueMapping.ValueMap.withOptions( + { + "0": { + "color": "transparent", + "index": 0, + "text": "." + } + } + ) + + stateTimeline.valueMapping.ValueMap.withType('value') + + ]) + + stateTimeline.standardOptions.withMax(-1) + + stateTimeline.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('dark-blue'), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(1), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(10), + + stateTimeline.thresholdStep.withColor('semi-dark-orange') + + stateTimeline.thresholdStep.withValue(20), + + stateTimeline.thresholdStep.withColor('dark-red') + + stateTimeline.thresholdStep.withValue(50) + + ]) + + stateTimeline.standardOptions.withUnit('none') + + stateTimeline.fieldConfig.withOverrides([]) + + + stateTimeline.gridPos.withH(19) + + stateTimeline.gridPos.withW(24) + + stateTimeline.gridPos.withX(0) + + stateTimeline.gridPos.withY(206) + + + stateTimeline.withId(193) + + stateTimeline.withInterval('1d') + + + stateTimeline.panelOptions.withLinks([ + stateTimeline.link.withTargetBlank(true) + + stateTimeline.link.withTitle('artifacts link') + + stateTimeline.link.withUrl('https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&from=now-45d&to=now&viewPanel=194') + + ]) + + + stateTimeline.options.withAlignValue('center') + + stateTimeline.options.legend.withDisplayMode('hidden') + + stateTimeline.options.legend.withPlacement('bottom') + + stateTimeline.options.withMergeValues(value = false) + + stateTimeline.options.withRowHeight(value = 0.9) + + stateTimeline.options.withShowValue('always') + + stateTimeline.options.tooltip.withMode('single') + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('Min') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Min.withField('bootstorm_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Min.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Min.settings.withScript('_value/1000') + + elasticsearch.metrics.MetricAggregationWithSettings.Min.withType('min') + + ]) + + + elasticsearch.withQuery('scale:120 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('timestamp'), + + //// + + elasticsearch.withAlias('Max') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('bootstorm_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:120 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('B') + + elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Percentiles.withField('bootstorm_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Percentiles.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Percentiles.settings.withPercents(['25', '50', '75', '95', '99']) + + elasticsearch.metrics.MetricAggregationWithSettings.Percentiles.settings.withScript('_value/1000') + + elasticsearch.metrics.MetricAggregationWithSettings.Percentiles.withType('percentiles') + + ]) + + + elasticsearch.withQuery('scale:120 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('C') + + elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('AVG. 40 vms {{term node.keyword}}') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('node.keyword') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('bootstorm_time') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.settings.withScript('_value/1000') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + ]) + + + elasticsearch.withQuery('scale:120 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('D') + + elasticsearch.withTimeField('timestamp'), + + //// + + elasticsearch.withAlias('Memory(GB) [384GB]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('total_Memory') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000000/2') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:120 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('F') + + elasticsearch.withTimeField('timestamp'), + + //// + + elasticsearch.withAlias('Memory Worker-0 (GB) [128GB]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('worker-0_Memory') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:240 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('E') + + elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('Memory Worker-1 (GB) [128GB]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('worker-1_Memory') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000000/2') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:120 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('G') + + elasticsearch.withTimeField('timestamp'), + + //// + + + + elasticsearch.withAlias('Memory Worker-2 (GB) [128GB]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('worker-2_Memory') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000000000/2') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:120 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('H') + + elasticsearch.withTimeField('timestamp'), + + //// + + + + elasticsearch.withAlias('%CPU [240 cores]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('total_CPU') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withSettings({}) + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:120 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('I') + + elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('%CPU worker-0 [80 cores]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('worker-0_CPU') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withSettings({}) + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:120 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('J') + + elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('%CPU worker-1 [80 cores]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('worker-1_CPU') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withSettings({}) + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:120 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('K') + + elasticsearch.withTimeField('timestamp'), + + //// + + elasticsearch.withAlias('%CPU worker-2 [80 cores]') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('worker-2_CPU') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withSettings({}) + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + ]) + + + elasticsearch.withQuery('scale:120 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('L') + + elasticsearch.withTimeField('timestamp'), + + //// + + + elasticsearch.withAlias('VMs #') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + + + ]) + + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.UniqueCount.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.UniqueCount.withType('count') + + ]) + + + elasticsearch.withQuery('scale:120 AND ocp_version:$ocp_version') + + elasticsearch.withRefId('M') + + elasticsearch.withTimeField('timestamp') + + //// + + + + + + + + + + ]) + + + + ]), + + + + g.panel.row.new("Artifacts") + + g.panel.row.withCollapsed(value=true) + + + g.panel.row.gridPos.withH(1) + + g.panel.row.gridPos.withW(24) + + g.panel.row.gridPos.withX(0) + + g.panel.row.gridPos.withY(21) + + + g.panel.row.withId(125) + + + g.panel.row.withPanels([ + g.panel.table.new("HammerDB artifacts") + + g.panel.table.queryOptions.withDatasource('Elasticsearch-hammerdb-results') + + g.panel.table.fieldConfig.defaults.thresholds.withMode('thresholds') + + + g.panel.table.panelOptions.withLinks([ + g.panel.table.link.withTargetBlank(true) + + g.panel.table.link.withTitle('link') + + g.panel.table.link.withUrl('${__data.fields[\'run_artifacts_url.keyword\']}') + + ]) + + + g.panel.table.fieldConfig.defaults.withMappings([]) + + g.panel.table.standardOptions.withMin(0) + + g.panel.table.fieldConfig.defaults.thresholds.withMode('percentage') + + g.panel.table.fieldConfig.defaults.thresholds.withSteps([ + g.panel.table.thresholdStep.withColor('semi-dark-red'), + + g.panel.table.thresholdStep.withColor('light-orange') + + g.panel.table.thresholdStep.withValue(50), + + g.panel.table.thresholdStep.withColor('super-light-green') + + g.panel.table.thresholdStep.withValue(80), + + g.panel.table.thresholdStep.withColor('dark-green') + + g.panel.table.thresholdStep.withValue(90), + + g.panel.table.thresholdStep.withColor('dark-blue') + + g.panel.table.thresholdStep.withValue(100) + + ]) + + g.panel.table.fieldConfig.withOverrides([ + g.panel.table.fieldOverride.byName.new('ci_date.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',169) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Date'), + + g.panel.table.fieldOverride.byName.new('db_type.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',137) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Database'), + + g.panel.table.fieldOverride.byName.new('current_worker') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',134) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Thread'), + + g.panel.table.fieldOverride.byName.new('kind.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',159) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Kind'), + + g.panel.table.fieldOverride.byName.new('run_artifacts_url.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',1068) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Artifacts Link'), + + g.panel.table.fieldOverride.byName.new('storage_type.keyword') + + g.panel.table.fieldOverride.byName.withProperty('displayName','Storage'), + + + + + ]) + + + g.panel.table.gridPos.withH(28) + + g.panel.table.gridPos.withW(24) + + g.panel.table.gridPos.withX(0) + + g.panel.table.gridPos.withY(22) + + + g.panel.table.withId(128) + + g.panel.table.queryOptions.withInterval('1d') + + g.panel.table.options.footer.TableFooterOptions.withFields('') + + g.panel.table.options.footer.TableFooterOptions.withReducer('sum') + + g.panel.table.options.footer.TableFooterOptions.withShow(false) + + g.panel.table.options.withShowHeader(true) + + g.panel.table.options.withSortBy([]) + + g.panel.table.withPluginVersion() + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('ci_date.keyword') + + elasticsearch.bucketAggs.Terms.withId('6') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('db_type.keyword') + + elasticsearch.bucketAggs.Terms.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('current_worker') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('5') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('storage_type.keyword') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('run_artifacts_url.keyword') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms') + + + + + + ]) + + + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Max.withField('tpm') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.settings.withScript('_value/1000') + + elasticsearch.metrics.MetricAggregationWithSettings.Max.withType('max') + + + ]) + + elasticsearch.withQuery('_exists_:tpm AND db_type:$db_type AND current_worker:$current_worker AND kind:$kind') + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('timestamp') + ]), + + + + + + //////////////// + + + + + g.panel.table.new("Uperf artifacts") + + g.panel.table.queryOptions.withDatasource('Elasticsearch-uperf-results') + + g.panel.table.fieldConfig.defaults.thresholds.withMode('thresholds') + + g.panel.table.standardOptions.withDecimals(1) + + + g.panel.table.panelOptions.withLinks([ + g.panel.table.link.withTargetBlank(true) + + g.panel.table.link.withTitle('link') + + g.panel.table.link.withUrl('${__data.fields[\'run_artifacts_url.keyword\']}') + + ]) + + + g.panel.table.fieldConfig.defaults.withMappings([]) + + g.panel.table.standardOptions.withMin(0) + + g.panel.table.fieldConfig.defaults.thresholds.withMode('percentage') + + g.panel.table.fieldConfig.defaults.thresholds.withSteps([ + g.panel.table.thresholdStep.withColor('semi-dark-red'), + + g.panel.table.thresholdStep.withColor('light-orange') + + g.panel.table.thresholdStep.withValue(50), + + g.panel.table.thresholdStep.withColor('super-light-green') + + g.panel.table.thresholdStep.withValue(80), + + g.panel.table.thresholdStep.withColor('dark-green') + + g.panel.table.thresholdStep.withValue(90), + + g.panel.table.thresholdStep.withColor('dark-blue') + + g.panel.table.thresholdStep.withValue(100) + + ]) + + g.panel.table.fieldConfig.withOverrides([ + g.panel.table.fieldOverride.byName.new('ci_date.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',169) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Date'), + + g.panel.table.fieldOverride.byName.new('read_message_size') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',167) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Read Message Size'), + + g.panel.table.fieldOverride.byName.new('num_threads') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',125) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Thread'), + + g.panel.table.fieldOverride.byName.new('kind.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',114) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Kind'), + + g.panel.table.fieldOverride.byName.new('run_artifacts_url.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',1068) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Artifacts Link'), + + g.panel.table.fieldOverride.byName.new('Average') + + g.panel.table.fieldOverride.byName.withProperty('displayName','Average Gbits') + + + ]) + + + g.panel.table.gridPos.withH(15) + + g.panel.table.gridPos.withW(24) + + g.panel.table.gridPos.withX(0) + + g.panel.table.gridPos.withY(50) + + + g.panel.table.withId(129) + + g.panel.table.queryOptions.withInterval('1d') + + g.panel.table.options.footer.TableFooterOptions.withFields('') + + g.panel.table.options.footer.TableFooterOptions.withReducer('sum') + + g.panel.table.options.footer.TableFooterOptions.withShow(false) + + g.panel.table.options.withShowHeader(true) + + g.panel.table.options.withSortBy([]) + + g.panel.table.withPluginVersion() + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('ci_date.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('5') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('read_message_size') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('num_threads') + + elasticsearch.bucketAggs.Terms.withId('5') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('asc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('6') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('run_artifacts_url.keyword') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms') + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('norm_byte') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.settings.withScript('_value*8/1000000000') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + + ]) + + elasticsearch.withQuery('_exists_:norm_ops AND read_message_size:(64 OR 1024 OR 8192) AND num_threads:(1 OR 8) AND test_type:stream') + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('uperf_ts') + ]), + + + + + ////////////////////// + + g.panel.table.new("vdbench artifacts") + + g.panel.table.queryOptions.withDatasource('Elasticsearch-vdbench-results') + + g.panel.table.fieldConfig.defaults.thresholds.withMode('thresholds') + + g.panel.table.standardOptions.withDecimals(1) + + + g.panel.table.panelOptions.withLinks([ + g.panel.table.link.withTargetBlank(true) + + g.panel.table.link.withTitle('link') + + g.panel.table.link.withUrl('${__data.fields[\'run_artifacts_url.keyword\']}') + + ]) + + + g.panel.table.fieldConfig.defaults.withMappings([]) + + g.panel.table.standardOptions.withMin(0) + + g.panel.table.fieldConfig.defaults.thresholds.withMode('percentage') + + g.panel.table.fieldConfig.defaults.thresholds.withSteps([ + g.panel.table.thresholdStep.withColor('semi-dark-red'), + + g.panel.table.thresholdStep.withColor('light-orange') + + g.panel.table.thresholdStep.withValue(50), + + g.panel.table.thresholdStep.withColor('super-light-green') + + g.panel.table.thresholdStep.withValue(80), + + g.panel.table.thresholdStep.withColor('dark-green') + + g.panel.table.thresholdStep.withValue(90), + + g.panel.table.thresholdStep.withColor('dark-blue') + + g.panel.table.thresholdStep.withValue(100) + + ]) + + g.panel.table.fieldConfig.withOverrides([ + + g.panel.table.fieldOverride.byName.new('ci_date.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',227) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Date'), + + g.panel.table.fieldOverride.byName.new('kind.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',100) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Kind'), + + g.panel.table.fieldOverride.byName.new('run_artifacts_url.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',1000) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Artifacts Link'), + + g.panel.table.fieldOverride.byName.new('Average') + + g.panel.table.fieldOverride.byName.withProperty('displayName','Average Rate'), + + g.panel.table.fieldOverride.byName.new('Run.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',140) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Run'), + + g.panel.table.fieldOverride.byName.new('Threads') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',100) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Thread'), + + g.panel.table.fieldOverride.byName.new('Artifacts Link') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',1521) + + + ]) + + + g.panel.table.gridPos.withH(10) + + g.panel.table.gridPos.withW(24) + + g.panel.table.gridPos.withX(0) + + g.panel.table.gridPos.withY(65) + + + g.panel.table.withId(133) + + g.panel.table.queryOptions.withInterval('1d') + + g.panel.table.options.footer.TableFooterOptions.withFields('') + + g.panel.table.options.footer.TableFooterOptions.withReducer('sum') + + g.panel.table.options.footer.TableFooterOptions.withShow(false) + + g.panel.table.options.withShowHeader(true) + + g.panel.table.options.withSortBy([]) + + g.panel.table.withPluginVersion() + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('ci_date.keyword') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('5') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('7') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('run_artifacts_url.keyword') + + elasticsearch.bucketAggs.DateHistogram.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms') + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('Rate') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + + ]) + + elasticsearch.withQuery("!SCALE AND !Run.keyword='fillup'") + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('timestamp') + ]) + + + stateTimeline.withTransformations([ + stateTimeline.transformation.withId('organize') + + stateTimeline.transformation.withOptions({ + "excludeByName": { + "Average": true + }, + "indexByName": {}, + "renameByName": {} + }) + + + ]), + + ////////////////// + + g.panel.table.new("vdbench scale artifacts") + + g.panel.table.queryOptions.withDatasource('Elasticsearch-vdbench-results') + + g.panel.table.fieldConfig.defaults.thresholds.withMode('thresholds') + + g.panel.table.standardOptions.withDecimals(1) + + + g.panel.table.panelOptions.withLinks([ + g.panel.table.link.withTargetBlank(true) + + g.panel.table.link.withTitle('link') + + g.panel.table.link.withUrl('${__data.fields[\"run_artifacts_url.keyword\"]}') + + ]) + + + g.panel.table.fieldConfig.defaults.withMappings([]) + + g.panel.table.standardOptions.withMin(0) + + g.panel.table.fieldConfig.defaults.thresholds.withMode('percentage') + + g.panel.table.fieldConfig.defaults.thresholds.withSteps([ + g.panel.table.thresholdStep.withColor('semi-dark-red'), + + g.panel.table.thresholdStep.withColor('light-orange') + + g.panel.table.thresholdStep.withValue(50), + + g.panel.table.thresholdStep.withColor('super-light-green') + + g.panel.table.thresholdStep.withValue(80), + + g.panel.table.thresholdStep.withColor('dark-green') + + g.panel.table.thresholdStep.withValue(90), + + g.panel.table.thresholdStep.withColor('dark-blue') + + g.panel.table.thresholdStep.withValue(100) + + ]) + + g.panel.table.fieldConfig.withOverrides([ + + g.panel.table.fieldOverride.byName.new('ci_date.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',227) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Date'), + + g.panel.table.fieldOverride.byName.new('kind.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',100) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Kind'), + + g.panel.table.fieldOverride.byName.new('run_artifacts_url.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',1000) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Artifacts Link'), + + g.panel.table.fieldOverride.byName.new('Average') + + g.panel.table.fieldOverride.byName.withProperty('displayName','Average Rate'), + + g.panel.table.fieldOverride.byName.new('Run.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',140) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Run'), + + g.panel.table.fieldOverride.byName.new('Threads') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',100) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Thread') + + + ]) + + + g.panel.table.gridPos.withH(10) + + g.panel.table.gridPos.withW(24) + + g.panel.table.gridPos.withX(0) + + g.panel.table.gridPos.withY(75) + + + g.panel.table.withId(195) + + g.panel.table.queryOptions.withInterval('1d') + + g.panel.table.options.footer.TableFooterOptions.withFields('') + + g.panel.table.options.footer.TableFooterOptions.withReducer('sum') + + g.panel.table.options.footer.TableFooterOptions.withShow(false) + + g.panel.table.options.withShowHeader(true) + + g.panel.table.options.sortBy.withDesc(true) + + g.panel.table.options.sortBy.withDesc('ci_date.keyword') + + + g.panel.table.withPluginVersion() + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('ci_date.keyword') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('5') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('Run.keyword') + + elasticsearch.bucketAggs.Terms.withId('5') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('Threads') + + elasticsearch.bucketAggs.DateHistogram.withId('6') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('kind.keyword') + + elasticsearch.bucketAggs.DateHistogram.withId('7') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('scale') + + elasticsearch.bucketAggs.DateHistogram.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('run_artifacts_url.keyword') + + elasticsearch.bucketAggs.DateHistogram.withId('9') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + ]) + + elasticsearch.withHide(false) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('Rate') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + + ]) + + elasticsearch.withQuery("!Run.keyword='fillup'") + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('timestamp') + ]), + + + ////////////////// + + g.panel.table.new("clusterbuster artifacts") + + g.panel.table.queryOptions.withDatasource('Elasticsearch-clusterbuster-results') + + g.panel.table.fieldConfig.defaults.thresholds.withMode('thresholds') + + g.panel.table.standardOptions.withDecimals(1) + + + g.panel.table.panelOptions.withLinks([ + g.panel.table.link.withTargetBlank(true) + + g.panel.table.link.withTitle('link') + + g.panel.table.link.withUrl('${__data.fields[\"run_artifacts_url.keyword\"]}') + + ]) + + + g.panel.table.fieldConfig.defaults.withMappings([]) + + g.panel.table.standardOptions.withMin(0) + + g.panel.table.fieldConfig.defaults.thresholds.withMode('percentage') + + g.panel.table.fieldConfig.defaults.thresholds.withSteps([ + g.panel.table.thresholdStep.withColor('green'), + + g.panel.table.thresholdStep.withColor('red') + + g.panel.table.thresholdStep.withValue(80) + + ]) + + g.panel.table.fieldConfig.withOverrides([ + + g.panel.table.fieldOverride.byName.new('run_artifacts_url') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',1600), + + g.panel.table.fieldOverride.byName.new('Date') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',227) + + ]) + + + g.panel.table.gridPos.withH(6) + + g.panel.table.gridPos.withW(24) + + g.panel.table.gridPos.withX(0) + + g.panel.table.gridPos.withY(85) + + + g.panel.table.withId(150) + + g.panel.table.queryOptions.withInterval('1d') + + g.panel.table.options.footer.TableFooterOptions.withFields('') + + g.panel.table.options.footer.TableFooterOptions.withReducer('sum') + + g.panel.table.options.footer.TableFooterOptions.withShow(false) + + g.panel.table.options.withShowHeader(true) + + + g.panel.table.withPluginVersion() + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.Terms.withField('ci_date.keyword') + + elasticsearch.bucketAggs.Terms.withId('4') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('5') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + + elasticsearch.bucketAggs.Terms.withField('timestamp') + + elasticsearch.bucketAggs.Terms.withId('2') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('run_artifacts_url.keyword') + + elasticsearch.bucketAggs.DateHistogram.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('job_runtime') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withHide(false) + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + + ]) + + elasticsearch.withQuery("") + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('timestamp') + ]) + + stateTimeline.withTransformations([ + stateTimeline.transformation.withId('organize') + + stateTimeline.transformation.withOptions({ + "excludeByName": { + "Average": true, + "_id": true, + "_index": true, + "_type": true, + "highlight": true, + "job_end": true, + "job_runtime": true, + "job_start": true, + "kata_version": true, + "openshift_version": true, + "result": true, + "run_host": true, + "sort": true, + "uuid": true + }, + "indexByName": { + "_id": 6, + "_index": 7, + "_type": 8, + "highlight": 9, + "job_end": 12, + "job_runtime": 10, + "job_start": 11, + "kata_version": 4, + "openshift_version": 3, + "result": 2, + "run_artifacts_url": 1, + "run_host": 5, + "sort": 13, + "timestamp": 0, + "uuid": 14 + }, + "renameByName": { + "Average": "Run time", + "run_artifacts_url": "Artifacts Link", + "run_artifacts_url.keyword": "Artifacts Link", + "timestamp": "Date" + } + }), + + + + + + + + ]), + + ////////////////// + + g.panel.table.new("clusterbuster release artifacts") + + g.panel.table.queryOptions.withDatasource('Elasticsearch-clusterbuster-release-results') + + g.panel.table.fieldConfig.defaults.thresholds.withMode('thresholds') + + g.panel.table.standardOptions.withDecimals(1) + + + g.panel.table.panelOptions.withLinks([ + g.panel.table.link.withTargetBlank(true) + + g.panel.table.link.withTitle('link') + + g.panel.table.link.withUrl('${__data.fields[\"run_artifacts_url.keyword\"]}') + + ]) + + + g.panel.table.fieldConfig.defaults.withMappings([]) + + g.panel.table.standardOptions.withMin(0) + + g.panel.table.fieldConfig.defaults.thresholds.withMode('percentage') + + g.panel.table.fieldConfig.defaults.thresholds.withSteps([ + g.panel.table.thresholdStep.withColor('green'), + + g.panel.table.thresholdStep.withColor('red') + + g.panel.table.thresholdStep.withValue(80) + + ]) + + g.panel.table.fieldConfig.withOverrides([ + + g.panel.table.fieldOverride.byName.new('run_artifacts_url') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',1600), + + g.panel.table.fieldOverride.byName.new('Date') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',227) + + + ]) + + + g.panel.table.gridPos.withH(6) + + g.panel.table.gridPos.withW(24) + + g.panel.table.gridPos.withX(0) + + g.panel.table.gridPos.withY(91) + + + g.panel.table.withId(166) + + g.panel.table.options.footer.TableFooterOptions.withFields('') + + g.panel.table.options.footer.TableFooterOptions.withReducer('sum') + + g.panel.table.options.footer.TableFooterOptions.withShow(false) + + g.panel.table.options.withShowHeader(true) + + + g.panel.table.withPluginVersion() + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('timestamp') + + elasticsearch.bucketAggs.Terms.withId('2') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('run_artifacts_url.keyword') + + elasticsearch.bucketAggs.DateHistogram.withId('3') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('job_runtime') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withHide(false) + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + + ]) + + elasticsearch.withQuery("") + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('timestamp') + ]) + + stateTimeline.withTransformations([ + stateTimeline.transformation.withId('organize') + + stateTimeline.transformation.withOptions({ + "excludeByName": { + "Average": true, + "_id": true, + "_index": true, + "_type": true, + "highlight": true, + "job_end": true, + "job_runtime": true, + "job_start": true, + "kata_version": true, + "openshift_version": true, + "result": true, + "run_host": true, + "sort": true, + "uuid": true + }, + "indexByName": { + "_id": 6, + "_index": 7, + "_type": 8, + "highlight": 9, + "job_end": 12, + "job_runtime": 10, + "job_start": 11, + "kata_version": 4, + "openshift_version": 3, + "result": 2, + "run_artifacts_url": 1, + "run_host": 5, + "sort": 13, + "timestamp": 0, + "uuid": 14 + }, + "renameByName": { + "Average": "Run time", + "run_artifacts_url": "Artifacts Link", + "run_artifacts_url.keyword": "Artifacts Link", + "timestamp": "Date" + } + }), + + + + + + + + ]), + + ////////////////// + + g.panel.table.new("bootstorm artifacts") + + g.panel.table.queryOptions.withDatasource('Elasticsearch-bootstorm-results') + + g.panel.table.fieldConfig.defaults.thresholds.withMode('thresholds') + + g.panel.table.standardOptions.withDecimals(1) + + + g.panel.table.panelOptions.withLinks([ + g.panel.table.link.withTargetBlank(true) + + g.panel.table.link.withTitle('link') + + g.panel.table.link.withUrl('${__data.fields[\"run_artifacts_url.keyword\"]}') + + ]) + + + g.panel.table.fieldConfig.defaults.withMappings([]) + + g.panel.table.standardOptions.withMin(0) + + g.panel.table.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('semi-dark-red'), + + stateTimeline.thresholdStep.withColor('light-orange') + + stateTimeline.thresholdStep.withValue(50), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(80), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(90), + + stateTimeline.thresholdStep.withColor('dark-blue') + + stateTimeline.thresholdStep.withValue(100) + + ]) + + g.panel.table.fieldConfig.withOverrides([ + + g.panel.table.fieldOverride.byName.new('ci_date.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',227) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Date'), + + g.panel.table.fieldOverride.byName.new('kind.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',100) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Kind'), + + g.panel.table.fieldOverride.byName.new('run_artifacts_url.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',1000) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Artifacts Link'), + + g.panel.table.fieldOverride.byName.new('Average') + + g.panel.table.fieldOverride.byName.withProperty('displayName','Average Rate'), + + g.panel.table.fieldOverride.byName.new('Run.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',140) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Run'), + + g.panel.table.fieldOverride.byName.new('Threads') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',100) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Thread') + + + ]) + + + g.panel.table.gridPos.withH(5) + + g.panel.table.gridPos.withW(24) + + g.panel.table.gridPos.withX(0) + + g.panel.table.gridPos.withY(97) + + + g.panel.table.withId(190) + + g.panel.table.options.footer.TableFooterOptions.withFields('') + + g.panel.table.options.footer.TableFooterOptions.withReducer('sum') + + g.panel.table.options.footer.TableFooterOptions.withShow(false) + + g.panel.table.options.withShowHeader(true) + + g.panel.table.options.sortBy.withDesc(true) + + g.panel.table.options.sortBy.withDesc('ci_date.keyword') + + + g.panel.table.withPluginVersion() + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('ci_date.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('9') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('100') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('run_artifacts_url.keyword') + + elasticsearch.bucketAggs.DateHistogram.withId('11') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('Rate') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + + ]) + + elasticsearch.withQuery("scale:240") + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('timestamp') + ]) + + stateTimeline.withTransformations([ + stateTimeline.transformation.withId('organize') + + stateTimeline.transformation.withOptions({ + "excludeByName": { + "Average": true + }, + "indexByName": {}, + "renameByName": {} + }) + + + + + + + + ]), + + + ////////////////// + + g.panel.table.new("Windows artifacts") + + g.panel.table.queryOptions.withDatasource('Elasticsearch-windows-results') + + g.panel.table.fieldConfig.defaults.thresholds.withMode('thresholds') + + g.panel.table.standardOptions.withDecimals(1) + + + g.panel.table.panelOptions.withLinks([ + g.panel.table.link.withTargetBlank(true) + + g.panel.table.link.withTitle('link') + + g.panel.table.link.withUrl('${__data.fields[\"run_artifacts_url.keyword\"]}') + + ]) + + + g.panel.table.fieldConfig.defaults.withMappings([]) + + g.panel.table.standardOptions.withMin(0) + + g.panel.table.fieldConfig.defaults.thresholds.withMode('percentage') + + stateTimeline.fieldConfig.defaults.thresholds.withSteps([ + stateTimeline.thresholdStep.withColor('semi-dark-red'), + + stateTimeline.thresholdStep.withColor('light-orange') + + stateTimeline.thresholdStep.withValue(50), + + stateTimeline.thresholdStep.withColor('super-light-green') + + stateTimeline.thresholdStep.withValue(80), + + stateTimeline.thresholdStep.withColor('dark-green') + + stateTimeline.thresholdStep.withValue(90), + + stateTimeline.thresholdStep.withColor('dark-blue') + + stateTimeline.thresholdStep.withValue(100) + + ]) + + g.panel.table.fieldConfig.withOverrides([ + + g.panel.table.fieldOverride.byName.new('ci_date.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',227) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Date'), + + g.panel.table.fieldOverride.byName.new('kind.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',100) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Kind'), + + g.panel.table.fieldOverride.byName.new('run_artifacts_url.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',1000) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Artifacts Link'), + + g.panel.table.fieldOverride.byName.new('Average') + + g.panel.table.fieldOverride.byName.withProperty('displayName','Average Rate'), + + g.panel.table.fieldOverride.byName.new('Run.keyword') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',140) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Run'), + + g.panel.table.fieldOverride.byName.new('Threads') + + g.panel.table.fieldOverride.byName.withProperty('custom.width',100) + + g.panel.table.fieldOverride.byName.withProperty('displayName','Thread') + + ]) + + + g.panel.table.gridPos.withH(5) + + g.panel.table.gridPos.withW(24) + + g.panel.table.gridPos.withX(0) + + g.panel.table.gridPos.withY(102) + + + g.panel.table.withId(194) + + g.panel.table.withInterval('1d') + + + g.panel.table.options.footer.TableFooterOptions.withFields('') + + g.panel.table.options.footer.TableFooterOptions.withReducer('sum') + + g.panel.table.options.footer.TableFooterOptions.withShow(false) + + g.panel.table.options.withShowHeader(true) + + g.panel.table.options.sortBy.withDesc(true) + + g.panel.table.options.sortBy.withDesc('ci_date.keyword') + + + g.panel.table.withPluginVersion() + + + g.panel.stateTimeline.withTargets([ + elasticsearch.withAlias('') + + + elasticsearch.withBucketAggs([ + + elasticsearch.bucketAggs.Terms.withField('ci_date.keyword') + + elasticsearch.bucketAggs.Terms.withId('8') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('kind.keyword') + + elasticsearch.bucketAggs.Terms.withId('9') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.Terms.withField('scale') + + elasticsearch.bucketAggs.Terms.withId('10') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + elasticsearch.bucketAggs.DateHistogram.withField('run_artifacts_url.keyword') + + elasticsearch.bucketAggs.DateHistogram.withId('11') + + elasticsearch.bucketAggs.Terms.settings.withMinDocCount('1') + + elasticsearch.bucketAggs.Terms.settings.withOrder('desc') + + elasticsearch.bucketAggs.Terms.settings.withOrderBy('_term') + + elasticsearch.bucketAggs.Terms.settings.withSize('10') + + elasticsearch.bucketAggs.Terms.withType('terms'), + + ]) + + + elasticsearch.withMetrics([ + elasticsearch.metrics.MetricAggregationWithSettings.Average.withField('Rate') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withId('1') + + elasticsearch.metrics.MetricAggregationWithSettings.Average.withType('avg') + + + ]) + + elasticsearch.withQuery("scale:120") + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('timestamp') + ]) + + stateTimeline.withTransformations([ + stateTimeline.transformation.withId('organize') + + stateTimeline.transformation.withOptions({ + "excludeByName": { + "Average": true + }, + "indexByName": {}, + "renameByName": {} + }) + + + + + + + + ]), + + ///////////// + + g.panel.text.new('') + + + g.panel.text.gridPos.withH(4) + + g.panel.text.gridPos.withW(5) + + g.panel.text.gridPos.withX(19) + + g.panel.text.gridPos.withY(107) + + + g.panel.text.withId('189') + + g.panel.text.withDatasource('Elasticsearch-ci-status') + + + g.panel.text.panelOptions.withLinks([ + g.panel.text.link.withTargetBlank(true) + + g.panel.text.link.withTitle('PerfCI') + + g.panel.text.link.withUrl('https://github.com/redhat-performance/benchmark-runner/actions') + + ]) + + + g.panel.text.options.withContent('![Cloud Governance](https://github.com/redhat-performance/benchmark-runner/blob/main/media/benchmark_runner.png?raw=true \"Tooltip Text\")\n') + + g.panel.text.options.withMode("markdown") + + + g.panel.text.withPluginVersion() + + + g.panel.text.withTargets([ + elasticsearch.withAlias('') + + + elasticsearch.withBucketAggs([ + elasticsearch.bucketAggs.DateHistogram.withField('timestamp') + + elasticsearch.bucketAggs.DateHistogram.withId('2') + + elasticsearch.bucketAggs.DateHistogram.settings.withInterval('auto') + + elasticsearch.bucketAggs.DateHistogram.withType('date_histogram') + ]) + + + + elasticsearch.withMetrics([ + elasticsearch.metrics.Count.withId('1') + + elasticsearch.metrics.Count.withType('count') + + ]) + + + elasticsearch.withQuery('') + + elasticsearch.withRefId('A') + + elasticsearch.withTimeField('timestamp') + + + ]), + + //////////////////////////////////////////// + + + + + + + ]) + + + + + + + + +]) diff --git a/benchmark_runner/grafana/update_grafana_dashboard.py b/benchmark_runner/grafana/update_grafana_dashboard.py new file mode 100644 index 000000000..55f6d1069 --- /dev/null +++ b/benchmark_runner/grafana/update_grafana_dashboard.py @@ -0,0 +1,13 @@ + +from benchmark_runner.common.grafana.grafana_operations import GrafanaOperations +from benchmark_runner.main.environment_variables import environment_variables + +# Update grafana perf dashboard +environment_variables_dict = environment_variables.environment_variables_dict +grafana_operations = GrafanaOperations(grafana_url=environment_variables_dict.get('grafana_url', ''), + grafana_api_key=environment_variables_dict.get('grafana_api_key', ''), + grafana_json_path=environment_variables_dict.get('grafana_json_path', '')) +# for debug: grafana_operations.fetch_all_dashboards() +grafana_operations.read_dashboard_json() +grafana_operations.increment_dashboard_version() +grafana_operations.override_dashboard() diff --git a/benchmark_runner/grafana/update_main_libsonnet_versions.py b/benchmark_runner/grafana/update_main_libsonnet_versions.py new file mode 100644 index 000000000..2ccfb9a18 --- /dev/null +++ b/benchmark_runner/grafana/update_main_libsonnet_versions.py @@ -0,0 +1,10 @@ + +from benchmark_runner.common.grafana.update_grafana_last_value_mappings import UpdateGrafanaLastValueMappings +from benchmark_runner.main.environment_variables import environment_variables + +# Update perf main.libsonnet with last versions +environment_variables_dict = environment_variables.environment_variables_dict +update_grafana_mappings_value = UpdateGrafanaLastValueMappings(main_libsonnet_path=environment_variables_dict.get('main_libsonnet_path', '')) +last_versions = update_grafana_mappings_value.get_last_elasticsearch_versions() +update_grafana_mappings_value.update_value_mappings_last_versions(last_versions=last_versions) +update_grafana_mappings_value.update_main_libsonnet() diff --git a/benchmark_runner/main/environment_variables.py b/benchmark_runner/main/environment_variables.py index 4626781fe..5eca70a53 100644 --- a/benchmark_runner/main/environment_variables.py +++ b/benchmark_runner/main/environment_variables.py @@ -193,6 +193,12 @@ def __init__(self): self._environment_variables_dict['bucket'] = EnvironmentVariables.get_env('IBM_BUCKET', '') self._environment_variables_dict['key'] = EnvironmentVariables.get_env('IBM_KEY', '') + # Grafana + self._environment_variables_dict['grafana_url'] = EnvironmentVariables.get_env('GRAFANA_URL', '') + self._environment_variables_dict['grafana_api_key'] = EnvironmentVariables.get_env('GRAFANA_API_KEY', '') + self._environment_variables_dict['grafana_json_path'] = EnvironmentVariables.get_env('GRAFANA_JSON_PATH', '') + self._environment_variables_dict['main_libsonnet_path'] = EnvironmentVariables.get_env('MAIN_LIBSONNET_PATH', '') + # Parameters below related to 'install_ocp()' # MANDATORY for OCP install: assisted installer version i.e. 'latest-4.11' or '4.11.16' : https://mirror.openshift.com/pub/openshift-v4/clients/ocp self._environment_variables_dict['install_ocp_version'] = EnvironmentVariables.get_env('INSTALL_OCP_VERSION', '') diff --git a/grafana/perf/PerfCI-Regression-Summary.json b/grafana/perf/PerfCI-Regression-Summary.json deleted file mode 100644 index 356630731..000000000 --- a/grafana/perf/PerfCI-Regression-Summary.json +++ /dev/null @@ -1,9084 +0,0 @@ -{ - "annotations": { - "list": [ - { - "builtIn": 1, - "datasource": "-- Grafana --", - "enable": true, - "hide": true, - "iconColor": "rgba(0, 211, 255, 1)", - "name": "Annotations & Alerts", - "target": { - "limit": 100, - "matchAny": false, - "tags": [], - "type": "dashboard" - }, - "type": "dashboard" - } - ] - }, - "editable": true, - "fiscalYearStartMonth": 0, - "graphTooltip": 0, - "id": 16, - "iteration": 1687460598233, - "links": [ - { - "asDropdown": false, - "icon": "info", - "includeVars": false, - "keepTime": false, - "tags": [], - "targetBlank": true, - "title": "Environment", - "tooltip": "", - "type": "link", - "url": "https://docs.google.com/spreadsheets/d/1eSOmyZKJ6f0RIHN0zJNnH-S2YrqrU0oyzp7PNSQvksE/edit#gid=0" - }, - { - "asDropdown": false, - "icon": "bolt", - "includeVars": false, - "keepTime": false, - "tags": [], - "targetBlank": true, - "title": "Issues", - "tooltip": "", - "type": "link", - "url": "https://docs.google.com/spreadsheets/d/1vZtg0Gj8IxKPGLWAkB4iD1O59u_WA4ky5P7gGX6xW3M/edit#gid=0" - }, - { - "asDropdown": false, - "icon": "cloud", - "includeVars": false, - "keepTime": false, - "tags": [], - "targetBlank": true, - "title": "Kibana", - "tooltip": "", - "type": "link", - "url": "https://kibana-perf-chmf841sh975bznl3b.ibm.rhperfscale.org" - }, - { - "asDropdown": false, - "icon": "dashboard", - "includeVars": false, - "keepTime": false, - "tags": [], - "targetBlank": false, - "title": "Func-Ci", - "tooltip": "", - "type": "link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/1AZC4GxVz/funcci-regression-summary?orgId=1&from=now-45d&to=now" - }, - { - "asDropdown": false, - "icon": "cloud", - "includeVars": false, - "keepTime": false, - "tags": [], - "targetBlank": true, - "title": "LogsAnalyzer", - "tooltip": "LogsAnalyzer", - "type": "link", - "url": "https://jupyterlab-perf-chmf841sh776bznl3b.ibm.rhperfscale.org/lab/tree/templates" - } - ], - "liveNow": false, - "panels": [ - { - "gridPos": { - "h": 6, - "w": 5, - "x": 0, - "y": 0 - }, - "id": 188, - "options": { - "content": "\n> 100% new peak
\n90% - 100% of peak
\n80% - 90% of peak
\n50% - 80% of peak
\n0% - 50% of peak
\n\n\n ", - "mode": "html" - }, - "pluginVersion": "8.4.0-pre", - "targets": [ - { - "alias": "", - "bucketAggs": [ - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "EmxWHac7z" - }, - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "", - "refId": "A", - "timeField": "timestamp" - } - ], - "title": "Workloads Legend", - "type": "text" - }, - { - "description": "", - "gridPos": { - "h": 6, - "w": 5, - "x": 19, - "y": 0 - }, - "id": 187, - "options": { - "content": "![Cloud Governance](https://www.cielhr.com/wp-content/uploads/2019/10/PerformancewSpace-1080x675.png \"Tooltip Text\")\n", - "mode": "markdown" - }, - "pluginVersion": "8.4.0-pre", - "targets": [ - { - "alias": "", - "bucketAggs": [ - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "mg2W2WD7z" - }, - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "", - "refId": "A", - "timeField": "timestamp" - } - ], - "transparent": true, - "type": "text" - }, - { - "description": "OVN - 09/19", - "fieldConfig": { - "defaults": { - "color": { - "fixedColor": "#132dc3", - "mode": "fixed" - }, - "custom": { - "fillOpacity": 85, - "lineWidth": 0 - }, - "mappings": [ - { - "options": { - "102": { - "index": 13, - "text": "1.0.2" - }, - "110": { - "index": 14, - "text": "1.1.0" - }, - "120": { - "index": 15, - "text": "1.2.0" - }, - "121": { - "index": 16, - "text": "1.2.1" - }, - "130": { - "index": 45, - "text": "1.3.0" - }, - "131": { - "index": 120, - "text": "1.3.1" - }, - "132": { - "index": 76, - "text": "1.3.2" - }, - "133": { - "index": 77, - "text": "1.3.3" - }, - "140": { - "index": 121, - "text": "1.4.0" - }, - "483": { - "index": 0, - "text": "4.8.3" - }, - "484": { - "index": 1, - "text": "4.8.4" - }, - "485": { - "index": 2, - "text": "4.8.5" - }, - "486": { - "index": 3, - "text": "4.8.6" - }, - "487": { - "index": 4, - "text": "4.8.7" - }, - "488": { - "index": 5, - "text": "4.8.8" - }, - "3025": { - "index": 86, - "text": "3.0.2-5" - }, - "3026": { - "index": 122, - "text": "3.0.2-6" - }, - "4102": { - "index": 33, - "text": "4.10.2" - }, - "4104": { - "index": 34, - "text": "4.10.4" - }, - "4105": { - "index": 35, - "text": "4.10.5" - }, - "4106": { - "index": 36, - "text": "4.10.6" - }, - "4108": { - "index": 37, - "text": "4.10.8" - }, - "4109": { - "index": 38, - "text": "4.10.9" - }, - "4114": { - "index": 54, - "text": "4.11.4" - }, - "4115": { - "index": 55, - "text": "4.11.5" - }, - "4116": { - "index": 56, - "text": "4.11.6" - }, - "4117": { - "index": 57, - "text": "4.11.7" - }, - "4118": { - "index": 58, - "text": "4.11.8" - }, - "4119": { - "index": 59, - "text": "4.11.9" - }, - "4120": { - "index": 68, - "text": "4.12.0" - }, - "4121": { - "index": 69, - "text": "4.12.1" - }, - "4122": { - "index": 70, - "text": "4.12.2" - }, - "4124": { - "index": 80, - "text": "4.12.4" - }, - "4130": { - "index": 106, - "text": "4.13.0" - }, - "4131": { - "index": 109, - "text": "4.13.1" - }, - "4132": { - "index": 110, - "text": "4.13.2" - }, - "4133": { - "index": 111, - "text": "4.13.3" - }, - "4134": { - "index": 112, - "text": "4.13.4" - }, - "4814": { - "index": 6, - "text": "4.8.14" - }, - "4932": { - "index": 8, - "text": "4.9.3-2" - }, - "4947": { - "index": 9, - "text": "4.9.4-7" - }, - "4955": { - "index": 10, - "text": "4.9.5-5" - }, - "4961": { - "index": 11, - "text": "4.9.6-1" - }, - "4972": { - "index": 12, - "text": "4.9.7-2" - }, - "41002": { - "index": 30, - "text": "4.10.0-rc.2" - }, - "41003": { - "index": 31, - "text": "4.10.0-rc.3" - }, - "41007": { - "index": 32, - "text": "4.10.0-rc.7" - }, - "41010": { - "index": 39, - "text": "4.10.10" - }, - "41011": { - "index": 40, - "text": "4.10.11" - }, - "41012": { - "index": 41, - "text": "4.10.12" - }, - "41013": { - "index": 42, - "text": "4.10.13" - }, - "41014": { - "index": 43, - "text": "4.10.14" - }, - "41015": { - "index": 44, - "text": "4.10.15" - }, - "41016": { - "index": 21, - "text": "4.10.1-6" - }, - "41021": { - "index": 28, - "text": "4.10.2-1" - }, - "41023": { - "index": 29, - "text": "4.10.2-3" - }, - "41054": { - "index": 49, - "text": "4.10.5-4" - }, - "41066": { - "index": 48, - "text": "4.10.6-6" - }, - "41110": { - "index": 60, - "text": "4.11.10" - }, - "41111": { - "index": 61, - "text": "4.11.11" - }, - "41112": { - "index": 62, - "text": "4.11.12" - }, - "41113": { - "index": 63, - "text": "4.11.13" - }, - "41114": { - "index": 64, - "text": "4.11.14" - }, - "41144": { - "index": 78, - "text": "4.11.4-4" - }, - "41159": { - "index": 79, - "text": "4.11.5-9" - }, - "41206": { - "index": 65, - "text": "4.12.0.6" - }, - "41207": { - "index": 66, - "text": "4.12.0.7" - }, - "41208": { - "index": 67, - "text": "4.12.0.8" - }, - "41218": { - "index": 73, - "text": "4.12.1-8" - }, - "41224": { - "index": 85, - "text": "4.12.2-4" - }, - "41244": { - "index": 125, - "text": "4.12.4-4" - }, - "41304": { - "index": 102, - "text": "4.13.0-rc.4" - }, - "41305": { - "index": 103, - "text": "4.13.0-rc.5" - }, - "41307": { - "index": 104, - "text": "4.13.0-rc.7" - }, - "41308": { - "index": 105, - "text": "4.13.0-rc.8" - }, - "49211": { - "index": 7, - "text": "4.9.2-11" - }, - "410129": { - "index": 22, - "text": "4.10.1-29" - }, - "410136": { - "index": 23, - "text": "4.10.1-36" - }, - "410160": { - "index": 24, - "text": "4.10.1-60" - }, - "410170": { - "index": 25, - "text": "4.10.1-70" - }, - "410197": { - "index": 26, - "text": "4.10.1-97" - }, - "411115": { - "index": 52, - "text": "4.11.1-15" - }, - "411121": { - "index": 51, - "text": "4.11.1-21" - }, - "411135": { - "index": 46, - "text": "4.11.1-35" - }, - "411142": { - "index": 47, - "text": "4.11.1-42" - }, - "411605": { - "index": 53, - "text": "4.11.6-5" - }, - "412116": { - "index": 74, - "text": "4.12.1-16" - }, - "412119": { - "index": 84, - "text": "4.12.1-19" - }, - "412122": { - "index": 75, - "text": "4.12.1-22" - }, - "412139": { - "index": 82, - "text": "4.12.1-39" - }, - "412140": { - "index": 81, - "text": "4.12.1-40" - }, - "412317": { - "index": 124, - "text": "4.12.3-17" - }, - "413014": { - "index": 101, - "text": "4.13.0-ec.4" - }, - "413118": { - "index": 114, - "text": "4.13.1-18" - }, - "413140": { - "index": 115, - "text": "4.13.1-40" - }, - "4100683": { - "index": 17, - "text": "4.10.0-683" - }, - "4100688": { - "index": 18, - "text": "4.10.0-688" - }, - "4100700": { - "index": 19, - "text": "4.10.0-700" - }, - "4100729": { - "index": 20, - "text": "4.10.0-729" - }, - "4101101": { - "index": 27, - "text": "4.10.1-101" - }, - "4110137": { - "index": 50, - "text": "4.11.0-137" - }, - "4120173": { - "index": 83, - "text": "4.12.0-173" - }, - "4120777": { - "index": 71, - "text": "4.12.0-777" - }, - "4120781": { - "index": 72, - "text": "4.12.0-781" - }, - "4131154": { - "index": 116, - "text": "4.13.1-154" - }, - "4131206": { - "index": 117, - "text": "4.13.1-206" - }, - "4131214": { - "index": 118, - "text": "4.13.1-214" - }, - "41301586": { - "index": 88, - "text": "4.13.0-1586" - }, - "41301649": { - "index": 89, - "text": "4.13.0-1649" - }, - "41301666": { - "index": 91, - "text": "4.13.0-1666" - }, - "41301689": { - "index": 90, - "text": "4.13.0-1689" - }, - "41301782": { - "index": 92, - "text": "4.13.0-1782" - }, - "41301856": { - "index": 93, - "text": "4.13.0-1856" - }, - "41301938": { - "index": 94, - "text": "4.13.0-1938" - }, - "41301943": { - "index": 95, - "text": "4.13.0-1943" - }, - "41302115": { - "index": 96, - "text": "4.13.0-2115" - }, - "41302176": { - "index": 97, - "text": "4.13.0-2176" - }, - "41302229": { - "index": 98, - "text": "4.13.0-2229" - }, - "41302251": { - "index": 99, - "text": "4.13.0-2251" - }, - "41302269": { - "index": 100, - "text": "4.13.0-2269" - }, - "4130ec3": { - "index": 87, - "text": "4.13.0-ec.3" - }, - "CNV": { - "index": 113, - "text": "CNV" - }, - "KATA": { - "index": 119, - "text": "KATA" - }, - "OCP": { - "index": 108, - "text": "OCP" - }, - "ODF": { - "index": 123, - "text": "ODF" - }, - "Product Versions": { - "index": 107, - "text": "Product Versions" - } - }, - "type": "value" - } - ], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 6, - "w": 24, - "x": 0, - "y": 6 - }, - "id": 171, - "interval": "1d", - "links": [ - { - "targetBlank": true, - "title": "OCP version", - "url": "https://openshift-release.apps.ci.l2s4.p1.openshiftapps.com/" - } - ], - "options": { - "alignValue": "right", - "legend": { - "displayMode": "hidden", - "placement": "bottom" - }, - "mergeValues": true, - "rowHeight": 0.85, - "showValue": "always", - "tooltip": { - "mode": "single" - } - }, - "pluginVersion": "8.4.0-pre", - "targets": [ - { - "alias": "OpenShift", - "bucketAggs": [ - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "mg2W2WD7z" - }, - "hide": false, - "metrics": [ - { - "field": "ci_minutes_time", - "id": "1", - "settings": { - "script": "Integer.parseInt(\"0\"+doc['ocp_version.keyword'].value.replace(\".\",\"\").replace(\"r\",\"\").replace(\"c\",\"\").replace(\"f\",\"\").replace(\"-\",\"\").replace(\"e\",\"1\").replace(\"c\",\"\").replace(\"r\",\"\"))" - }, - "type": "max" - } - ], - "query": "_exists_:ocp_version AND ocp_version:$ocp_version", - "refId": "A", - "timeField": "timestamp" - }, - { - "alias": "CNV Nightly op.", - "bucketAggs": [ - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "mg2W2WD7z" - }, - "hide": false, - "metrics": [ - { - "field": "ci_minutes_time", - "id": "1", - "settings": { - "script": "(doc['cnv_version.keyword'].value.indexOf(\" \") == -1) ? Integer.parseInt(\"0\"+doc['cnv_version.keyword'].value.replace(\".\",\"\").replace(\"r\",\"\").replace(\"c\",\"\").replace(\"f\",\"\").replace(\"-\",\"\")) : 0" - }, - "type": "max" - } - ], - "query": "_exists_:cnv_version AND ocp_version:$ocp_version", - "refId": "C", - "timeField": "timestamp" - }, - { - "alias": "KATA op.", - "bucketAggs": [ - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "mg2W2WD7z" - }, - "hide": false, - "metrics": [ - { - "field": "ci_minutes_time", - "id": "1", - "settings": { - "script": "(doc['kata_version.keyword'].value.indexOf(\" \") == -1) ? Integer.parseInt(doc['kata_version.keyword'].value.replace(\".\",\"\")) : 0" - }, - "type": "max" - } - ], - "query": "_exists_:kata_version AND ocp_version:$ocp_version", - "refId": "D", - "timeField": "timestamp" - }, - { - "alias": "Kata rpm", - "bucketAggs": [ - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "mg2W2WD7z" - }, - "hide": false, - "metrics": [ - { - "field": "ci_minutes_time", - "id": "1", - "settings": { - "script": "Integer.parseInt(\"0\"+doc['kata_rpm_version.keyword'].value.replace(\".\",\"\").replace(\"r\",\"\").replace(\"c\",\"\").replace(\"f\",\"\").replace(\"-\",\"\").replace(\"e\",\"1\").replace(\"c\",\"\").replace(\"r\",\"\"))" - }, - "type": "max" - } - ], - "query": "_exists_:kata_rpm_version AND ocp_version:$ocp_version", - "refId": "F", - "timeField": "timestamp" - }, - { - "alias": "ODF op.", - "bucketAggs": [ - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "mg2W2WD7z" - }, - "hide": false, - "metrics": [ - { - "field": "ci_minutes_time", - "id": "1", - "settings": { - "script": "((doc['odf_version.keyword'].size() != 0) ? ((doc['odf_version.keyword'].value.indexOf(\" \") == -1) ? Integer.parseInt(\"0\"+doc['odf_version.keyword'].value.replace(\".\",\"\").replace(\"r\",\"\").replace(\"c\",\"\").replace(\"f\",\"\").replace(\"-\",\"\")) : 0) : 0)" - }, - "type": "max" - } - ], - "query": "_exists_:odf_version AND ocp_version:$ocp_version", - "refId": "E", - "timeField": "timestamp" - }, - { - "alias": "ODF # disks", - "bucketAggs": [ - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "mg2W2WD7z" - }, - "hide": false, - "metrics": [ - { - "field": "odf_disk_count", - "id": "1", - "settings": {}, - "type": "max" - } - ], - "query": "ocp_version:$ocp_version", - "refId": "B", - "timeField": "timestamp" - } - ], - "title": "Product Versions", - "transformations": [ - { - "id": "filterByValue", - "options": { - "filters": [], - "match": "any", - "type": "include" - } - } - ], - "type": "state-timeline" - }, - { - "collapsed": true, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 12 - }, - "id": 136, - "panels": [ - { - "datasource": { - "type": "elasticsearch", - "uid": "xQGAtZvnk" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "dark-red" - }, - { - "color": "semi-dark-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 38, - "w": 24, - "x": 0, - "y": 13 - }, - "id": 120, - "interval": "1d", - "links": [ - { - "targetBlank": true, - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&viewPanel=128" - } - ], - "options": { - "alignValue": "center", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.9, - "showValue": "always", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "{{term db_type.keyword}} : {{term current_worker}} threads : {{term kind.keyword}}: {{term storage_type.keyword}}", - "bucketAggs": [ - { - "field": "db_type.keyword", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "current_worker", - "id": "4", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "storage_type.keyword", - "id": "5", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "kind.keyword", - "id": "6", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "xQGAtZvnk" - }, - "metrics": [ - { - "field": "tpm", - "id": "1", - "settings": { - "script": "_value/1000" - }, - "type": "max" - } - ], - "query": "_exists_:tpm AND db_type:$db_type AND current_worker:$current_worker AND kind:$kind AND ocp_version:$ocp_version", - "refId": "A", - "timeField": "timestamp" - } - ], - "title": "HammerDB KTPM ", - "type": "state-timeline" - } - ], - "title": "Hammerdb", - "type": "row" - }, - { - "collapsed": true, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 13 - }, - "id": 138, - "panels": [ - { - "datasource": { - "type": "elasticsearch", - "uid": "xNKZdZv7k" - }, - "description": "Lower is better", - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "decimals": 1, - "mappings": [], - "max": -1, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "dark-blue" - }, - { - "color": "dark-green", - "value": 1 - }, - { - "color": "super-light-green", - "value": 10 - }, - { - "color": "semi-dark-orange", - "value": 20 - }, - { - "color": "dark-red", - "value": 50 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 15, - "w": 24, - "x": 0, - "y": 14 - }, - "id": 116, - "interval": "1d", - "links": [ - { - "targetBlank": true, - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&viewPanel=129" - } - ], - "options": { - "alignValue": "center", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.9, - "showValue": "always", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "msg size: {{term read_message_size}} :{{term num_threads}}th: {{term kind.keyword}}", - "bucketAggs": [ - { - "field": "read_message_size", - "id": "4", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "num_threads", - "id": "5", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "kind.keyword", - "id": "6", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "xNKZdZv7k" - }, - "metrics": [ - { - "field": "norm_ltcy", - "id": "1", - "settings": {}, - "type": "avg" - } - ], - "query": "_exists_:norm_ltcy AND read_message_size:(64 OR 1024 OR 8192) AND num_threads:(1) AND test_type:rr AND norm_ltcy:<1000 AND kind:$kind AND ocp_version:$ocp_version", - "refId": "A", - "timeField": "timestamp" - }, - { - "alias": "msg size: {{term read_message_size}} :{{term num_threads}}th: {{term kind.keyword}}", - "bucketAggs": [ - { - "field": "read_message_size", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "num_threads", - "id": "4", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "kind.keyword", - "id": "5", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "xNKZdZv7k" - }, - "hide": false, - "metrics": [ - { - "field": "norm_ltcy", - "id": "1", - "settings": { - "script": "_value*8" - }, - "type": "avg" - } - ], - "query": "_exists_:norm_ltcy AND read_message_size:(64 OR 1024 OR 8192) AND num_threads:(8) AND test_type:rr AND norm_ltcy:<1000 AND kind:$kind AND ocp_version:$ocp_version", - "refId": "B", - "timeField": "timestamp" - } - ], - "title": "Uperf Latency (usecs)", - "transformations": [], - "type": "state-timeline" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "xNKZdZv7k" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "decimals": 1, - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "semi-dark-red" - }, - { - "color": "semi-dark-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 15, - "w": 24, - "x": 0, - "y": 29 - }, - "id": 115, - "interval": "1d", - "links": [ - { - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&viewPanel=129" - } - ], - "options": { - "alignValue": "center", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.9, - "showValue": "always", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "msg size: {{term read_message_size}} :{{term num_threads}}th: {{term kind.keyword}}", - "bucketAggs": [ - { - "field": "read_message_size", - "id": "4", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "num_threads", - "id": "5", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "kind.keyword", - "id": "6", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "xNKZdZv7k" - }, - "metrics": [ - { - "field": "norm_byte", - "id": "1", - "settings": { - "script": "_value*8/1000000000" - }, - "type": "avg" - } - ], - "query": "_exists_:norm_ops AND read_message_size:(64 OR 1024 OR 8192) AND num_threads:(1 OR 8) AND test_type:stream AND kind:$kind AND ocp_version:$ocp_version", - "refId": "A", - "timeField": "timestamp" - } - ], - "title": "Uperf Throughput (Gbits/s)", - "type": "state-timeline" - } - ], - "title": "Uperf", - "type": "row" - }, - { - "collapsed": true, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 14 - }, - "id": 142, - "panels": [ - { - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "dark-red" - }, - { - "color": "semi-dark-orange", - "value": 50 - }, - { - "color": "light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 48, - "w": 24, - "x": 0, - "y": 15 - }, - "id": 132, - "interval": "1d", - "links": [ - { - "targetBlank": true, - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&from=now-45d&to=now&viewPanel=133" - }, - { - "title": "scale log link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&from=now-45d&to=now&viewPanel=195" - } - ], - "options": { - "alignValue": "center", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.9, - "showValue": "always", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "{{term Run.keyword}} : {{term Threads}}th : 1 {{term kind.keyword}}", - "bucketAggs": [ - { - "field": "Run.keyword", - "id": "2", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "kind.keyword", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "Threads", - "id": "4", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "5", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "metrics": [ - { - "field": "Rate", - "id": "1", - "type": "avg" - } - ], - "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", - "refId": "A", - "timeField": "timestamp" - }, - { - "alias": "Total {{term kind.keyword}} Memory (GB) [384GB]", - "bucketAggs": [ - { - "field": "kind.keyword", - "id": "6", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "5", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "hide": false, - "metrics": [ - { - "field": "total_Memory", - "id": "1", - "settings": { - "script": "_value/1000000000" - }, - "type": "max" - } - ], - "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", - "refId": "B", - "timeField": "timestamp" - }, - { - "alias": "Total {{term kind.keyword}} %CPU [240 cores]", - "bucketAggs": [ - { - "field": "kind.keyword", - "id": "6", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "5", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "hide": false, - "metrics": [ - { - "field": "total_CPU", - "id": "1", - "type": "max" - } - ], - "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", - "refId": "C", - "timeField": "timestamp" - }, - { - "alias": "{{term Run.keyword}} : {{term Threads}}th :{{term scale}} {{term kind.keyword}}s", - "bucketAggs": [ - { - "field": "Run.keyword", - "id": "2", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "kind.keyword", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "Threads", - "id": "4", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "scale", - "id": "6", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "5", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "hide": false, - "metrics": [ - { - "field": "Rate", - "id": "1", - "type": "avg" - } - ], - "query": "SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", - "refId": "D", - "timeField": "timestamp" - }, - { - "alias": "Total {{term kind.keyword}} Memory (GB) [384GB]", - "bucketAggs": [ - { - "field": "kind.keyword", - "id": "2", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "5", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "hide": false, - "metrics": [ - { - "field": "total_Memory", - "id": "1", - "settings": { - "script": "_value/1000000000" - }, - "type": "max" - } - ], - "query": "SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", - "refId": "E", - "timeField": "timestamp" - }, - { - "alias": "Total {{term kind.keyword}} %CPU [240 cores]", - "bucketAggs": [ - { - "field": "kind.keyword", - "id": "2", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "5", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "hide": false, - "metrics": [ - { - "field": "total_CPU", - "id": "1", - "settings": {}, - "type": "max" - } - ], - "query": "SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", - "refId": "F", - "timeField": "timestamp" - } - ], - "title": "vdbench (IOPS)", - "type": "state-timeline" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "description": "Lower is better", - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "decimals": 1, - "mappings": [], - "max": -1, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "dark-blue" - }, - { - "color": "dark-green", - "value": 1 - }, - { - "color": "super-light-green", - "value": 10 - }, - { - "color": "semi-dark-orange", - "value": 20 - }, - { - "color": "dark-red", - "value": 50 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 50, - "w": 24, - "x": 0, - "y": 63 - }, - "id": 134, - "interval": "1d", - "links": [ - { - "targetBlank": true, - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&editPanel=133&from=now-45d&to=now" - } - ], - "options": { - "alignValue": "center", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.9, - "showValue": "always", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": " {{term Run.keyword}} : {{term Threads}}th : 1 {{term kind.keyword}}", - "bucketAggs": [ - { - "field": "Run.keyword", - "id": "2", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "kind.keyword", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "Threads", - "id": "4", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "5", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "metrics": [ - { - "field": "Resp", - "id": "1", - "type": "avg" - } - ], - "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", - "refId": "A", - "timeField": "timestamp" - }, - { - "alias": "Total {{term kind.keyword}} Memory (GB) [384GB]", - "bucketAggs": [ - { - "field": "kind.keyword", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "5", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "hide": false, - "metrics": [ - { - "field": "total_Memory", - "id": "1", - "settings": { - "script": "_value/1000000000" - }, - "type": "max" - } - ], - "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", - "refId": "B", - "timeField": "timestamp" - }, - { - "alias": "Total {{term kind.keyword}} %CPU [240 cores]", - "bucketAggs": [ - { - "field": "kind.keyword", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "5", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "hide": false, - "metrics": [ - { - "field": "total_CPU", - "id": "1", - "settings": {}, - "type": "max" - } - ], - "query": "!SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", - "refId": "D", - "timeField": "timestamp" - }, - { - "alias": "{{term Run.keyword}} : {{term Threads}}th :{{term scale}} {{term kind.keyword}}s", - "bucketAggs": [ - { - "field": "Run.keyword", - "id": "2", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "kind.keyword", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "Threads", - "id": "4", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "scale", - "id": "6", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "5", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "hide": false, - "metrics": [ - { - "field": "Resp", - "id": "1", - "type": "avg" - } - ], - "query": "SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", - "refId": "C", - "timeField": "timestamp" - }, - { - "alias": "Total {{term kind.keyword}} Memory (GB) [384GB]", - "bucketAggs": [ - { - "field": "kind.keyword", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "5", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "hide": false, - "metrics": [ - { - "field": "total_Memory", - "id": "1", - "settings": { - "script": "_value/1000000000" - }, - "type": "max" - } - ], - "query": "SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", - "refId": "E", - "timeField": "timestamp" - }, - { - "alias": "Total {{term kind.keyword}} %CPU [240 cores]", - "bucketAggs": [ - { - "field": "kind.keyword", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "5", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "hide": false, - "metrics": [ - { - "field": "total_CPU", - "id": "1", - "settings": {}, - "type": "max" - } - ], - "query": "SCALE AND !Run.keyword='fillup' AND kind:$kind AND Run:$vdbench_type AND ocp_version:$ocp_version", - "refId": "F", - "timeField": "timestamp" - } - ], - "title": "vdbench Latency (sec)", - "type": "state-timeline" - } - ], - "title": "Vdbench", - "type": "row" - }, - { - "collapsed": true, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 15 - }, - "id": 180, - "panels": [ - { - "datasource": { - "type": "elasticsearch", - "uid": "GOZHNDg4k" - }, - "description": "Higher is better", - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "red" - }, - { - "color": "semi-dark-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 10, - "w": 24, - "x": 0, - "y": 182 - }, - "id": 192, - "interval": "1d", - "links": [ - { - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" - } - ], - "options": { - "alignValue": "left", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.7, - "showValue": "auto", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "Max {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "GOZHNDg4k" - }, - "hide": false, - "metrics": [ - { - "field": "test_description.pods", - "id": "6", - "settings": {}, - "type": "max" - } - ], - "query": "", - "refId": "A", - "timeField": "timestamp" - }, - { - "alias": "CPU Iterations/sec {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "GOZHNDg4k" - }, - "hide": false, - "metrics": [ - { - "field": "iterations_cpu_sec", - "id": "6", - "settings": { - "script": "_value/1000000" - }, - "type": "max" - } - ], - "query": "", - "refId": "B", - "timeField": "timestamp" - } - ], - "title": "Cpusoaker", - "transformations": [ - { - "id": "calculateField", - "options": { - "alias": "Diff Max ( runc - kata)", - "binary": { - "left": "Max runc", - "operator": "-", - "reducer": "sum", - "right": "Max kata" - }, - "mode": "reduceRow", - "reduce": { - "include": [ - "Max kata", - "Max runc" - ], - "reducer": "range" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "Diff CPU( kata / runc)", - "binary": { - "left": "CPU Iterations/sec kata", - "operator": "/", - "reducer": "sum", - "right": "CPU Iterations/sec runc" - }, - "mode": "binary", - "reduce": { - "include": [ - "CPU Iterations/sec runc", - "CPU Iterations/sec kata" - ], - "reducer": "diff" - } - } - }, - { - "id": "organize", - "options": { - "excludeByName": { - "CPU Iterations/sec clusterbuster-ci": true, - "Diff Max ( runc - kata)": true, - "Max clusterbuster-ci": true - }, - "indexByName": { - "CPU Iterations/sec clusterbuster-ci": 5, - "CPU Iterations/sec kata": 3, - "CPU Iterations/sec runc": 2, - "Diff CPU( kata / runc)": 6, - "Diff Max ( runc - kata)": 1, - "Max clusterbuster-ci": 4, - "Max kata": 8, - "Max runc": 7, - "Time": 0 - }, - "renameByName": {} - } - }, - { - "id": "convertFieldType", - "options": { - "conversions": [ - { - "destinationType": "number", - "targetField": "Ratio Last( kata/ runc)" - }, - { - "destinationType": "number", - "targetField": "Diff CPU( kata / runc)" - } - ], - "fields": {} - } - } - ], - "type": "state-timeline" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "GOZHNDg4k" - }, - "description": "Lower is better", - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "decimals": 1, - "mappings": [], - "max": -1, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "dark-blue" - }, - { - "color": "dark-green", - "value": 1 - }, - { - "color": "super-light-green", - "value": 10 - }, - { - "color": "semi-dark-orange", - "value": 20 - }, - { - "color": "dark-red", - "value": 50 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 3, - "w": 24, - "x": 0, - "y": 192 - }, - "id": 191, - "interval": "1d", - "links": [ - { - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" - } - ], - "options": { - "alignValue": "left", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.7, - "showValue": "auto", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "Max {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "GOZHNDg4k" - }, - "metrics": [ - { - "field": "test_description.pods", - "id": "6", - "type": "max" - } - ], - "query": "", - "refId": "A", - "timeField": "timestamp" - } - ], - "transformations": [ - { - "id": "calculateField", - "options": { - "alias": "Diff Max ( runc - kata)", - "binary": { - "left": "Max runc", - "operator": "-", - "reducer": "sum", - "right": "Max kata" - }, - "mode": "reduceRow", - "reduce": { - "include": [ - "Max kata", - "Max runc" - ], - "reducer": "range" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "Diff CPU( kata / runc)", - "binary": { - "left": "CPU Iterations/sec kata", - "operator": "/", - "reducer": "sum", - "right": "CPU Iterations/sec runc" - }, - "mode": "binary", - "reduce": { - "include": [ - "CPU Iterations/sec runc", - "CPU Iterations/sec kata" - ], - "reducer": "diff" - } - } - }, - { - "id": "organize", - "options": { - "excludeByName": { - "CPU Iterations/sec clusterbuster-ci": true, - "Diff Max ( runc - kata)": false, - "Max clusterbuster-ci": true, - "Max kata": true, - "Max runc": true, - "Time": false - }, - "indexByName": { - "CPU Iterations/sec kata": 14, - "CPU Iterations/sec runc": 13, - "Diff CPU( kata - runc)": 15, - "Diff First( kata - runc)": 6, - "Diff Max ( runc - kata)": 3, - "Diff Memory( kata - runc)": 12, - "First start (sec) kata": 5, - "First start (sec) runc": 4, - "Last start (sec) kata": 8, - "Last start (sec) runc": 7, - "Max kata": 2, - "Max runc": 1, - "Memory (GB) kata": 11, - "Memory (GB) runc": 10, - "Ratio Last( kata/ runc)": 9, - "Time": 0 - }, - "renameByName": {} - } - }, - { - "id": "convertFieldType", - "options": { - "conversions": [ - { - "destinationType": "number", - "targetField": "Ratio Last( kata/ runc)" - }, - { - "destinationType": "number", - "targetField": "Diff CPU( kata / runc)" - } - ], - "fields": {} - } - } - ], - "type": "state-timeline" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "GOZHNDg4k" - }, - "description": "Lower is better", - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "mappings": [], - "max": -1, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "dark-blue" - }, - { - "color": "dark-green", - "value": 1 - }, - { - "color": "super-light-green", - "value": 10 - }, - { - "color": "light-red", - "value": 20 - }, - { - "color": "dark-red", - "value": 50 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 10, - "w": 24, - "x": 0, - "y": 195 - }, - "id": 185, - "interval": "1d", - "links": [ - { - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" - } - ], - "options": { - "alignValue": "left", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.9, - "showValue": "auto", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "First start (sec) {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "GOZHNDg4k" - }, - "hide": false, - "metrics": [ - { - "field": "first_pod_start", - "id": "6", - "type": "max" - } - ], - "query": "", - "refId": "A", - "timeField": "timestamp" - }, - { - "alias": "Last start (sec) {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "GOZHNDg4k" - }, - "hide": false, - "metrics": [ - { - "field": "last_pod_start", - "id": "6", - "type": "max" - } - ], - "query": "", - "refId": "B", - "timeField": "timestamp" - }, - { - "alias": "Memory (MB) {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "GOZHNDg4k" - }, - "hide": false, - "metrics": [ - { - "field": "memory_per_pod", - "id": "6", - "settings": { - "script": "_value/1000000" - }, - "type": "max" - } - ], - "query": "", - "refId": "C", - "timeField": "timestamp" - } - ], - "transformations": [ - { - "id": "calculateField", - "options": { - "alias": "Diff First( kata - runc)", - "mode": "reduceRow", - "reduce": { - "include": [ - "First start (sec) runc", - "First start (sec) kata" - ], - "reducer": "diff" - }, - "replaceFields": false - } - }, - { - "id": "calculateField", - "options": { - "alias": "Ratio Last( kata/ runc)", - "binary": { - "left": "Last start (sec) kata", - "operator": "/", - "reducer": "sum", - "right": "Last start (sec) runc" - }, - "mode": "binary", - "reduce": { - "include": [ - "Last start (sec) runc", - "Last start (sec) kata" - ], - "reducer": "diff" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "Diff Memory( kata - runc)", - "binary": { - "left": "Memory (GB) runc", - "operator": "-", - "reducer": "sum", - "right": "Memory (GB) kata" - }, - "mode": "reduceRow", - "reduce": { - "include": [ - "Memory (MB) runc", - "Memory (MB) kata" - ], - "reducer": "diff" - } - } - }, - { - "id": "organize", - "options": { - "excludeByName": { - "First start (sec) clusterbuster-ci": true, - "Last start (sec) clusterbuster-ci": true, - "Memory (MB) clusterbuster-ci": true - }, - "indexByName": { - "Diff First( kata - runc)": 3, - "Diff Memory( kata - runc)": 11, - "First start (sec) clusterbuster-ci": 7, - "First start (sec) kata": 2, - "First start (sec) runc": 1, - "Last start (sec) clusterbuster-ci": 8, - "Last start (sec) kata": 5, - "Last start (sec) runc": 4, - "Memory (MB) clusterbuster-ci": 12, - "Memory (MB) kata": 10, - "Memory (MB) runc": 9, - "Ratio Last( kata/ runc)": 6, - "Time": 0 - }, - "renameByName": {} - } - }, - { - "id": "convertFieldType", - "options": { - "conversions": [ - { - "destinationType": "number", - "targetField": "Ratio Last( kata/ runc)" - }, - { - "destinationType": "number", - "targetField": "Diff CPU( kata / runc)" - } - ], - "fields": {} - } - } - ], - "type": "state-timeline" - } - ], - "title": "Clusterbuster - Cpusoaker", - "type": "row" - }, - { - "collapsed": true, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 16 - }, - "id": 148, - "panels": [ - { - "datasource": { - "type": "elasticsearch", - "uid": "6biHHDgVz" - }, - "description": "Higher is better", - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "red" - }, - { - "color": "semi-dark-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 15, - "w": 24, - "x": 0, - "y": 183 - }, - "id": 167, - "interval": "1d", - "links": [ - { - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" - } - ], - "options": { - "alignValue": "center", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.9, - "showValue": "always", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "read.iops: {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "6biHHDgVz" - }, - "metrics": [ - { - "field": "read.iops", - "id": "6", - "settings": { - "script": "_value/1000" - }, - "type": "max" - } - ], - "query": "", - "refId": "A", - "timeField": "timestamp" - }, - { - "alias": "write.iops: {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "6biHHDgVz" - }, - "hide": false, - "metrics": [ - { - "field": "write.iops", - "id": "6", - "settings": { - "script": "_value/1000" - }, - "type": "max" - } - ], - "query": "", - "refId": "B", - "timeField": "timestamp" - }, - { - "alias": "total.iops: {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "6biHHDgVz" - }, - "hide": false, - "metrics": [ - { - "field": "total.iops", - "id": "6", - "settings": { - "script": "_value/1000" - }, - "type": "max" - } - ], - "query": "", - "refId": "C", - "timeField": "timestamp" - }, - { - "alias": "read.throughput: {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "6biHHDgVz" - }, - "hide": false, - "metrics": [ - { - "field": "read.throughput", - "id": "6", - "settings": { - "script": "_value/1000000" - }, - "type": "max" - } - ], - "query": "", - "refId": "D", - "timeField": "timestamp" - }, - { - "alias": "write.throughput: {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "6biHHDgVz" - }, - "hide": false, - "metrics": [ - { - "field": "write.throughput", - "id": "6", - "settings": { - "script": "_value/1000000" - }, - "type": "max" - } - ], - "query": "", - "refId": "E", - "timeField": "timestamp" - }, - { - "alias": "total.throughput: {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "6biHHDgVz" - }, - "hide": false, - "metrics": [ - { - "field": "total.throughput", - "id": "6", - "settings": { - "script": "_value/1000000" - }, - "type": "max" - } - ], - "query": "", - "refId": "F", - "timeField": "timestamp" - } - ], - "title": "FIO (IOPS/Throughtput)", - "transformations": [ - { - "id": "calculateField", - "options": { - "alias": "read.iops kata/runc", - "binary": { - "left": "read.iops: kata", - "operator": "/", - "reducer": "sum", - "right": "read.iops: runc" - }, - "mode": "binary", - "reduce": { - "include": [ - "read.iops: runc", - "read.iops: kata" - ], - "reducer": "diffperc" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "write.iops kata/runc", - "binary": { - "left": "write.iops: kata", - "operator": "/", - "reducer": "sum", - "right": "write.iops: runc" - }, - "mode": "binary", - "reduce": { - "include": [ - "write.iops: runc", - "write.iops: kata" - ], - "reducer": "sum" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "total.iops kata/runc", - "binary": { - "left": "total.iops: kata", - "operator": "/", - "reducer": "sum", - "right": "total.iops: runc" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "read.throughput kata/runc", - "binary": { - "left": "read.throughput: kata", - "operator": "/", - "reducer": "sum", - "right": "read.throughput: runc" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "write.throughput kata/runc", - "binary": { - "left": "write.throughput: kata", - "operator": "/", - "reducer": "sum", - "right": "write.throughput: runc" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "total.throughput kata/runc", - "binary": { - "left": "total.throughput: kata", - "operator": "/", - "reducer": "sum", - "right": "total.throughput: runc" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - } - } - }, - { - "id": "organize", - "options": { - "excludeByName": { - "read.iops: clusterbuster-ci": true, - "read.throughput: clusterbuster-ci": true, - "total.iops: clusterbuster-ci": true, - "total.throughput: clusterbuster-ci": true, - "write.iops: clusterbuster-ci": true, - "write.throughput: clusterbuster-ci": true - }, - "indexByName": { - "Time": 0, - "read.iops kata/runc": 3, - "read.iops: kata": 2, - "read.iops: runc": 1, - "read.throughput kata/runc": 12, - "read.throughput: kata": 11, - "read.throughput: runc": 10, - "total.iops kata/runc": 9, - "total.iops: kata": 8, - "total.iops: runc": 7, - "total.throughput kata/runc": 18, - "total.throughput: kata": 17, - "total.throughput: runc": 16, - "write.iops kata/runc": 6, - "write.iops: kata": 5, - "write.iops: runc": 4, - "write.throughput kata/runc": 15, - "write.throughput: kata": 14, - "write.throughput: runc": 13 - }, - "renameByName": {} - } - }, - { - "id": "convertFieldType", - "options": { - "conversions": [ - { - "destinationType": "number", - "targetField": "read.iops kata/runc" - }, - { - "destinationType": "number", - "targetField": "write.iops kata/runc" - }, - { - "destinationType": "number", - "targetField": "total.iops kata/runc" - }, - { - "destinationType": "number", - "targetField": "read.throughput kata/runc" - }, - { - "destinationType": "number", - "targetField": "write.throughput kata/runc" - }, - { - "destinationType": "number", - "targetField": "total.throughput kata/runc" - } - ], - "fields": {} - } - } - ], - "type": "state-timeline" - } - ], - "title": "ClusterBuster - FIO", - "type": "row" - }, - { - "collapsed": true, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 17 - }, - "id": 182, - "panels": [ - { - "datasource": { - "type": "elasticsearch", - "uid": "tokwNvgVz" - }, - "description": "Lower is better", - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "decimals": 2, - "mappings": [], - "max": -1, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "dark-blue" - }, - { - "color": "dark-green", - "value": 1 - }, - { - "color": "super-light-green", - "value": 10 - }, - { - "color": "semi-dark-orange", - "value": 20 - }, - { - "color": "dark-red", - "value": 50 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 16, - "w": 24, - "x": 0, - "y": 184 - }, - "id": 165, - "interval": "1d", - "links": [ - { - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" - } - ], - "options": { - "alignValue": "left", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.9, - "showValue": "auto", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "create: 4096: {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "tokwNvgVz" - }, - "metrics": [ - { - "field": "create.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.filesize:4096", - "refId": "A", - "timeField": "timestamp" - }, - { - "alias": "create: 262,144: {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "tokwNvgVz" - }, - "hide": false, - "metrics": [ - { - "field": "create.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.filesize:262144", - "refId": "G", - "timeField": "timestamp" - }, - { - "alias": "read : 4096: {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "tokwNvgVz" - }, - "hide": false, - "metrics": [ - { - "field": "read.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.filesize:4096", - "refId": "C", - "timeField": "timestamp" - }, - { - "alias": "read : 262,144: {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "tokwNvgVz" - }, - "hide": false, - "metrics": [ - { - "field": "read.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.filesize:262144", - "refId": "I", - "timeField": "timestamp" - }, - { - "alias": "remove : 4096: {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "tokwNvgVz" - }, - "hide": false, - "metrics": [ - { - "field": "remove.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.filesize:4096", - "refId": "E", - "timeField": "timestamp" - }, - { - "alias": "remove : 262,144: {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.runtime.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "tokwNvgVz" - }, - "hide": false, - "metrics": [ - { - "field": "remove.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.filesize:262144", - "refId": "K", - "timeField": "timestamp" - } - ], - "title": "Files (sec)", - "transformations": [ - { - "id": "calculateField", - "options": { - "alias": "create 4096 kata/runc", - "binary": { - "left": "create: 4096: kata", - "operator": "/", - "reducer": "sum", - "right": "create: 4096: runc" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "create 262,144 kata/runc", - "binary": { - "left": "create: 262,144: kata", - "operator": "/", - "reducer": "sum", - "right": "create: 262,144: runc" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "read 4096 kata/runc", - "binary": { - "left": "read : 4096: kata", - "operator": "/", - "reducer": "sum", - "right": "read : 4096: runc" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "read 262,144 kata/runc", - "binary": { - "left": "read : 262,144: kata", - "operator": "/", - "reducer": "sum", - "right": "read : 262,144: runc" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "remove 4096 kata/runc", - "binary": { - "left": "remove : 4096: kata", - "operator": "/", - "reducer": "sum", - "right": "remove : 4096: runc" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "remove 262,144 kata/runc", - "binary": { - "left": "remove : 262,144: kata", - "operator": "/", - "reducer": "sum", - "right": "remove : 262,144: runc" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - } - } - }, - { - "id": "organize", - "options": { - "excludeByName": { - "create: 262,144: clusterbuster-ci": true, - "create: 4096: clusterbuster-ci": true, - "read : 262,144: clusterbuster-ci": true, - "read : 4096: clusterbuster-ci": true, - "remove : 262,144: clusterbuster-ci": true, - "remove : 4096: clusterbuster-ci": true - }, - "indexByName": { - "Time": 0, - "create 262,144 kata/runc": 6, - "create 4096 kata/runc": 3, - "create: 262,144: kata": 5, - "create: 262,144: runc": 4, - "create: 4096: kata": 2, - "create: 4096: runc": 1, - "read 262,144 kata/runc": 12, - "read 4096 kata/runc": 9, - "read : 262,144: kata": 11, - "read : 262,144: runc": 10, - "read : 4096: kata": 8, - "read : 4096: runc": 7, - "remove 262,144 kata/runc": 18, - "remove 4096 kata/runc": 15, - "remove : 262,144: kata": 17, - "remove : 262,144: runc": 16, - "remove : 4096: kata": 14, - "remove : 4096: runc": 13 - }, - "renameByName": {} - } - }, - { - "id": "convertFieldType", - "options": { - "conversions": [ - { - "destinationType": "number", - "targetField": "create 4096 kata/runc" - }, - { - "destinationType": "number", - "targetField": "create 262,144 kata/runc" - }, - { - "destinationType": "number", - "targetField": "read 4096 kata/runc" - }, - { - "destinationType": "number", - "targetField": "read 262,144 kata/runc" - }, - { - "destinationType": "number", - "targetField": "remove 4096 kata/runc" - }, - { - "destinationType": "number", - "targetField": "remove 262,144 kata/runc" - } - ], - "fields": {} - } - } - ], - "type": "state-timeline" - } - ], - "title": "Clusterbuster - Files", - "type": "row" - }, - { - "collapsed": true, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 18 - }, - "id": 184, - "panels": [ - { - "datasource": { - "type": "elasticsearch", - "uid": "vMOhDvR4k" - }, - "description": "Lower is better", - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "decimals": 2, - "mappings": [], - "max": -1, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "dark-blue" - }, - { - "color": "dark-green", - "value": 1 - }, - { - "color": "light-green", - "value": 10 - }, - { - "color": "semi-dark-orange", - "value": 20 - }, - { - "color": "red", - "value": 50 - } - ] - }, - "unit": "short" - }, - "overrides": [] - }, - "gridPos": { - "h": 9, - "w": 24, - "x": 0, - "y": 185 - }, - "id": 169, - "interval": "1d", - "links": [ - { - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" - } - ], - "options": { - "alignValue": "left", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.7, - "showValue": "auto", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "latency: {{term test_description.msgsize}}: {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.msgsize", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "test_description.runtime.keyword", - "id": "9", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "vMOhDvR4k" - }, - "metrics": [ - { - "field": "max_time_op", - "id": "6", - "settings": { - "script": "_value*1000" - }, - "type": "max" - } - ], - "query": "", - "refId": "A", - "timeField": "timestamp" - } - ], - "title": "Uperf (Latency)", - "transformations": [ - { - "id": "calculateField", - "options": { - "alias": "rate:64 kata/runc", - "binary": { - "left": "rate: 64: kata", - "operator": "/", - "reducer": "sum", - "right": "rate: 64: runc" - }, - "mode": "binary", - "reduce": { - "include": [ - "rate: 64: runc", - "rate: 64: kata" - ], - "reducer": "sum" - }, - "replaceFields": false - } - }, - { - "id": "calculateField", - "options": { - "alias": "rate:1024 kata/runc", - "binary": { - "left": "rate: 1024: kata", - "operator": "/", - "reducer": "sum", - "right": "rate: 1024: runc" - }, - "mode": "binary", - "reduce": { - "include": [ - "rate: 1024: runc", - "rate: 1024: kata" - ], - "reducer": "sum" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "rate:8192 kata/runc", - "binary": { - "left": "rate: 8192: kata", - "operator": "/", - "reducer": "sum", - "right": "rate: 8192: runc" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - } - } - }, - { - "id": "convertFieldType", - "options": { - "conversions": [ - { - "destinationType": "number", - "targetField": "rate:64 kata/runc" - }, - { - "destinationType": "number", - "targetField": "rate:1024 kata/runc" - }, - { - "destinationType": "number", - "targetField": "rate:8192 kata/runc" - } - ], - "fields": {} - } - }, - { - "id": "organize", - "options": { - "excludeByName": { - "latency: 1024: clusterbuster-ci": true, - "latency: 64: clusterbuster-ci": true, - "latency: 8192: clusterbuster-ci": true - }, - "indexByName": { - "Time": 0, - "rate: 1024: kata": 5, - "rate: 1024: runc": 4, - "rate: 64: kata": 2, - "rate: 64: runc": 1, - "rate: 8192: kata": 8, - "rate: 8192: runc": 7, - "rate:1024 kata/runc": 6, - "rate:64 kata/runc": 3, - "rate:8192 kata/runc": 9 - }, - "renameByName": {} - } - } - ], - "type": "state-timeline" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "vMOhDvR4k" - }, - "description": "Higher is better", - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "red" - }, - { - "color": "semi-dark-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 12, - "w": 24, - "x": 0, - "y": 194 - }, - "id": 174, - "interval": "1d", - "links": [ - { - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" - } - ], - "options": { - "alignValue": "left", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.7, - "showValue": "auto", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "rate: {{term test_description.msgsize}}: {{term test_description.runtime.keyword}}", - "bucketAggs": [ - { - "field": "test_description.msgsize", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "test_description.runtime.keyword", - "id": "9", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "vMOhDvR4k" - }, - "metrics": [ - { - "field": "rate", - "id": "6", - "settings": { - "script": "_value/1000000" - }, - "type": "max" - } - ], - "query": "", - "refId": "A", - "timeField": "timestamp" - } - ], - "title": "Uperf (Throughput)", - "transformations": [ - { - "id": "calculateField", - "options": { - "alias": "rate: 64 kata/runc", - "binary": { - "left": "rate: 64: kata", - "operator": "/", - "reducer": "sum", - "right": "rate: 64: runc" - }, - "mode": "binary", - "reduce": { - "include": [ - "rate: 64: runc", - "rate: 64: kata" - ], - "reducer": "sum" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "rate: 1024: kata/runc", - "binary": { - "left": "rate: 1024: kata", - "operator": "/", - "reducer": "sum", - "right": "rate: 1024: runc" - }, - "mode": "binary", - "reduce": { - "reducer": "sum" - } - } - }, - { - "id": "calculateField", - "options": { - "alias": "rate:8192: kata/runc", - "binary": { - "left": "rate: 8192: kata", - "operator": "/", - "reducer": "sum", - "right": "rate: 8192: runc" - }, - "mode": "binary", - "reduce": { - "include": [ - "rate: 8192: runc", - "rate: 8192: kata" - ], - "reducer": "sum" - } - } - }, - { - "id": "convertFieldType", - "options": { - "conversions": [ - { - "destinationType": "number", - "targetField": "rate: 64 kata/runc" - }, - { - "destinationType": "number", - "targetField": "rate: 1024: kata/runc" - }, - { - "destinationType": "number", - "targetField": "rate:8192: kata/runc" - } - ], - "fields": {} - } - }, - { - "id": "organize", - "options": { - "excludeByName": { - "rate: 1024: clusterbuster-ci": true, - "rate: 64: clusterbuster-ci": true, - "rate: 8192: clusterbuster-ci": true - }, - "indexByName": { - "Time": 0, - "rate: 1024: kata": 5, - "rate: 1024: kata/runc": 6, - "rate: 1024: runc": 4, - "rate: 64 kata/runc": 3, - "rate: 64: kata": 2, - "rate: 64: runc": 1, - "rate: 8192: kata": 8, - "rate: 8192: runc": 7, - "rate:8192: kata/runc": 9 - }, - "renameByName": {} - } - } - ], - "type": "state-timeline" - } - ], - "title": "Clusterbuster - Uperf", - "type": "row" - }, - { - "collapsed": true, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 19 - }, - "id": 157, - "panels": [ - { - "datasource": { - "type": "elasticsearch", - "uid": "KQC9aik4z" - }, - "description": "OVN - 09/19", - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "red" - }, - { - "color": "semi-dark-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 36, - "w": 24, - "x": 0, - "y": 261 - }, - "id": 164, - "interval": "1d", - "links": [ - { - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=1659592686997&to=1663480686997&viewPanel=166" - } - ], - "options": { - "alignValue": "left", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.9, - "showValue": "auto", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "pod: max", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "KQC9aik4z" - }, - "metrics": [ - { - "field": "test_description.pods", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='runc'", - "refId": "A", - "timeField": "timestamp" - }, - { - "alias": "kata: max", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "KQC9aik4z" - }, - "hide": false, - "metrics": [ - { - "field": "test_description.pods", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='kata'", - "refId": "B", - "timeField": "timestamp" - }, - { - "alias": "pod: Memory per pod (MB)", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "KQC9aik4z" - }, - "hide": false, - "metrics": [ - { - "field": "memory_per_pod", - "id": "6", - "settings": { - "script": "_value/1000000" - }, - "type": "max" - } - ], - "query": "test_description.runtime='runc'", - "refId": "C", - "timeField": "timestamp" - }, - { - "alias": "kata: Memory per kata (MB)", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "KQC9aik4z" - }, - "hide": false, - "metrics": [ - { - "field": "memory_per_pod", - "id": "6", - "settings": { - "script": "_value/1000000" - }, - "type": "max" - } - ], - "query": "test_description.runtime='kata'", - "refId": "D", - "timeField": "timestamp" - }, - { - "alias": "pod: start per seconds", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "KQC9aik4z" - }, - "hide": false, - "metrics": [ - { - "field": "pod_starts_per_second", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='runc'", - "refId": "E", - "timeField": "timestamp" - }, - { - "alias": "kata: start per seconds", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "KQC9aik4z" - }, - "hide": false, - "metrics": [ - { - "field": "pod_starts_per_second", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='kata'", - "refId": "F", - "timeField": "timestamp" - }, - { - "alias": "pod: Iteration cpu sec", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "KQC9aik4z" - }, - "hide": false, - "metrics": [ - { - "field": "iterations_cpu_sec", - "id": "6", - "settings": { - "script": "_value/1000000" - }, - "type": "max" - } - ], - "query": "test_description.runtime='runc'", - "refId": "G", - "timeField": "timestamp" - }, - { - "alias": "kata: Iteration cpu sec", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "KQC9aik4z" - }, - "hide": false, - "metrics": [ - { - "field": "iterations_cpu_sec", - "id": "6", - "settings": { - "script": "_value/1000000" - }, - "type": "max" - } - ], - "query": "test_description.runtime='kata'", - "refId": "H", - "timeField": "timestamp" - }, - { - "alias": "pod: Iteration sec", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "KQC9aik4z" - }, - "hide": false, - "metrics": [ - { - "field": "iterations_sec", - "id": "6", - "settings": { - "script": "_value/1000000" - }, - "type": "max" - } - ], - "query": "test_description.runtime='runc'", - "refId": "I", - "timeField": "timestamp" - }, - { - "alias": "kata: Iteration sec", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "KQC9aik4z" - }, - "hide": false, - "metrics": [ - { - "field": "iterations_sec", - "id": "6", - "settings": { - "script": "_value/1000000" - }, - "type": "max" - } - ], - "query": "test_description.runtime='kata'", - "refId": "J", - "timeField": "timestamp" - } - ], - "title": "clusterbuster-cpusoaker [OVN - 09/19]", - "type": "state-timeline" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "owIkBmzVz" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "red" - }, - { - "color": "semi-dark-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 36, - "w": 24, - "x": 0, - "y": 297 - }, - "id": 153, - "interval": "1d", - "links": [ - { - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" - } - ], - "options": { - "alignValue": "left", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.9, - "showValue": "auto", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "pod: create: filesize 4096", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "owIkBmzVz" - }, - "metrics": [ - { - "field": "create.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='runc' and test_description.filesize:4096", - "refId": "A", - "timeField": "timestamp" - }, - { - "alias": "kata: create: filesize 4096", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "owIkBmzVz" - }, - "hide": false, - "metrics": [ - { - "field": "create.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='kata' and test_description.filesize:4096", - "refId": "B", - "timeField": "timestamp" - }, - { - "alias": "pod: read : filesize 4096", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "owIkBmzVz" - }, - "hide": false, - "metrics": [ - { - "field": "read.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='runc' and test_description.filesize:4096", - "refId": "C", - "timeField": "timestamp" - }, - { - "alias": "kata: read: filesize 4096", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "owIkBmzVz" - }, - "hide": false, - "metrics": [ - { - "field": "read.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='kata' and test_description.filesize:4096", - "refId": "D", - "timeField": "timestamp" - }, - { - "alias": "pod: remove : filesize 4096", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "owIkBmzVz" - }, - "hide": false, - "metrics": [ - { - "field": "remove.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='runc' and test_description.filesize:4096", - "refId": "E", - "timeField": "timestamp" - }, - { - "alias": "kata: remove: filesize 4096", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "owIkBmzVz" - }, - "hide": false, - "metrics": [ - { - "field": "remove.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='kata' and test_description.filesize:4096", - "refId": "F", - "timeField": "timestamp" - }, - { - "alias": "pod: create: filesize 262,144", - "bucketAggs": [ - { - "field": "test_description.dirs", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "owIkBmzVz" - }, - "hide": false, - "metrics": [ - { - "field": "create.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='runc' and test_description.filesize:262144", - "refId": "G", - "timeField": "timestamp" - }, - { - "alias": "kata: create: filesize 262,144", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "owIkBmzVz" - }, - "hide": false, - "metrics": [ - { - "field": "create.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='kata' and test_description.filesize:262144", - "refId": "H", - "timeField": "timestamp" - }, - { - "alias": "pod: read : filesize 262,144", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "owIkBmzVz" - }, - "hide": false, - "metrics": [ - { - "field": "read.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='runc' and test_description.filesize:262144", - "refId": "I", - "timeField": "timestamp" - }, - { - "alias": "kata: read : filesize 262,144", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "owIkBmzVz" - }, - "hide": false, - "metrics": [ - { - "field": "read.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='kata' and test_description.filesize:262144", - "refId": "J", - "timeField": "timestamp" - }, - { - "alias": "pod: remove : filesize 262,144", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "owIkBmzVz" - }, - "hide": false, - "metrics": [ - { - "field": "remove.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='runc' and test_description.filesize:262144", - "refId": "K", - "timeField": "timestamp" - }, - { - "alias": "kata: remove: filesize 262,144", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "owIkBmzVz" - }, - "hide": false, - "metrics": [ - { - "field": "remove.elapsed_time", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='kata' and test_description.filesize:262144", - "refId": "L", - "timeField": "timestamp" - } - ], - "title": "clusterbuster-files: elapsed_time: Direct/ 64 dirs/files", - "type": "state-timeline" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "MIqWBmzVz" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "red" - }, - { - "color": "semi-dark-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 36, - "w": 24, - "x": 0, - "y": 333 - }, - "id": 168, - "interval": "1d", - "links": [ - { - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" - } - ], - "options": { - "alignValue": "left", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.9, - "showValue": "auto", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "runc read", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "MIqWBmzVz" - }, - "metrics": [ - { - "field": "read.iops", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='runc'", - "refId": "A", - "timeField": "timestamp" - }, - { - "alias": "kata read", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "MIqWBmzVz" - }, - "hide": false, - "metrics": [ - { - "field": "read.iops", - "id": "6", - "type": "max" - } - ], - "query": "test_description.runtime='kata'", - "refId": "B", - "timeField": "timestamp" - } - ], - "title": "clusterbuster-fio", - "type": "state-timeline" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "SPodBiz4z" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 70, - "lineWidth": 0 - }, - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "red" - }, - { - "color": "semi-dark-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 36, - "w": 24, - "x": 0, - "y": 369 - }, - "id": 170, - "interval": "1d", - "links": [ - { - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=150" - } - ], - "options": { - "alignValue": "left", - "legend": { - "displayMode": "list", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.9, - "showValue": "auto", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "runc rate", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "SPodBiz4z" - }, - "metrics": [ - { - "field": "rate", - "id": "6", - "settings": { - "script": "_value/1000000" - }, - "type": "max" - } - ], - "query": "test_description.runtime='runc'", - "refId": "A", - "timeField": "timestamp" - }, - { - "alias": "kata rate", - "bucketAggs": [ - { - "field": "timestamp", - "id": "7", - "settings": { - "interval": "auto", - "min_doc_count": "0", - "timeZone": "utc", - "trimEdges": "0" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "SPodBiz4z" - }, - "hide": false, - "metrics": [ - { - "field": "rate", - "id": "6", - "settings": { - "script": "_value/1000000" - }, - "type": "max" - } - ], - "query": "test_description.runtime='kata'", - "refId": "B", - "timeField": "timestamp" - } - ], - "title": "clusterbuster-uperf", - "type": "state-timeline" - } - ], - "title": "Clusterbuster - release", - "type": "row" - }, - { - "collapsed": true, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 20 - }, - "id": 176, - "panels": [ - { - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "description": "Time till VM Login - Lower is better", - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 77, - "lineWidth": 0 - }, - "decimals": 1, - "mappings": [ - { - "options": { - "0": { - "color": "transparent", - "index": 0, - "text": "." - } - }, - "type": "value" - } - ], - "max": -1, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "dark-blue" - }, - { - "color": "dark-green", - "value": 1 - }, - { - "color": "super-light-green", - "value": 10 - }, - { - "color": "semi-dark-orange", - "value": 20 - }, - { - "color": "dark-red", - "value": 50 - } - ] - }, - "unit": "none" - }, - "overrides": [] - }, - "gridPos": { - "h": 19, - "w": 24, - "x": 0, - "y": 187 - }, - "id": 178, - "interval": "1d", - "links": [ - { - "targetBlank": true, - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/regression-summary?orgId=1&from=now-45d&to=now&viewPanel=190" - } - ], - "options": { - "alignValue": "center", - "legend": { - "displayMode": "hidden", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.9, - "showValue": "always", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "Min", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "hide": false, - "metrics": [ - { - "field": "bootstorm_time", - "id": "1", - "settings": { - "script": "_value/1000" - }, - "type": "min" - } - ], - "query": "scale:300 AND ocp_version:$ocp_version", - "refId": "A", - "timeField": "timestamp" - }, - { - "alias": "Max", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "hide": false, - "metrics": [ - { - "field": "bootstorm_time", - "id": "1", - "settings": { - "script": "_value/1000" - }, - "type": "max" - } - ], - "query": "scale:300 AND ocp_version:$ocp_version", - "refId": "B", - "timeField": "timestamp" - }, - { - "alias": "", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "hide": false, - "metrics": [ - { - "field": "bootstorm_time", - "id": "1", - "settings": { - "percents": [ - "25", - "50", - "75", - "95", - "99" - ], - "script": "_value/1000" - }, - "type": "percentiles" - } - ], - "query": "scale:300 AND ocp_version:$ocp_version", - "refId": "C", - "timeField": "timestamp" - }, - { - "alias": "AVG. 100 vms {{term node.keyword}}", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "node.keyword", - "id": "4", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "hide": false, - "metrics": [ - { - "field": "bootstorm_time", - "id": "1", - "settings": { - "script": "_value/1000" - }, - "type": "avg" - } - ], - "query": "scale:300 AND ocp_version:$ocp_version", - "refId": "D", - "timeField": "timestamp" - }, - { - "alias": "Memory(GB) [384GB]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "hide": false, - "metrics": [ - { - "field": "total_Memory", - "id": "1", - "settings": { - "script": "_value/1000000000" - }, - "type": "max" - } - ], - "query": "scale:300 AND ocp_version:$ocp_version", - "refId": "F", - "timeField": "timestamp" - }, - { - "alias": "Memory Worker-0 (GB) [128GB]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "hide": false, - "metrics": [ - { - "field": "worker-0_Memory", - "id": "1", - "settings": { - "script": "_value/1000000000" - }, - "type": "max" - } - ], - "query": "scale:300 AND ocp_version:$ocp_version", - "refId": "E", - "timeField": "timestamp" - }, - { - "alias": "Memory Worker-1 (GB) [128GB]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "hide": false, - "metrics": [ - { - "field": "worker-1_Memory", - "id": "1", - "settings": { - "script": "_value/1000000000" - }, - "type": "max" - } - ], - "query": "scale:300 AND ocp_version:$ocp_version", - "refId": "G", - "timeField": "timestamp" - }, - { - "alias": "Memory Worker-2 (GB) [128GB]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "hide": false, - "metrics": [ - { - "field": "worker-2_Memory", - "id": "1", - "settings": { - "script": "_value/1000000000" - }, - "type": "max" - } - ], - "query": "scale:300 AND ocp_version:$ocp_version", - "refId": "H", - "timeField": "timestamp" - }, - { - "alias": "%CPU [240 cores]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "hide": false, - "metrics": [ - { - "field": "total_CPU", - "id": "1", - "settings": {}, - "type": "max" - } - ], - "query": "scale:300 AND ocp_version:$ocp_version", - "refId": "I", - "timeField": "timestamp" - }, - { - "alias": "%CPU worker-0 [80 cores]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "hide": false, - "metrics": [ - { - "field": "worker-0_CPU", - "id": "1", - "settings": {}, - "type": "max" - } - ], - "query": "scale:300 AND ocp_version:$ocp_version", - "refId": "J", - "timeField": "timestamp" - }, - { - "alias": "%CPU worker-1 [80 cores]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "hide": false, - "metrics": [ - { - "field": "worker-1_CPU", - "id": "1", - "settings": {}, - "type": "max" - } - ], - "query": "scale:300 AND ocp_version:$ocp_version", - "refId": "K", - "timeField": "timestamp" - }, - { - "alias": "%CPU worker-2 [80 cores]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "hide": false, - "metrics": [ - { - "field": "worker-2_CPU", - "id": "1", - "settings": {}, - "type": "max" - } - ], - "query": "scale:300 AND ocp_version:$ocp_version", - "refId": "L", - "timeField": "timestamp" - }, - { - "alias": "VMs #", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "hide": false, - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "scale:300 AND ocp_version:$ocp_version", - "refId": "M", - "timeField": "timestamp" - } - ], - "title": "300 Fedora37 VMs(Sec)", - "transformations": [], - "type": "state-timeline" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "description": "Time till VM Login - Lower is better", - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "fillOpacity": 77, - "lineWidth": 0 - }, - "decimals": 1, - "mappings": [ - { - "options": { - "0": { - "color": "transparent", - "index": 0, - "text": "." - } - }, - "type": "value" - } - ], - "max": -1, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "dark-blue" - }, - { - "color": "dark-green", - "value": 1 - }, - { - "color": "super-light-green", - "value": 10 - }, - { - "color": "semi-dark-orange", - "value": 20 - }, - { - "color": "dark-red", - "value": 50 - } - ] - } - }, - "overrides": [] - }, - "gridPos": { - "h": 19, - "w": 24, - "x": 0, - "y": 206 - }, - "id": 193, - "interval": "1d", - "links": [ - { - "targetBlank": true, - "title": "artifacts link", - "url": "https://grafana-perf-chmf5l4sh776bznl3b.ibm.rhperfscale.org/d/T4775LKnzzmichey/perfci-regression-summary?orgId=1&from=now-45d&to=now&viewPanel=194" - } - ], - "options": { - "alignValue": "center", - "legend": { - "displayMode": "hidden", - "placement": "bottom" - }, - "mergeValues": false, - "rowHeight": 0.9, - "showValue": "always", - "tooltip": { - "mode": "single" - } - }, - "targets": [ - { - "alias": "Min", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "hide": false, - "metrics": [ - { - "field": "bootstorm_time", - "id": "1", - "settings": { - "script": "_value/1000" - }, - "type": "min" - } - ], - "query": "scale:120 AND ocp_version:$ocp_version", - "refId": "A", - "timeField": "timestamp" - }, - { - "alias": "Max", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "hide": false, - "metrics": [ - { - "field": "bootstorm_time", - "id": "1", - "settings": { - "script": "_value/1000" - }, - "type": "max" - } - ], - "query": "scale:120 AND ocp_version:$ocp_version", - "refId": "B", - "timeField": "timestamp" - }, - { - "alias": "", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "hide": false, - "metrics": [ - { - "field": "bootstorm_time", - "id": "1", - "settings": { - "percents": [ - "25", - "50", - "75", - "95", - "99" - ], - "script": "_value/1000" - }, - "type": "percentiles" - } - ], - "query": "scale:120 AND ocp_version:$ocp_version", - "refId": "C", - "timeField": "timestamp" - }, - { - "alias": "AVG. 40 vms {{term node.keyword}}", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "node.keyword", - "id": "4", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "hide": false, - "metrics": [ - { - "field": "bootstorm_time", - "id": "1", - "settings": { - "script": "_value/1000" - }, - "type": "avg" - } - ], - "query": "scale:120 AND ocp_version:$ocp_version", - "refId": "D", - "timeField": "timestamp" - }, - { - "alias": "Memory(GB) [384GB]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "hide": false, - "metrics": [ - { - "field": "total_Memory", - "id": "1", - "settings": { - "script": "_value/1000000000/2" - }, - "type": "max" - } - ], - "query": "scale:120 AND ocp_version:$ocp_version", - "refId": "F", - "timeField": "timestamp" - }, - { - "alias": "Memory Worker-0 (GB) [128GB]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "hide": false, - "metrics": [ - { - "field": "worker-0_Memory", - "id": "1", - "settings": { - "script": "_value/1000000000/2" - }, - "type": "max" - } - ], - "query": "scale:120 AND ocp_version:$ocp_version", - "refId": "E", - "timeField": "timestamp" - }, - { - "alias": "Memory Worker-1 (GB) [128GB]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "hide": false, - "metrics": [ - { - "field": "worker-1_Memory", - "id": "1", - "settings": { - "script": "_value/1000000000/2" - }, - "type": "max" - } - ], - "query": "scale:120 AND ocp_version:$ocp_version", - "refId": "G", - "timeField": "timestamp" - }, - { - "alias": "Memory Worker-2 (GB) [128GB]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "hide": false, - "metrics": [ - { - "field": "worker-2_Memory", - "id": "1", - "settings": { - "script": "_value/1000000000/2" - }, - "type": "max" - } - ], - "query": "scale:120 AND ocp_version:$ocp_version", - "refId": "H", - "timeField": "timestamp" - }, - { - "alias": "%CPU [240 cores]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "hide": false, - "metrics": [ - { - "field": "total_CPU", - "id": "1", - "settings": {}, - "type": "max" - } - ], - "query": "scale:120 AND ocp_version:$ocp_version", - "refId": "I", - "timeField": "timestamp" - }, - { - "alias": "%CPU worker-0 [80 cores]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "hide": false, - "metrics": [ - { - "field": "worker-0_CPU", - "id": "1", - "settings": {}, - "type": "max" - } - ], - "query": "scale:120 AND ocp_version:$ocp_version", - "refId": "J", - "timeField": "timestamp" - }, - { - "alias": "%CPU worker-1 [80 cores]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "hide": false, - "metrics": [ - { - "field": "worker-1_CPU", - "id": "1", - "settings": {}, - "type": "max" - } - ], - "query": "scale:120 AND ocp_version:$ocp_version", - "refId": "K", - "timeField": "timestamp" - }, - { - "alias": "%CPU worker-2 [80 cores]", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "hide": false, - "metrics": [ - { - "field": "worker-2_CPU", - "id": "1", - "settings": {}, - "type": "max" - } - ], - "query": "scale:120 AND ocp_version:$ocp_version", - "refId": "L", - "timeField": "timestamp" - }, - { - "alias": "VMs #", - "bucketAggs": [ - { - "field": "scale", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "hide": false, - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "scale:120 AND ocp_version:$ocp_version", - "refId": "M", - "timeField": "timestamp" - } - ], - "title": "120 Windows Server 2019 VMs virtio (Sec)", - "type": "state-timeline" - } - ], - "title": "BootStorm", - "type": "row" - }, - { - "collapsed": false, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 21 - }, - "id": 125, - "panels": [], - "title": "Artifacts", - "type": "row" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "xQGAtZvnk" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "align": "auto", - "displayMode": "auto" - }, - "links": [ - { - "targetBlank": true, - "title": "link", - "url": "${__data.fields[\"run_artifacts_url.keyword\"]}" - } - ], - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "semi-dark-red", - "value": null - }, - { - "color": "light-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [ - { - "matcher": { - "id": "byName", - "options": "ci_date.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 146 - }, - { - "id": "displayName", - "value": "Date" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "db_type.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 137 - }, - { - "id": "displayName", - "value": "Database" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "current_worker" - }, - "properties": [ - { - "id": "custom.width", - "value": 134 - }, - { - "id": "displayName", - "value": "Thread" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "kind.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 159 - }, - { - "id": "displayName", - "value": "Kind" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "run_artifacts_url.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 1068 - }, - { - "id": "displayName", - "value": "Artifacts Link" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "storage_type.keyword" - }, - "properties": [ - { - "id": "displayName", - "value": "Storage" - } - ] - } - ] - }, - "gridPos": { - "h": 28, - "w": 24, - "x": 0, - "y": 22 - }, - "id": 128, - "interval": "1d", - "options": { - "footer": { - "fields": "", - "reducer": [ - "sum" - ], - "show": false - }, - "showHeader": true, - "sortBy": [] - }, - "pluginVersion": "8.4.0-pre", - "targets": [ - { - "alias": "", - "bucketAggs": [ - { - "field": "ci_date.keyword", - "id": "6", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "db_type.keyword", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "current_worker", - "id": "4", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "kind.keyword", - "id": "5", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "storage_type.keyword", - "id": "2", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "run_artifacts_url.keyword", - "id": "7", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "xQGAtZvnk" - }, - "metrics": [ - { - "field": "tpm", - "id": "1", - "settings": { - "script": "_value/1000" - }, - "type": "max" - } - ], - "query": "_exists_:tpm AND db_type:$db_type AND current_worker:$current_worker AND kind:$kind", - "refId": "A", - "timeField": "timestamp" - } - ], - "title": "HammerDB artifacts", - "type": "table" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "xNKZdZv7k" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "align": "auto", - "displayMode": "auto" - }, - "decimals": 1, - "links": [ - { - "targetBlank": true, - "title": "link", - "url": "${__data.fields[\"run_artifacts_url.keyword\"]}" - } - ], - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "semi-dark-red", - "value": null - }, - { - "color": "light-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [ - { - "matcher": { - "id": "byName", - "options": "ci_date.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 169 - }, - { - "id": "displayName", - "value": "Date" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "read_message_size" - }, - "properties": [ - { - "id": "custom.width", - "value": 167 - }, - { - "id": "displayName", - "value": "Read Message Size" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "num_threads" - }, - "properties": [ - { - "id": "custom.width", - "value": 125 - }, - { - "id": "displayName", - "value": "Thread" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "kind.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 114 - }, - { - "id": "displayName", - "value": "Kind" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "run_artifacts_url.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 1068 - }, - { - "id": "displayName", - "value": "Artifacts Link" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Average" - }, - "properties": [ - { - "id": "displayName", - "value": "Average Gbits" - } - ] - } - ] - }, - "gridPos": { - "h": 15, - "w": 24, - "x": 0, - "y": 50 - }, - "id": 129, - "interval": "1d", - "options": { - "footer": { - "fields": "", - "reducer": [ - "sum" - ], - "show": false - }, - "showHeader": true, - "sortBy": [] - }, - "pluginVersion": "8.4.0-pre", - "targets": [ - { - "alias": "", - "bucketAggs": [ - { - "field": "ci_date.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "5" - }, - "type": "terms" - }, - { - "field": "read_message_size", - "id": "4", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "num_threads", - "id": "5", - "settings": { - "min_doc_count": "1", - "order": "asc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "kind.keyword", - "id": "6", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "run_artifacts_url.keyword", - "id": "7", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "xNKZdZv7k" - }, - "metrics": [ - { - "field": "norm_byte", - "id": "1", - "settings": { - "script": "_value*8/1000000000" - }, - "type": "avg" - } - ], - "query": "_exists_:norm_ops AND read_message_size:(64 OR 1024 OR 8192) AND num_threads:(1 OR 8) AND test_type:stream", - "refId": "A", - "timeField": "uperf_ts" - } - ], - "title": "Uperf artifacts", - "type": "table" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "align": "auto", - "displayMode": "auto" - }, - "decimals": 1, - "links": [ - { - "targetBlank": true, - "title": "link", - "url": "${__data.fields[\"run_artifacts_url.keyword\"]}" - } - ], - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "semi-dark-red", - "value": null - }, - { - "color": "light-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [ - { - "matcher": { - "id": "byName", - "options": "ci_date.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 227 - }, - { - "id": "displayName", - "value": "Date" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "kind.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 100 - }, - { - "id": "displayName", - "value": "Kind" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "run_artifacts_url.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 1000 - }, - { - "id": "displayName", - "value": "Artifacts Link" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Average" - }, - "properties": [ - { - "id": "displayName", - "value": "Average Rate" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Run.keyword" - }, - "properties": [ - { - "id": "displayName", - "value": "Run" - }, - { - "id": "custom.width", - "value": 140 - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Threads" - }, - "properties": [ - { - "id": "displayName", - "value": "Thread" - }, - { - "id": "custom.width", - "value": 100 - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Artifacts Link" - }, - "properties": [ - { - "id": "custom.width", - "value": 1521 - } - ] - } - ] - }, - "gridPos": { - "h": 10, - "w": 24, - "x": 0, - "y": 65 - }, - "id": 133, - "interval": "1d", - "options": { - "footer": { - "fields": "", - "reducer": [ - "sum" - ], - "show": false - }, - "showHeader": true, - "sortBy": [] - }, - "pluginVersion": "8.4.0-pre", - "targets": [ - { - "alias": "", - "bucketAggs": [ - { - "field": "ci_date.keyword", - "id": "4", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "5" - }, - "type": "terms" - }, - { - "field": "kind.keyword", - "id": "7", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "run_artifacts_url.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "hide": false, - "metrics": [ - { - "field": "Rate", - "id": "1", - "type": "avg" - } - ], - "query": "!SCALE AND !Run.keyword='fillup'", - "refId": "A", - "timeField": "timestamp" - } - ], - "title": "vdbench artifacts", - "transformations": [ - { - "id": "organize", - "options": { - "excludeByName": { - "Average": true - }, - "indexByName": {}, - "renameByName": {} - } - } - ], - "type": "table" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "align": "auto", - "displayMode": "auto" - }, - "decimals": 1, - "links": [ - { - "targetBlank": true, - "title": "link", - "url": "${__data.fields[\"run_artifacts_url.keyword\"]}" - } - ], - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "semi-dark-red", - "value": null - }, - { - "color": "light-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [ - { - "matcher": { - "id": "byName", - "options": "ci_date.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 227 - }, - { - "id": "displayName", - "value": "Date" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "kind.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 100 - }, - { - "id": "displayName", - "value": "Kind" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "run_artifacts_url.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 1000 - }, - { - "id": "displayName", - "value": "Artifacts Link" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Average" - }, - "properties": [ - { - "id": "displayName", - "value": "Average Rate" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Run.keyword" - }, - "properties": [ - { - "id": "displayName", - "value": "Run" - }, - { - "id": "custom.width", - "value": 140 - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Threads" - }, - "properties": [ - { - "id": "displayName", - "value": "Thread" - }, - { - "id": "custom.width", - "value": 100 - } - ] - } - ] - }, - "gridPos": { - "h": 10, - "w": 24, - "x": 0, - "y": 75 - }, - "id": 195, - "interval": "1d", - "options": { - "footer": { - "fields": "", - "reducer": [ - "sum" - ], - "show": false - }, - "showHeader": true, - "sortBy": [ - { - "desc": true, - "displayName": "ci_date.keyword" - } - ] - }, - "pluginVersion": "8.4.0-pre", - "targets": [ - { - "alias": "", - "bucketAggs": [ - { - "field": "ci_date.keyword", - "id": "4", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "5" - }, - "type": "terms" - }, - { - "field": "Run.keyword", - "id": "5", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "Threads", - "id": "6", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "kind.keyword", - "id": "7", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "scale", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "run_artifacts_url.keyword", - "id": "9", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "hide": false, - "metrics": [ - { - "field": "Rate", - "id": "1", - "type": "avg" - } - ], - "query": "!Run.keyword='fillup'", - "refId": "A", - "timeField": "timestamp" - } - ], - "title": "vdbench scale artifacts", - "transformations": [], - "type": "table" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "Q_P_eBb4z" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "align": "auto", - "displayMode": "auto" - }, - "links": [ - { - "targetBlank": true, - "title": "link", - "url": "${__data.fields[\"run_artifacts_url.keyword\"]}" - } - ], - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 - } - ] - } - }, - "overrides": [ - { - "matcher": { - "id": "byName", - "options": "run_artifacts_url" - }, - "properties": [ - { - "id": "custom.width", - "value": 1600 - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Date" - }, - "properties": [ - { - "id": "custom.width", - "value": 227 - } - ] - } - ] - }, - "gridPos": { - "h": 6, - "w": 24, - "x": 0, - "y": 85 - }, - "id": 150, - "options": { - "footer": { - "fields": "", - "reducer": [ - "sum" - ], - "show": false - }, - "showHeader": true - }, - "pluginVersion": "8.4.0-pre", - "targets": [ - { - "alias": "", - "bucketAggs": [ - { - "field": "timestamp", - "id": "2", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "run_artifacts_url.keyword", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "Q_P_eBb4z" - }, - "metrics": [ - { - "field": "job_runtime", - "hide": false, - "id": "1", - "type": "avg" - } - ], - "query": "", - "refId": "A", - "timeField": "timestamp" - } - ], - "title": "clusterbuster artifacts", - "transformations": [ - { - "id": "organize", - "options": { - "excludeByName": { - "Average": true, - "_id": true, - "_index": true, - "_type": true, - "highlight": true, - "job_end": true, - "job_runtime": true, - "job_start": true, - "kata_version": true, - "openshift_version": true, - "result": true, - "run_host": true, - "sort": true, - "uuid": true - }, - "indexByName": { - "_id": 6, - "_index": 7, - "_type": 8, - "highlight": 9, - "job_end": 12, - "job_runtime": 10, - "job_start": 11, - "kata_version": 4, - "openshift_version": 3, - "result": 2, - "run_artifacts_url": 1, - "run_host": 5, - "sort": 13, - "timestamp": 0, - "uuid": 14 - }, - "renameByName": { - "Average": "Run time", - "run_artifacts_url": "Artifacts Link", - "run_artifacts_url.keyword": "Artifacts Link", - "timestamp": "Date" - } - } - } - ], - "type": "table" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "MOdSfikVk" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "align": "auto", - "displayMode": "auto" - }, - "links": [ - { - "targetBlank": true, - "title": "link", - "url": "${__data.fields[\"run_artifacts_url.keyword\"]}" - } - ], - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 - } - ] - } - }, - "overrides": [ - { - "matcher": { - "id": "byName", - "options": "run_artifacts_url" - }, - "properties": [ - { - "id": "custom.width", - "value": 1600 - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Date" - }, - "properties": [ - { - "id": "custom.width", - "value": 227 - } - ] - } - ] - }, - "gridPos": { - "h": 6, - "w": 24, - "x": 0, - "y": 91 - }, - "id": 166, - "options": { - "footer": { - "fields": "", - "reducer": [ - "sum" - ], - "show": false - }, - "showHeader": true - }, - "pluginVersion": "8.4.0-pre", - "targets": [ - { - "alias": "", - "bucketAggs": [ - { - "field": "timestamp", - "id": "2", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "run_artifacts_url.keyword", - "id": "3", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "MOdSfikVk" - }, - "metrics": [ - { - "field": "job_runtime", - "hide": false, - "id": "1", - "type": "avg" - } - ], - "query": "", - "refId": "A", - "timeField": "timestamp" - } - ], - "title": "clusterbuster release artifacts", - "transformations": [ - { - "id": "organize", - "options": { - "excludeByName": { - "Average": true, - "_id": true, - "_index": true, - "_type": true, - "highlight": true, - "job_end": true, - "job_runtime": true, - "job_start": true, - "kata_version": true, - "openshift_version": true, - "result": true, - "run_host": true, - "sort": true, - "uuid": true - }, - "indexByName": { - "_id": 6, - "_index": 7, - "_type": 8, - "highlight": 9, - "job_end": 12, - "job_runtime": 10, - "job_start": 11, - "kata_version": 4, - "openshift_version": 3, - "result": 2, - "run_artifacts_url": 1, - "run_host": 5, - "sort": 13, - "timestamp": 0, - "uuid": 14 - }, - "renameByName": { - "Average": "Run time", - "run_artifacts_url": "Artifacts Link", - "run_artifacts_url.keyword": "Artifacts Link", - "timestamp": "Date" - } - } - } - ], - "type": "table" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "align": "auto", - "displayMode": "auto" - }, - "links": [ - { - "targetBlank": true, - "title": "link", - "url": "${__data.fields[\"run_artifacts_url.keyword\"]}" - } - ], - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "semi-dark-red", - "value": null - }, - { - "color": "light-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [ - { - "matcher": { - "id": "byName", - "options": "ci_date.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 227 - }, - { - "id": "displayName", - "value": "Date" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "kind.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 100 - }, - { - "id": "displayName", - "value": "Kind" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "run_artifacts_url.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 1000 - }, - { - "id": "displayName", - "value": "Artifacts Link" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Average" - }, - "properties": [ - { - "id": "displayName", - "value": "Average Rate" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Run.keyword" - }, - "properties": [ - { - "id": "displayName", - "value": "Run" - }, - { - "id": "custom.width", - "value": 140 - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Threads" - }, - "properties": [ - { - "id": "displayName", - "value": "Thread" - }, - { - "id": "custom.width", - "value": 100 - } - ] - } - ] - }, - "gridPos": { - "h": 5, - "w": 24, - "x": 0, - "y": 97 - }, - "id": 190, - "interval": "1d", - "options": { - "footer": { - "fields": "", - "reducer": [ - "sum" - ], - "show": false - }, - "showHeader": true, - "sortBy": [ - { - "desc": true, - "displayName": "ci_date.keyword" - } - ] - }, - "pluginVersion": "8.4.0-pre", - "targets": [ - { - "alias": "", - "bucketAggs": [ - { - "field": "ci_date.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "kind.keyword", - "id": "9", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "scale", - "id": "10", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "run_artifacts_url.keyword", - "id": "11", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "NjON9tc4z" - }, - "hide": false, - "metrics": [ - { - "field": "Rate", - "id": "1", - "type": "avg" - } - ], - "query": "scale:300", - "refId": "A", - "timeField": "timestamp" - } - ], - "title": "bootstorm artifacts", - "transformations": [ - { - "id": "organize", - "options": { - "excludeByName": { - "Average": true - }, - "indexByName": {}, - "renameByName": {} - } - } - ], - "type": "table" - }, - { - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "fieldConfig": { - "defaults": { - "color": { - "mode": "thresholds" - }, - "custom": { - "align": "auto", - "displayMode": "auto" - }, - "links": [ - { - "targetBlank": true, - "title": "link", - "url": "${__data.fields[\"run_artifacts_url.keyword\"]}" - } - ], - "mappings": [], - "min": 0, - "thresholds": { - "mode": "percentage", - "steps": [ - { - "color": "semi-dark-red", - "value": null - }, - { - "color": "light-orange", - "value": 50 - }, - { - "color": "super-light-green", - "value": 80 - }, - { - "color": "dark-green", - "value": 90 - }, - { - "color": "dark-blue", - "value": 100 - } - ] - } - }, - "overrides": [ - { - "matcher": { - "id": "byName", - "options": "ci_date.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 227 - }, - { - "id": "displayName", - "value": "Date" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "kind.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 100 - }, - { - "id": "displayName", - "value": "Kind" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "run_artifacts_url.keyword" - }, - "properties": [ - { - "id": "custom.width", - "value": 1000 - }, - { - "id": "displayName", - "value": "Artifacts Link" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Average" - }, - "properties": [ - { - "id": "displayName", - "value": "Average Rate" - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Run.keyword" - }, - "properties": [ - { - "id": "displayName", - "value": "Run" - }, - { - "id": "custom.width", - "value": 140 - } - ] - }, - { - "matcher": { - "id": "byName", - "options": "Threads" - }, - "properties": [ - { - "id": "displayName", - "value": "Thread" - }, - { - "id": "custom.width", - "value": 100 - } - ] - } - ] - }, - "gridPos": { - "h": 5, - "w": 24, - "x": 0, - "y": 102 - }, - "id": 194, - "interval": "1d", - "options": { - "footer": { - "fields": "", - "reducer": [ - "sum" - ], - "show": false - }, - "showHeader": true, - "sortBy": [ - { - "desc": true, - "displayName": "ci_date.keyword" - } - ] - }, - "pluginVersion": "8.4.0-pre", - "targets": [ - { - "alias": "", - "bucketAggs": [ - { - "field": "ci_date.keyword", - "id": "8", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "kind.keyword", - "id": "9", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "scale", - "id": "10", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - }, - { - "field": "run_artifacts_url.keyword", - "id": "11", - "settings": { - "min_doc_count": "1", - "order": "desc", - "orderBy": "_term", - "size": "10" - }, - "type": "terms" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "racoSgf4z" - }, - "hide": false, - "metrics": [ - { - "field": "Rate", - "id": "1", - "type": "avg" - } - ], - "query": "scale:120", - "refId": "A", - "timeField": "timestamp" - } - ], - "title": "Windows artifacts", - "transformations": [ - { - "id": "organize", - "options": { - "excludeByName": { - "Average": true - }, - "indexByName": {}, - "renameByName": {} - } - } - ], - "type": "table" - }, - { - "description": "", - "gridPos": { - "h": 4, - "w": 5, - "x": 19, - "y": 107 - }, - "id": 189, - "links": [ - { - "targetBlank": true, - "title": "PerfCI", - "url": "https://github.com/redhat-performance/benchmark-runner/actions" - } - ], - "options": { - "content": "![Cloud Governance](https://github.com/redhat-performance/benchmark-runner/blob/main/media/benchmark_runner.png?raw=true \"Tooltip Text\")\n", - "mode": "markdown" - }, - "pluginVersion": "8.4.0-pre", - "targets": [ - { - "alias": "", - "bucketAggs": [ - { - "field": "timestamp", - "id": "2", - "settings": { - "interval": "auto" - }, - "type": "date_histogram" - } - ], - "datasource": { - "type": "elasticsearch", - "uid": "mg2W2WD7z" - }, - "metrics": [ - { - "id": "1", - "type": "count" - } - ], - "query": "", - "refId": "A", - "timeField": "timestamp" - } - ], - "transparent": true, - "type": "text" - } - ], - "refresh": "", - "schemaVersion": 34, - "style": "dark", - "tags": [], - "templating": { - "list": [ - { - "allValue": "", - "current": { - "selected": true, - "text": [ - "All" - ], - "value": [ - "$__all" - ] - }, - "definition": "{\"find\":\"terms\",\"field\":\"ocp_version.keyword\"}", - "hide": 0, - "includeAll": true, - "multi": true, - "name": "ocp_version", - "options": [], - "query": "{\"find\":\"terms\",\"field\":\"ocp_version.keyword\"}", - "refresh": 2, - "regex": "", - "skipUrlSync": false, - "sort": 6, - "type": "query" - }, - { - "current": { - "selected": true, - "text": [ - "All" - ], - "value": [ - "$__all" - ] - }, - "datasource": { - "type": "elasticsearch", - "uid": "xQGAtZvnk" - }, - "definition": "{\"find\":\"terms\",\"field\":\"db_type.keyword\"}", - "hide": 0, - "includeAll": true, - "multi": true, - "name": "db_type", - "options": [], - "query": "{\"find\":\"terms\",\"field\":\"db_type.keyword\"}", - "refresh": 2, - "regex": "", - "skipUrlSync": false, - "sort": 0, - "type": "query" - }, - { - "current": { - "selected": true, - "text": [ - "All" - ], - "value": [ - "$__all" - ] - }, - "datasource": { - "type": "elasticsearch", - "uid": "xQGAtZvnk" - }, - "definition": "{\"find\":\"terms\",\"field\":\"current_worker\"}", - "hide": 0, - "includeAll": true, - "multi": true, - "name": "current_worker", - "options": [], - "query": "{\"find\":\"terms\",\"field\":\"current_worker\"}", - "refresh": 2, - "regex": "", - "skipUrlSync": false, - "sort": 0, - "type": "query" - }, - { - "current": { - "selected": true, - "text": [ - "All" - ], - "value": [ - "$__all" - ] - }, - "datasource": { - "type": "elasticsearch", - "uid": "xQGAtZvnk" - }, - "definition": "{\"find\":\"terms\",\"field\":\"kind.keyword\"}", - "hide": 0, - "includeAll": true, - "multi": true, - "name": "kind", - "options": [], - "query": "{\"find\":\"terms\",\"field\":\"kind.keyword\"}", - "refresh": 2, - "regex": "", - "skipUrlSync": false, - "sort": 0, - "type": "query" - }, - { - "allValue": "", - "current": { - "selected": true, - "text": [ - "All" - ], - "value": [ - "$__all" - ] - }, - "datasource": { - "type": "elasticsearch", - "uid": "bwnEiMx7k" - }, - "definition": "{\"find\":\"terms\",\"field\":\"Run.keyword\"}", - "hide": 0, - "includeAll": true, - "multi": true, - "name": "vdbench_type", - "options": [], - "query": "{\"find\":\"terms\",\"field\":\"Run.keyword\"}", - "refresh": 2, - "regex": "", - "skipUrlSync": false, - "sort": 6, - "type": "query" - } - ] - }, - "time": { - "from": "now-45d", - "to": "now" - }, - "timepicker": {}, - "timezone": "", - "title": "PerfCI-Regression-Summary", - "uid": "T4775LKnzzmichey", - "version": 416, - "weekStart": "" -} \ No newline at end of file diff --git a/tests/integration/benchmark_runner/common/grafana/__init__.py b/tests/integration/benchmark_runner/common/grafana/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/tests/integration/benchmark_runner/common/grafana/test_grafana_operations.py b/tests/integration/benchmark_runner/common/grafana/test_grafana_operations.py new file mode 100644 index 000000000..de89eec87 --- /dev/null +++ b/tests/integration/benchmark_runner/common/grafana/test_grafana_operations.py @@ -0,0 +1,18 @@ + +from benchmark_runner.common.grafana.grafana_operations import GrafanaOperations +from tests.integration.benchmark_runner.test_environment_variables import * + + +def test_fetch_all_dashboards(): + """ + This method fetched all grafana dashboards + @return: + """ + if test_environment_variable.get('grafana_url'): + grafana_operations = GrafanaOperations(grafana_url=test_environment_variable.get('grafana_url', ''), + grafana_api_key=test_environment_variable.get('grafana_api_key', ''), + grafana_json=test_environment_variable.get('grafana_json', '')) + all_dashboards = grafana_operations.fetch_all_dashboards() + assert all_dashboards + else: + raise Exception('incorrect grafana url') diff --git a/tests/integration/benchmark_runner/test_environment_variables.py b/tests/integration/benchmark_runner/test_environment_variables.py index 181839ade..d997c81b1 100644 --- a/tests/integration/benchmark_runner/test_environment_variables.py +++ b/tests/integration/benchmark_runner/test_environment_variables.py @@ -23,6 +23,11 @@ def __get_test_environment_variable(): test_environment_variable['elasticsearch_password'] = EnvironmentVariables.get_env('ELASTICSEARCH_PASSWORD', '') test_environment_variable['timeout'] = int(EnvironmentVariables.get_env('TIMEOUT', '2000')) + # Grafana + test_environment_variable['grafana_url'] = EnvironmentVariables.get_env('GRAFANA_URL', '') + test_environment_variable['grafana_api_key'] = EnvironmentVariables.get_env('GRAFANA_API_KEY', '') + test_environment_variable['grafana_json'] = EnvironmentVariables.get_env('GRAFANA_JSON', '') + # end dynamic parameters - configure for local run ##################################################################################################