From c3e9d0fc0076f0a2930f13366255b0e8e65fb814 Mon Sep 17 00:00:00 2001 From: fmenguy Date: Mon, 5 Oct 2020 18:13:05 +0200 Subject: [PATCH] Add Kibana visualizations examples for NDR result Change-Id: I652dc2c3d69ae5f6bff5019b0868d1becaceec63 Signed-off-by: fmenguy --- docs/testing/user/userguide/conf.py | 2 +- docs/testing/user/userguide/fluentd.rst | 1 + .../images/nfvbench-kibana-filter-kql.png | Bin 0 -> 27039 bytes .../userguide/images/nfvbench-kibana-filter.png | Bin 0 -> 22998 bytes .../userguide/images/nfvbench-kibana-gbps-line.png | Bin 0 -> 61856 bytes .../images/nfvbench-kibana-pps-scatter.png | Bin 0 -> 56762 bytes .../images/nfvbench-kibana-pps-theoretical.png | Bin 0 -> 60589 bytes .../images/nfvbench-kibana-zoom-selection.png | Bin 0 -> 54663 bytes .../user/userguide/images/nfvbench-kibana.png | Bin 0 -> 23015 bytes docs/testing/user/userguide/index.rst | 1 + docs/testing/user/userguide/kibana.rst | 93 +++++++++++++++ kibana/visualizations/export.ndjson | 25 ++++ .../ndr_capacity_gbps_line_chart.json | 95 +++++++++++++++ .../ndr_capacity_gbps_scatter_plot.json | 108 +++++++++++++++++ .../ndr_capacity_gbps_theoretical_line_chart.json | 114 ++++++++++++++++++ ...ndr_capacity_gbps_theoretical_scatter_plot.json | 128 +++++++++++++++++++++ .../ndr_capacity_pps_line_chart.json | 98 ++++++++++++++++ .../ndr_capacity_pps_scatter_plot.json | 108 +++++++++++++++++ .../ndr_capacity_pps_theoretical_line_chart.json | 115 ++++++++++++++++++ .../ndr_capacity_pps_theoretical_scatter_plot.json | 128 +++++++++++++++++++++ 20 files changed, 1015 insertions(+), 1 deletion(-) create mode 100644 docs/testing/user/userguide/images/nfvbench-kibana-filter-kql.png create mode 100644 docs/testing/user/userguide/images/nfvbench-kibana-filter.png create mode 100644 docs/testing/user/userguide/images/nfvbench-kibana-gbps-line.png create mode 100644 docs/testing/user/userguide/images/nfvbench-kibana-pps-scatter.png create mode 100644 docs/testing/user/userguide/images/nfvbench-kibana-pps-theoretical.png create mode 100644 docs/testing/user/userguide/images/nfvbench-kibana-zoom-selection.png create mode 100644 docs/testing/user/userguide/images/nfvbench-kibana.png create mode 100644 docs/testing/user/userguide/kibana.rst create mode 100644 kibana/visualizations/export.ndjson create mode 100644 kibana/visualizations/ndr_capacity_gbps_line_chart.json create mode 100644 kibana/visualizations/ndr_capacity_gbps_scatter_plot.json create mode 100644 kibana/visualizations/ndr_capacity_gbps_theoretical_line_chart.json create mode 100644 kibana/visualizations/ndr_capacity_gbps_theoretical_scatter_plot.json create mode 100644 kibana/visualizations/ndr_capacity_pps_line_chart.json create mode 100644 kibana/visualizations/ndr_capacity_pps_scatter_plot.json create mode 100644 kibana/visualizations/ndr_capacity_pps_theoretical_line_chart.json create mode 100644 kibana/visualizations/ndr_capacity_pps_theoretical_scatter_plot.json diff --git a/docs/testing/user/userguide/conf.py b/docs/testing/user/userguide/conf.py index 5846b00..bee045b 100644 --- a/docs/testing/user/userguide/conf.py +++ b/docs/testing/user/userguide/conf.py @@ -49,7 +49,7 @@ sys.path.insert(0, os.path.abspath('../..')) # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. -extensions = [] +extensions = ['sphinx.ext.autosectionlabel'] # Add any paths that contain templates here, relative to this directory. templates_path = ['_templates'] diff --git a/docs/testing/user/userguide/fluentd.rst b/docs/testing/user/userguide/fluentd.rst index e1ff37f..7332458 100644 --- a/docs/testing/user/userguide/fluentd.rst +++ b/docs/testing/user/userguide/fluentd.rst @@ -192,3 +192,4 @@ And the results of this command obtained from fluentd by elasticsearch: 1508264203755 ] } + diff --git a/docs/testing/user/userguide/images/nfvbench-kibana-filter-kql.png b/docs/testing/user/userguide/images/nfvbench-kibana-filter-kql.png new file mode 100644 index 0000000000000000000000000000000000000000..f5c7b2de3e7956a2ba5d135358f0b306d876ccba GIT binary patch literal 27039 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 literal 0 HcmV?d00001 diff --git a/docs/testing/user/userguide/images/nfvbench-kibana-gbps-line.png b/docs/testing/user/userguide/images/nfvbench-kibana-gbps-line.png new file mode 100644 index 0000000000000000000000000000000000000000..1947412924d01c5d8af711af4de602b2651751a6 GIT binary patch literal 61856 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 W{}1?}acdg~h?F6R_O|Yc&HV?zt-V$N literal 0 HcmV?d00001 diff --git a/docs/testing/user/userguide/images/nfvbench-kibana-pps-scatter.png b/docs/testing/user/userguide/images/nfvbench-kibana-pps-scatter.png new file mode 100644 index 0000000000000000000000000000000000000000..89a8e47af1944c278a136e82a9b3e63b88f91eb2 GIT binary patch literal 56762 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

Zb1U0R>pFo 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 literal 0 HcmV?d00001 diff --git a/docs/testing/user/userguide/images/nfvbench-kibana-pps-theoretical.png b/docs/testing/user/userguide/images/nfvbench-kibana-pps-theoretical.png new file mode 100644 index 0000000000000000000000000000000000000000..da7dc7ad0e0e574c0891bb26a3bbe7e77d16b24b GIT binary patch literal 60589 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≪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%0AnAG)d5!9 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 QNPtUE+eoWH!y)=V03g>0$p8QV literal 0 HcmV?d00001 diff --git a/docs/testing/user/userguide/index.rst b/docs/testing/user/userguide/index.rst index 78519c8..04d2581 100644 --- a/docs/testing/user/userguide/index.rst +++ b/docs/testing/user/userguide/index.rst @@ -29,6 +29,7 @@ Table of Content mpls extchains fluentd + kibana sriov server faq diff --git a/docs/testing/user/userguide/kibana.rst b/docs/testing/user/userguide/kibana.rst new file mode 100644 index 0000000..68c3d38 --- /dev/null +++ b/docs/testing/user/userguide/kibana.rst @@ -0,0 +1,93 @@ +NFVbench Kibana visualization: overview +======================================= + +The fluentd integration offers the possibility to use elasticsearch and kibana as a visualization chain. + +Chain overview: + +.. image:: images/nfvbench-kibana.png + +Example of NFVbench visualizations +---------------------------------- + +Kibana offers a lot of visualization type (line and bar charts, pie, time series chart, data table ...) and also provide a plugin to develop graph using Vega. +In the below examples, visualizations are based on an NDR result and are developed using `Vega-lite `_. +Data are aggregated using ``user_label`` and ``flow_count`` properties. + +In ``kibana/visualizations/`` pre-created graphs are available into json files. + +For NDR capacity in Gbps using line chart, the offered load in Gbps (``offered_tx_rate_bps``) is used and only the maximum value of the aggregation is kept. +For NDR capacity in Mpps using line chart, the actual TX rate is used (``rate_pps``) and only the maximum value of the aggregation is kept. + +Scatter plot graphs use the same values but keep all values instead of keeping maximum. + +Example of a line chart: + +.. image:: images/nfvbench-kibana-gbps-line.png + +Example of a scatter plot chart: + +.. image:: images/nfvbench-kibana-pps-scatter.png + +Vega offers the possibility to add another graph as a new layer of current graph. +This solution is used to combine NFVbench results and theoretical line rate. +Using ``extra_encapsulation_bytes`` in --user-info property (see `User info data section `_), +the theoretical max value (for bps and pps) will be calculated and can be used in graph through ``theoretical_tx_rate_bps`` and ``theoretical_tx_rate_pps`` properties. + +Example of chart with theoretical value (red line): + +.. image:: images/nfvbench-kibana-pps-theoretical.png + +Each Vega graph can be moved, zoomed (using mouse scroll) and one set of data can be selected. + +Example: + +.. image:: images/nfvbench-kibana-zoom-selection.png + +These visualizations are included into Kibana dashboard for a synthesis of one set of result (i.e. same ``user_label`` value) or for comparison (i.e. a selection of ``user_label`` values). +See :ref:`filterkibana` for more details about ``user_label`` selection. + +All these visualizations and dashboards are saved into the ``export.ndjson`` file and can be imported in an existing Kibana. See :ref:`importkibana`. + +.. _importkibana: + +Import Kibana dashboards and visualization +------------------------------------------ + +To import Kibana dashboard and visualization: + +.. code-block:: bash + + curl -X POST localhost:5601/api/saved_objects/_import -H "kbn-xsrf: true" --form file=@export.ndjson + +.. note:: ``.kibana`` index must exists in elasticsearch. +.. note:: ``.kibana`` index is created automatically after a first deployment and configuration of Kibana. + +.. _filterkibana: + +Kibana user guide: Filter dashboards and visualizations +======================================================= + +Filter Kibana dashboard or visualization using Kibana query language (KQL) +-------------------------------------------------------------------------- + +.. code-block:: bash + + user_label:*demo* and (flow_count: 128 or flow_count:130000 or flow_count:1000000) + +.. note:: This query will filter all user label which contains ``demo`` in the value and filter 3 flow count (128, 130k, 1M). +.. note:: ``flow_count`` is a number so KQL query can not contain formatted string. + +Example: + +.. image:: images/nfvbench-kibana-filter-kql.png + + +Filter Kibana dashboard or visualization using Kibana filters +------------------------------------------------------------- + +Kibana offers the possibility to add filter by selecting field and operator (is, is not, is one of, is not one of, exists, does not exist). + +Example: + +.. image:: images/nfvbench-kibana-filter.png \ No newline at end of file diff --git a/kibana/visualizations/export.ndjson b/kibana/visualizations/export.ndjson new file mode 100644 index 0000000..de72cb4 --- /dev/null +++ b/kibana/visualizations/export.ndjson @@ -0,0 +1,25 @@ +{"attributes":{"fieldFormatMap":"{\"frame_size_int\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0\"}},\"rate_pps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[000]a\"}},\"rate_bps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[0] bd\"}},\"forward_orig_rate_bps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[0] bd\"}},\"forward_rx_rate_bps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[0] bd\"}},\"forward_tx_rate_bps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[0] bd\"}},\"reverse_orig_rate_bps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[0] bd\"}},\"reverse_rx_rate_bps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[0] bd\"}},\"reverse_tx_rate_bps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[0] bd\"}},\"total_orig_rate_bps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[0] bd\"}},\"total_rx_rate_bps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[0] bd\"}},\"total_tx_rate_bps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[0] bd\"}},\"forward_orig_rate_pps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[000]a\"}},\"forward_rx_rate_pps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[000]a\"}},\"forward_tx_rate_pps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[000]a\"}},\"reverse_orig_rate_pps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[000]a\"}},\"reverse_rx_rate_pps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[000]a\"}},\"reverse_tx_rate_pps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[000]a\"}},\"total_orig_rate_pps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[000]a\"}},\"total_rx_rate_pps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[000]a\"}},\"total_tx_rate_pps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[000]a\"}},\"theoretical_tx_rate_bps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[0] bd\"}},\"theoretical_tx_rate_pps\":{\"id\":\"number\",\"params\":{\"parsedUrl\":{\"origin\":\"http://172.20.73.203:5651\",\"pathname\":\"/app/kibana\",\"basePath\":\"\"},\"pattern\":\"0,0.[000]a\"}}}","fields":"[{\"name\":\"@timestamp\",\"type\":\"date\",\"esTypes\":[\"date\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"Encapsulation\",\"type\":\"string\",\"esTypes\":[\"text\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"Encapsulation.keyword\",\"type\":\"string\",\"esTypes\":[\"keyword\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true,\"subType\":{\"multi\":{\"parent\":\"Encapsulation\"}}},{\"name\":\"_id\",\"type\":\"string\",\"esTypes\":[\"_id\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"_index\",\"type\":\"string\",\"esTypes\":[\"_index\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"_score\",\"type\":\"number\",\"count\":0,\"scripted\":false,\"searchable\":false,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"_source\",\"type\":\"_source\",\"esTypes\":[\"_source\"],\"count\":0,\"scripted\":false,\"searchable\":false,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"_type\",\"type\":\"string\",\"esTypes\":[\"_type\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false},{\"name\":\"avg_delay_usec\",\"type\":\"number\",\"esTypes\":[\"float\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"bidirectional\",\"type\":\"boolean\",\"esTypes\":[\"boolean\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"drop_limit\",\"type\":\"number\",\"esTypes\":[\"float\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"drop_percentage\",\"type\":\"number\",\"esTypes\":[\"float\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"drop_rate_percent\",\"type\":\"number\",\"esTypes\":[\"float\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"flow_count\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"forward_orig_rate_bps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"forward_orig_rate_pps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"forward_rx_rate_bps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"forward_rx_rate_pps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"forward_tx_rate_bps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"forward_tx_rate_pps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"frame_size\",\"type\":\"string\",\"esTypes\":[\"text\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"frame_size.keyword\",\"type\":\"string\",\"esTypes\":[\"keyword\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true,\"subType\":{\"multi\":{\"parent\":\"frame_size\"}}},{\"name\":\"lat_percentile_25\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"lat_percentile_75\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"lat_percentile_99\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"max_delay_usec\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"min_delay_usec\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"ndr_search_duration\",\"type\":\"string\",\"esTypes\":[\"text\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"ndr_search_duration.keyword\",\"type\":\"string\",\"esTypes\":[\"keyword\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true,\"subType\":{\"multi\":{\"parent\":\"ndr_search_duration\"}}},{\"name\":\"offered_tx_rate_bps\",\"type\":\"number\",\"esTypes\":[\"float\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"profile\",\"type\":\"string\",\"esTypes\":[\"text\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"profile.keyword\",\"type\":\"string\",\"esTypes\":[\"keyword\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true,\"subType\":{\"multi\":{\"parent\":\"profile\"}}},{\"name\":\"rate_bps\",\"type\":\"number\",\"esTypes\":[\"float\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"rate_pps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"reverse_orig_rate_bps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"reverse_orig_rate_pps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"reverse_rx_rate_bps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"reverse_rx_rate_pps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"reverse_tx_rate_bps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"reverse_tx_rate_pps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"runlogdate\",\"type\":\"date\",\"esTypes\":[\"date\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"sc_count\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"service_chain\",\"type\":\"string\",\"esTypes\":[\"text\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"service_chain.keyword\",\"type\":\"string\",\"esTypes\":[\"keyword\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true,\"subType\":{\"multi\":{\"parent\":\"service_chain\"}}},{\"name\":\"theoretical_tx_rate_bps\",\"type\":\"number\",\"esTypes\":[\"float\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"theoretical_tx_rate_pps\",\"type\":\"number\",\"esTypes\":[\"float\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"total_orig_rate_bps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"total_orig_rate_pps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"total_rx_rate_bps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"total_rx_rate_pps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"total_tx_rate_bps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"total_tx_rate_pps\",\"type\":\"number\",\"esTypes\":[\"long\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true},{\"name\":\"type\",\"type\":\"string\",\"esTypes\":[\"text\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"type.keyword\",\"type\":\"string\",\"esTypes\":[\"keyword\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true,\"subType\":{\"multi\":{\"parent\":\"type\"}}},{\"name\":\"user_label\",\"type\":\"string\",\"esTypes\":[\"text\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"user_label.keyword\",\"type\":\"string\",\"esTypes\":[\"keyword\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true,\"subType\":{\"multi\":{\"parent\":\"user_label\"}}},{\"name\":\"vSwitch\",\"type\":\"string\",\"esTypes\":[\"text\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"vSwitch.keyword\",\"type\":\"string\",\"esTypes\":[\"keyword\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true,\"subType\":{\"multi\":{\"parent\":\"vSwitch\"}}},{\"name\":\"version\",\"type\":\"string\",\"esTypes\":[\"text\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":false,\"readFromDocValues\":false},{\"name\":\"version.keyword\",\"type\":\"string\",\"esTypes\":[\"keyword\"],\"count\":0,\"scripted\":false,\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":true,\"subType\":{\"multi\":{\"parent\":\"version\"}}},{\"name\":\"frame_size_int\",\"type\":\"number\",\"count\":0,\"scripted\":true,\"script\":\"if (doc['frame_size.keyword'] != null) {\\n if (doc['frame_size.keyword'].value != \\\"IMIX\\\") {\\n return Integer.parseInt(doc['frame_size.keyword'].value) \\n }\\n else { \\n return 362 \\n } \\n}\",\"lang\":\"painless\",\"searchable\":true,\"aggregatable\":true,\"readFromDocValues\":false}]","timeFieldName":"@timestamp","title":"resu*"},"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","migrationVersion":{"index-pattern":"7.6.0"},"references":[],"type":"index-pattern","updated_at":"2020-10-06T12:53:31.024Z","version":"WzE2NTYsMTJd"} +{"attributes":{"description":"","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"language\":\"kuery\",\"query\":\"\"},\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.index\",\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"type.keyword\",\"negate\":true,\"params\":{\"query\":\"single_run\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index\"},\"query\":{\"match_phrase\":{\"type.keyword\":\"single_run\"}}}]}"},"title":"Synthesis - one label","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","version":1,"visState":"{\"type\":\"table\",\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"rate_bps\",\"customLabel\":\"Offered bps\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"rate_pps\",\"customLabel\":\"Offered pps\"}},{\"id\":\"3\",\"enabled\":true,\"type\":\"std_dev\",\"schema\":\"metric\",\"params\":{\"field\":\"total_orig_rate_bps\",\"customLabel\":\"std max bps\"}},{\"id\":\"4\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"avg_delay_usec\",\"customLabel\":\"latency avg\"}},{\"id\":\"6\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"split\",\"params\":{\"field\":\"flow_count\",\"orderBy\":\"_key\",\"order\":\"asc\",\"size\":50,\"otherBucket\":false,\"otherBucketLabel\":\"Other\",\"missingBucket\":false,\"missingBucketLabel\":\"Missing\",\"customLabel\":\"flow count\"}},{\"id\":\"8\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"frame_size_int\",\"orderBy\":\"_key\",\"order\":\"asc\",\"size\":50,\"otherBucket\":false,\"otherBucketLabel\":\"Other\",\"missingBucket\":false,\"missingBucketLabel\":\"Missing\",\"customLabel\":\"frame size (bytes)\"}}],\"params\":{\"perPage\":10,\"percentageCol\":\"\",\"row\":false,\"showMetricsAtAllLevels\":false,\"showPartialRows\":false,\"showTotal\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"totalFunc\":\"sum\"},\"title\":\"Synthesis - one label\"}"},"id":"0d2c4070-e6e3-11ea-a933-05dd8fc4d76f","migrationVersion":{"visualization":"7.8.0"},"references":[{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index","type":"index-pattern"}],"type":"visualization","updated_at":"2020-09-03T13:55:18.628Z","version":"WzExMTcsNV0="} +{"attributes":{"description":"NDR / PDR line chart - in Mpps","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"query\":\"\",\"language\":\"kuery\"},\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"type.keyword\",\"negate\":true,\"params\":{\"query\":\"single_run\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index\"},\"query\":{\"match_phrase\":{\"type.keyword\":\"single_run\"}}},{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"frame_size\",\"negate\":true,\"params\":{\"query\":\"IMIX\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index\"},\"query\":{\"match_phrase\":{\"frame_size\":\"IMIX\"}}}]}"},"title":"[NDR] Capacity in Mpps - Line chart","uiStateJSON":"{}","version":1,"visState":"{\"type\":\"vega\",\"aggs\":[],\"params\":{\"spec\":\"{\\n $schema: https: //vega.github.io/schema/vega-lite/v2.json\\n title: \\\"Capacity in Mpps - 0,001% loss ratio\\\"\\n data: {\\n url: {\\n %context%: true\\n %timefield%: \\\"@timestamp\\\"\\n index: resu*\\n body: {\\n _source: [\\\"@timestamp\\\", \\\"_source\\\", \\\"rate_pps\\\", \\\"flow_count\\\", \\\"frame_size\\\", \\\"user_label\\\", \\\"type\\\"]\\n },\\n size: 10000\\n },\\n format: { property: \\\"hits.hits\\\" }\\n },\\n\\n transform: [\\n { calculate: \\\"datum._source['rate_pps'] / 1000000\\\" as: \\\"offered_load_pps\\\"},\\n { calculate: \\\"datum._source['flow_count']\\\" as: \\\"flow_count\\\"},\\n { calculate: \\\"isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])\\\" as: \\\"frame_size\\\"},\\n { calculate: \\\"datum._source['user_label'] + '-' + datum._source['flow_count']\\\" as: \\\"label\\\"}\\n { aggregate: [{op: \\\"max\\\", field: \\\"offered_load_pps\\\", as: \\\"max_offered_load_pps\\\"}], groupby: [\\\"frame_size\\\", \\\"label\\\",\\\"flow_count\\\"]}\\n \\n ],\\n center: true,\\n hconcat: [\\n {\\n width:10,\\n selection: {\\n legendSel: {\\n type: \\\"multi\\\",\\n encodings: [ \\\"color\\\", \\\"shape\\\" ],\\n toggle: \\\"event.shiftKey\\\"\\n }\\n },\\n encoding: {\\n y: {\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n axis: {\\n title: \\\"\\\",\\n domain: false,\\n ticks: false,\\n offset: 10\\n },\\n },\\n color: {\\n condition: {\\n selection: \\\"legendSel\\\",\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n legend: null\\n },\\n value: \\\"lightgrey\\\"\\n }\\n },\\n mark: {\\n type: \\\"square\\\",\\n size: 120,\\n opacity: 1\\n }\\n },\\n {\\n width:500,\\n height:280,\\n transform: [\\n {filter: { selection: \\\"legendSel\\\"}}\\n \\n ],\\n mark: {\\n type: \\\"line\\\",\\n tooltip: true,\\n point: true\\n },\\n selection: {\\n grid: {\\n type: \\\"interval\\\",\\n resolve: \\\"global\\\",\\n bind: \\\"scales\\\",\\n translate: \\\"[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!\\\",\\n zoom: \\\"wheel![!event.shiftKey]\\\"\\n },\\n pts: {\\n type: \\\"single\\\",\\n fields: [\\\"Label\\\"]\\n }\\n },\\n encoding: {\\n x: { field: \\\"frame_size\\\", type: \\\"quantitative\\\", title: \\\"Frame size (bytes)\\\", axis: {offset: 10} }\\n y: { field: \\\"max_offered_load_pps\\\", type: \\\"quantitative\\\", title: \\\"Offered load (Mpps)\\\" , axis: {offset: 10} }\\n color: {field: \\\"label\\\", \\\"type\\\": \\\"nominal\\\",\\n \\\"legend\\\": null}\\n tooltip: {\\\"field\\\": \\\"max_offered_load_pps\\\", \\\"type\\\": \\\"quantitative\\\"},\\n shape: {field: \\\"flow_count\\\", type: \\\"nominal\\\"}\\n }\\n } \\n ]\\n}\"},\"title\":\"[NDR] Capacity in Mpps - Line chart\"}"},"id":"1b471fa0-e6b0-11ea-bdc0-1fe1db0b9cb6","migrationVersion":{"visualization":"7.8.0"},"references":[{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index","type":"index-pattern"}],"type":"visualization","updated_at":"2020-10-06T12:39:19.799Z","version":"WzE2MDgsMTJd"} +{"attributes":{"description":"NDR / PDR line chart - in Gbps","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"query\":\"\",\"language\":\"kuery\"},\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"type.keyword\",\"negate\":true,\"params\":{\"query\":\"single_run\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index\"},\"query\":{\"match_phrase\":{\"type.keyword\":\"single_run\"}}},{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"frame_size\",\"negate\":true,\"params\":{\"query\":\"IMIX\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index\"},\"query\":{\"match_phrase\":{\"frame_size\":\"IMIX\"}}},{\"$state\":{\"store\":\"appState\"},\"exists\":{\"field\":\"offered_tx_rate_bps\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"offered_tx_rate_bps\",\"negate\":false,\"type\":\"exists\",\"value\":\"exists\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[2].meta.index\"}}]}"},"title":"[NDR] Capacity in Gbps - Line chart","uiStateJSON":"{}","version":1,"visState":"{\"type\":\"vega\",\"aggs\":[],\"params\":{\"spec\":\"{\\n $schema: https: //vega.github.io/schema/vega-lite/v2.json\\n title: \\\"Capacity in Gbps - 0,001% loss ratio\\\"\\n data: {\\n url: {\\n %context%: true\\n %timefield%: \\\"@timestamp\\\"\\n index: resu*\\n body: {\\n _source: [\\\"@timestamp\\\", \\\"_source\\\", \\\"offered_tx_rate_bps\\\", \\\"flow_count\\\", \\\"frame_size\\\", \\\"user_label\\\"]\\n },\\n size: 10000\\n },\\n format: { property: \\\"hits.hits\\\" }\\n },\\n transform: [\\n { calculate: \\\"datum._source['offered_tx_rate_bps'] / 1000000000\\\" as: \\\"offered_load_gbps\\\"},\\n { calculate: \\\"datum._source['flow_count']\\\" as: \\\"flow_count\\\"},\\n { calculate: \\\"isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])\\\" as: \\\"frame_size\\\"},\\n { calculate: \\\"datum._source['user_label'] + '-' + datum._source['flow_count']\\\" as: \\\"label\\\"}\\n { aggregate: [{op: \\\"max\\\", field: \\\"offered_load_gbps\\\", as: \\\"max_offered_load_gbps\\\"}], groupby: [\\\"frame_size\\\", \\\"label\\\",\\\"flow_count\\\"]}\\n ],\\n center: true,\\n hconcat: [\\n {\\n width:10,\\n selection: {\\n legendSel: {\\n type: \\\"multi\\\",\\n encodings: [ \\\"color\\\", \\\"shape\\\" ],\\n toggle: \\\"event.shiftKey\\\"\\n }\\n },\\n encoding: {\\n y: {\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n axis: {\\n title: \\\"\\\",\\n domain: false,\\n ticks: false,\\n offset: 10\\n },\\n },\\n color: {\\n condition: {\\n selection: \\\"legendSel\\\",\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n legend: null\\n },\\n value: \\\"lightgrey\\\"\\n }\\n },\\n mark: {\\n type: \\\"square\\\",\\n size: 120,\\n opacity: 1\\n }\\n },\\n {\\n width:500,\\n height:280,\\n transform: [\\n {filter: { selection: \\\"legendSel\\\"}}\\n ],\\n mark: {\\n type: \\\"line\\\",\\n tooltip: true,\\n point: true\\n },\\n selection: {\\n grid: {\\n type: \\\"interval\\\",\\n resolve: \\\"global\\\",\\n bind: \\\"scales\\\",\\n translate: \\\"[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!\\\",\\n zoom: \\\"wheel![!event.shiftKey]\\\"\\n },\\n pts: {\\n type: \\\"single\\\",\\n fields: [\\\"Label\\\"]\\n }\\n },\\n encoding: {\\n x: { field: \\\"frame_size\\\", type: \\\"quantitative\\\", title: \\\"Frame size (bytes)\\\", axis: {offset: 10} }\\n y: { field: \\\"max_offered_load_gbps\\\", type: \\\"quantitative\\\", title: \\\"Offered load (Gbps)\\\" , axis: {offset: 10} }\\n color: {field: \\\"label\\\", \\\"type\\\": \\\"nominal\\\",\\n \\\"legend\\\": null}\\n shape: {field: \\\"flow_count\\\", type: \\\"nominal\\\"}\\n tooltip: {\\\"field\\\": \\\"max_offered_load_gbps\\\", \\\"type\\\": \\\"quantitative\\\"}\\n }\\n }\\n ]\\n}\"},\"title\":\"[NDR] Capacity in Gbps - Line chart\"}"},"id":"23b0eb40-e60a-11ea-bdc0-1fe1db0b9cb6","migrationVersion":{"visualization":"7.8.0"},"references":[{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[2].meta.index","type":"index-pattern"}],"type":"visualization","updated_at":"2020-10-06T12:41:52.380Z","version":"WzE2MTUsMTJd"} +{"attributes":{"description":"","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"language\":\"kuery\",\"query\":\"\"},\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.index\",\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"type.keyword\",\"negate\":true,\"params\":{\"query\":\"single_run\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index\"},\"query\":{\"match_phrase\":{\"type.keyword\":\"single_run\"}}}]}"},"title":"Synthesis - multiple labels","uiStateJSON":"{\"vis\":{\"params\":{\"sort\":{\"columnIndex\":null,\"direction\":null}}}}","version":1,"visState":"{\"type\":\"table\",\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"rate_bps\",\"customLabel\":\"Offered bps\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"rate_pps\",\"customLabel\":\"Offered pps\"}},{\"id\":\"3\",\"enabled\":true,\"type\":\"std_dev\",\"schema\":\"metric\",\"params\":{\"field\":\"total_orig_rate_bps\",\"customLabel\":\"std max bps\"}},{\"id\":\"4\",\"enabled\":true,\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"avg_delay_usec\",\"customLabel\":\"latency avg\"}},{\"id\":\"6\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"split\",\"params\":{\"field\":\"flow_count\",\"orderBy\":\"_key\",\"order\":\"asc\",\"size\":50,\"otherBucket\":false,\"otherBucketLabel\":\"Other\",\"missingBucket\":false,\"missingBucketLabel\":\"Missing\",\"customLabel\":\"flow count\"}},{\"id\":\"9\",\"enabled\":true,\"type\":\"significant_terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"user_label.keyword\",\"size\":10,\"customLabel\":\"label\"}},{\"id\":\"8\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"bucket\",\"params\":{\"field\":\"frame_size_int\",\"orderBy\":\"_key\",\"order\":\"asc\",\"size\":50,\"otherBucket\":false,\"otherBucketLabel\":\"Other\",\"missingBucket\":false,\"missingBucketLabel\":\"Missing\",\"customLabel\":\"frame size (bytes)\"}}],\"params\":{\"perPage\":10,\"percentageCol\":\"\",\"row\":false,\"showMetricsAtAllLevels\":false,\"showPartialRows\":false,\"showTotal\":false,\"sort\":{\"columnIndex\":null,\"direction\":null},\"totalFunc\":\"sum\"},\"title\":\"Synthesis - multiple labels\"}"},"id":"38cecb10-eded-11ea-a706-3fce679b2102","migrationVersion":{"visualization":"7.8.0"},"references":[{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index","type":"index-pattern"}],"type":"visualization","updated_at":"2020-09-03T13:56:10.433Z","version":"WzExMTksNV0="} +{"attributes":{"description":"NDR / PDR scatter plot - in Gbps","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"query\":\"\",\"language\":\"kuery\"},\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"type.keyword\",\"negate\":true,\"params\":{\"query\":\"single_run\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index\"},\"query\":{\"match_phrase\":{\"type.keyword\":\"single_run\"}}},{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"frame_size\",\"negate\":true,\"params\":{\"query\":\"IMIX\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index\"},\"query\":{\"match_phrase\":{\"frame_size\":\"IMIX\"}}},{\"$state\":{\"store\":\"appState\"},\"exists\":{\"field\":\"offered_tx_rate_bps\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"offered_tx_rate_bps\",\"negate\":false,\"type\":\"exists\",\"value\":\"exists\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[2].meta.index\"}}]}"},"title":"[NDR] Capacity in Gbps - Scatter plot","uiStateJSON":"{}","version":1,"visState":"{\"type\":\"vega\",\"aggs\":[],\"params\":{\"spec\":\"{\\n $schema: \\\"https://vega.github.io/schema/vega-lite/v2.json\\\"\\n title: \\\"Capacity in Gbps - 0.001% loss ratio\\\"\\n data: {\\n url: {\\n %context%: true\\n %timefield%: \\\"@timestamp\\\"\\n index: resu*\\n body: {\\n _source: [\\\"@timestamp\\\", \\\"_source\\\", \\\"offered_tx_rate_bps\\\", \\\"flow_count\\\", \\\"frame_size\\\", \\\"user_label\\\"]\\n },\\n size: 10000\\n },\\n format: { property: \\\"hits.hits\\\" }\\n },\\n transform: [\\n { calculate: \\\"datum._source['offered_tx_rate_bps'] / 1000000000\\\" as: \\\"Offered load (Gbps)\\\"},\\n { calculate: \\\"datum._source['flow_count']\\\" as: \\\"Flow count\\\"},\\n { calculate: \\\"isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])\\\" as: \\\"Frame size (bytes)\\\"}\\n { calculate: \\\"datum._source['user_label'] + '-' + datum._source['flow_count']\\\" as: \\\"label\\\"}\\n ],\\n center: true,\\n hconcat: [\\n {\\n width:10,\\n selection: {\\n legendSel: {\\n type: \\\"multi\\\",\\n encodings: [ \\\"color\\\", \\\"shape\\\" ],\\n toggle: \\\"event.shiftKey\\\"\\n }\\n },\\n encoding: {\\n y: {\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n axis: {\\n title: \\\"\\\",\\n domain: false,\\n ticks: false,\\n offset: 10\\n },\\n },\\n color: {\\n condition: {\\n selection: \\\"legendSel\\\",\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n legend: null\\n },\\n value: \\\"lightgrey\\\"\\n }\\n },\\n mark: {\\n type: \\\"square\\\",\\n size: 120,\\n opacity: 1\\n }\\n },\\n {\\n width:500,\\n height:280,\\n transform: [\\n {filter: { selection: \\\"legendSel\\\"}}\\n \\n ],\\n mark: {\\n \\\"type\\\": \\\"point\\\",\\n \\\"tooltip\\\": true\\n },\\n selection: {\\n grid: {\\n type: \\\"interval\\\",\\n resolve: \\\"global\\\",\\n bind: \\\"scales\\\",\\n translate: \\\"[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!\\\",\\n zoom: \\\"wheel![!event.shiftKey]\\\"\\n },\\n pts: {\\n type: \\\"single\\\",\\n fields: [\\\"label\\\"]\\n }\\n },\\n encoding: {\\n x: {\\n field: \\\"Frame size (bytes)\\\",\\n type: \\\"quantitative\\\"\\n }\\n y: {\\n field: \\\"Offered load (Gbps)\\\",\\n type: \\\"quantitative\\\"\\n }\\n color: {\\n field: \\\"label\\\", \\\"type\\\": \\\"nominal\\\",\\n \\\"legend\\\": null\\n }\\n shape: {\\n field: \\\"Flow count\\\",\\n type: \\\"nominal\\\"\\n }\\n tooltip: {\\n \\\"field\\\": \\\"Offered load (Gbps)\\\",\\n \\\"type\\\": \\\"quantitative\\\"\\n }\\n }\\n }\\n ]\\n}\"},\"title\":\"[NDR] Capacity in Gbps - Scatter plot\"}"},"id":"82fc8690-e77c-11ea-bb67-9b8ce9c25c00","migrationVersion":{"visualization":"7.8.0"},"references":[{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[2].meta.index","type":"index-pattern"}],"type":"visualization","updated_at":"2020-10-06T12:43:07.344Z","version":"WzE2MjAsMTJd"} +{"attributes":{"description":"NDR / PDR scatter plot - in Mpps","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"query\":\"\",\"language\":\"kuery\"},\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"type.keyword\",\"negate\":true,\"params\":{\"query\":\"single_run\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index\"},\"query\":{\"match_phrase\":{\"type.keyword\":\"single_run\"}}},{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"frame_size\",\"negate\":true,\"params\":{\"query\":\"IMIX\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index\"},\"query\":{\"match_phrase\":{\"frame_size\":\"IMIX\"}}}]}"},"title":"[NDR] Capacity in Mpps - Scatter plot","uiStateJSON":"{}","version":1,"visState":"{\"type\":\"vega\",\"aggs\":[],\"params\":{\"spec\":\"{\\n $schema: \\\"https://vega.github.io/schema/vega-lite/v2.json\\\"\\n title: \\\"Capacity in Mpps - 0,001% loss ratio\\\"\\n data: {\\n url: {\\n %context%: true\\n %timefield%: \\\"@timestamp\\\"\\n index: resu*\\n body: {\\n _source: [\\\"@timestamp\\\", \\\"_source\\\", \\\"rate_pps\\\", \\\"flow_count\\\", \\\"frame_size\\\", \\\"user_label\\\"]\\n },\\n size: 10000\\n },\\n format: { property: \\\"hits.hits\\\" }\\n },\\n transform: [\\n { calculate: \\\"datum._source['rate_pps'] / 1000000\\\" as: \\\"Offered load (Mpps)\\\"},\\n { calculate: \\\"datum._source['flow_count']\\\" as: \\\"Flow count\\\"},\\n { calculate: \\\"isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])\\\" as: \\\"Frame size (bytes)\\\"}\\n { calculate: \\\"datum._source['user_label'] + '-' + datum._source['flow_count']\\\" as: \\\"label\\\"}\\n ],\\n center: true,\\n hconcat: [\\n {\\n width:10,\\n selection: {\\n legendSel: {\\n type: \\\"multi\\\",\\n encodings: [ \\\"color\\\", \\\"shape\\\" ],\\n toggle: \\\"event.shiftKey\\\"\\n }\\n },\\n encoding: {\\n y: {\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n axis: {\\n title: \\\"\\\",\\n domain: false,\\n ticks: false,\\n offset: 10\\n },\\n },\\n color: {\\n condition: {\\n selection: \\\"legendSel\\\",\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n legend: null\\n },\\n value: \\\"lightgrey\\\"\\n }\\n },\\n mark: {\\n type: \\\"square\\\",\\n size: 120,\\n opacity: 1\\n }\\n },\\n {\\n width:500,\\n height:280,\\n transform: [\\n {filter: { selection: \\\"legendSel\\\"}}\\n \\n ],\\n mark: {\\n \\\"type\\\": \\\"point\\\",\\n \\\"tooltip\\\": true\\n },\\n selection: {\\n grid: {\\n type: \\\"interval\\\",\\n resolve: \\\"global\\\",\\n bind: \\\"scales\\\",\\n translate: \\\"[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!\\\",\\n zoom: \\\"wheel![!event.shiftKey]\\\"\\n },\\n pts: {\\n type: \\\"single\\\",\\n fields: [\\\"label\\\"]\\n }\\n },\\n encoding: {\\n x: {\\n field: \\\"Frame size (bytes)\\\",\\n type: \\\"quantitative\\\"\\n }\\n y: {\\n field: \\\"Offered load (Mpps)\\\",\\n type: \\\"quantitative\\\"\\n }\\n color: {\\n field: \\\"label\\\", \\\"type\\\": \\\"nominal\\\",\\n \\\"legend\\\": null\\n }\\n shape: {\\n field: \\\"Flow count\\\",\\n type: \\\"nominal\\\"\\n }\\n tooltip: {\\n \\\"field\\\": \\\"Offered load (Mpps)\\\",\\n \\\"type\\\": \\\"quantitative\\\"\\n }\\n }\\n }\\n ]\\n}\"},\"title\":\"[NDR] Capacity in Mpps - Scatter plot\"}"},"id":"51110c20-e879-11ea-9fcb-3bb6d0d175f6","migrationVersion":{"visualization":"7.8.0"},"references":[{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index","type":"index-pattern"}],"type":"visualization","updated_at":"2020-10-06T12:44:30.320Z","version":"WzE2MjIsMTJd"} +{"attributes":{"description":"","hits":0,"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"language\":\"kuery\",\"query\":\"\"},\"filter\":[]}"},"optionsJSON":"{\"hidePanelTitles\":false,\"useMargins\":true}","panelsJSON":"[{\"embeddableConfig\":{\"title\":\"Max value over 3 measurements\"},\"gridData\":{\"h\":15,\"i\":\"e9186fd0-d3a5-47ae-88c5-20cf0e44dc30\",\"w\":24,\"x\":0,\"y\":0},\"panelIndex\":\"e9186fd0-d3a5-47ae-88c5-20cf0e44dc30\",\"title\":\"Max value over 3 measurements\",\"version\":\"7.8.0\",\"panelRefName\":\"panel_0\"},{\"embeddableConfig\":{\"title\":\"Scatter plot\"},\"gridData\":{\"h\":15,\"i\":\"89f92958-de63-4244-af53-9ef60958de41\",\"w\":24,\"x\":24,\"y\":0},\"panelIndex\":\"89f92958-de63-4244-af53-9ef60958de41\",\"title\":\"Scatter plot\",\"version\":\"7.8.0\",\"panelRefName\":\"panel_1\"},{\"embeddableConfig\":{\"title\":\"Max value over 3 measurements\"},\"gridData\":{\"h\":15,\"i\":\"87ec5dff-5c9b-4c88-b079-cbc63b4275ad\",\"w\":24,\"x\":0,\"y\":15},\"panelIndex\":\"87ec5dff-5c9b-4c88-b079-cbc63b4275ad\",\"title\":\"Max value over 3 measurements\",\"version\":\"7.8.0\",\"panelRefName\":\"panel_2\"},{\"embeddableConfig\":{\"title\":\"Scatter plot\"},\"gridData\":{\"h\":15,\"i\":\"813ff050-1ec7-48f4-82db-b63ab98e40c6\",\"w\":24,\"x\":24,\"y\":15},\"panelIndex\":\"813ff050-1ec7-48f4-82db-b63ab98e40c6\",\"title\":\"Scatter plot\",\"version\":\"7.8.0\",\"panelRefName\":\"panel_3\"},{\"embeddableConfig\":{},\"gridData\":{\"h\":10,\"i\":\"d806469f-2ea3-4b45-99d8-acc7f09ee8f5\",\"w\":48,\"x\":0,\"y\":30},\"panelIndex\":\"d806469f-2ea3-4b45-99d8-acc7f09ee8f5\",\"version\":\"7.8.0\",\"panelRefName\":\"panel_4\"}]","timeRestore":false,"title":"Synthesis Max Throughput - NDR (0.001% loss ratio)","version":1},"id":"46874a00-e2b9-11ea-bdc0-1fe1db0b9cb6","migrationVersion":{"dashboard":"7.3.0"},"references":[{"id":"23b0eb40-e60a-11ea-bdc0-1fe1db0b9cb6","name":"panel_0","type":"visualization"},{"id":"82fc8690-e77c-11ea-bb67-9b8ce9c25c00","name":"panel_1","type":"visualization"},{"id":"1b471fa0-e6b0-11ea-bdc0-1fe1db0b9cb6","name":"panel_2","type":"visualization"},{"id":"51110c20-e879-11ea-9fcb-3bb6d0d175f6","name":"panel_3","type":"visualization"},{"id":"0d2c4070-e6e3-11ea-a933-05dd8fc4d76f","name":"panel_4","type":"visualization"}],"type":"dashboard","updated_at":"2020-10-06T12:46:24.279Z","version":"WzE2MzEsMTJd"} +{"attributes":{"buildNum":16588,"defaultIndex":"39955f20-78ac-11ea-ae77-8339e5fd808c"},"id":"6.2.2","references":[],"type":"config","updated_at":"2020-07-21T08:47:10.197Z","version":"WzYsMV0="} +{"attributes":{"buildNum":20352,"defaultIndex":"39955f20-78ac-11ea-ae77-8339e5fd808c"},"id":"6.8.0","references":[],"type":"config","updated_at":"2020-07-30T15:12:33.985Z","version":"WzE4LDFd"} +{"attributes":{"buildNum":31997,"defaultIndex":"e0939790-e78f-11ea-8ca2-35af0cc4217c"},"id":"7.8.0","references":[],"type":"config","updated_at":"2020-08-27T09:31:50.697Z","version":"Wzc5MCw0XQ=="} +{"attributes":{"description":"","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"query\":\"\",\"language\":\"kuery\"},\"filter\":[{\"$state\":{\"store\":\"appState\"},\"exists\":{\"field\":\"theoretical_tx_rate_bps\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"theoretical_tx_rate_bps\",\"negate\":false,\"type\":\"exists\",\"value\":\"exists\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index\"}}]}"},"title":"[NDR] Capacity in Gbps with theoretical max rate - Line chart","uiStateJSON":"{}","version":1,"visState":"{\"type\":\"vega\",\"aggs\":[],\"params\":{\"spec\":\"{\\n $schema: https: //vega.github.io/schema/vega-lite/v2.json\\n title: \\\"Capacity in Gbps - 0,001% loss ratio\\\"\\n data: {\\n url: {\\n %context%: true\\n %timefield%: \\\"@timestamp\\\"\\n index: resu*\\n body: {\\n _source: [\\\"@timestamp\\\", \\\"_source\\\", \\\"offered_tx_rate_bps\\\", \\\"theoretical_tx_rate_bps\\\", \\\"flow_count\\\", \\\"frame_size\\\", \\\"user_label\\\"]\\n },\\n size: 10000\\n },\\n format: { property: \\\"hits.hits\\\" }\\n },\\n transform: [\\n { calculate: \\\"datum._source['offered_tx_rate_bps'] / 1000000000\\\" as: \\\"offered_load_gbps\\\"},\\n { calculate: \\\"datum._source['theoretical_tx_rate_bps'] / 1000000000\\\" as: \\\"theoretical_tx_rate_bps\\\"},\\n { calculate: \\\"datum._source['flow_count']\\\" as: \\\"flow_count\\\"},\\n { calculate: \\\"isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])\\\" as: \\\"frame_size\\\"},\\n { calculate: \\\"datum._source['user_label'] + '-' + datum._source['flow_count']\\\" as: \\\"label\\\"}\\n { aggregate: [{op: \\\"max\\\", field: \\\"offered_load_gbps\\\", as: \\\"max_offered_load_gbps\\\"}, {op: \\\"max\\\", field: \\\"theoretical_tx_rate_bps\\\", as: \\\"theoretical_tx_rate_bps\\\"}], groupby: [\\\"frame_size\\\", \\\"label\\\",\\\"flow_count\\\"]}\\n ],\\n center: true,\\n hconcat: [\\n {\\n width:10,\\n selection: {\\n legendSel: {\\n type: \\\"multi\\\",\\n encodings: [ \\\"color\\\", \\\"shape\\\" ],\\n toggle: \\\"event.shiftKey\\\"\\n }\\n },\\n encoding: {\\n y: {\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n axis: {\\n title: \\\"\\\",\\n domain: false,\\n ticks: false,\\n offset: 10\\n },\\n },\\n color: {\\n condition: {\\n selection: \\\"legendSel\\\",\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n legend: null\\n },\\n value: \\\"lightgrey\\\"\\n }\\n },\\n mark: {\\n type: \\\"square\\\",\\n size: 120,\\n opacity: 1\\n }\\n },\\n {\\n layer: [\\n {\\n mark: {\\n type: \\\"line\\\",\\n tooltip: true,\\n point: true\\n },\\n encoding: {\\n x: { field: \\\"frame_size\\\", type: \\\"quantitative\\\", title: \\\"Frame size (bytes)\\\", axis: {offset: 10} }\\n y: { field: \\\"theoretical_tx_rate_bps\\\", type: \\\"quantitative\\\", title: \\\"Theoretical rate (Gbps)\\\" , axis: {offset: 10} }\\n strokeDash: {\\\"field\\\": \\\"theoretical_tx_rate_bps\\\", \\\"type\\\": \\\"nominal\\\"}\\n tooltip: [{\\\"field\\\": \\\"theoretical_tx_rate_bps\\\", \\\"type\\\": \\\"quantitative\\\", title: \\\"theoretical max capacity\\\"}],\\n color: { \\\"value\\\": \\\"red\\\"}\\n }\\n },\\n {\\n width:500,\\n height:280,\\n transform: [\\n {filter: { selection: \\\"legendSel\\\"}}\\n ],\\n mark: {\\n type: \\\"line\\\",\\n tooltip: true,\\n point: true\\n },\\n selection: {\\n grid: {\\n type: \\\"interval\\\",\\n resolve: \\\"global\\\",\\n bind: \\\"scales\\\",\\n translate: \\\"[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!\\\",\\n zoom: \\\"wheel![!event.shiftKey]\\\"\\n },\\n pts: {\\n type: \\\"single\\\",\\n fields: [\\\"Label\\\"]\\n }\\n },\\n encoding: {\\n x: { field: \\\"frame_size\\\", type: \\\"quantitative\\\", title: \\\"Frame size (bytes)\\\", axis: {offset: 10} }\\n y: { field: \\\"max_offered_load_gbps\\\", type: \\\"quantitative\\\", title: \\\"Offered load (Gbps)\\\" , axis: {offset: 10} }\\n color: {field: \\\"label\\\", \\\"type\\\": \\\"nominal\\\",\\n \\\"legend\\\": null}\\n shape: {field: \\\"flow_count\\\", type: \\\"nominal\\\"}\\n tooltip: {\\\"field\\\": \\\"max_offered_load_gbps\\\", \\\"type\\\": \\\"quantitative\\\"}\\n }\\n }\\n ]\\n }\\n ]\\n}\"},\"title\":\"[NDR] Capacity in Gbps with theoretical max rate - Line chart\"}"},"id":"966a5990-0712-11eb-92f0-3518df6b43ff","migrationVersion":{"visualization":"7.8.0"},"references":[{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index","type":"index-pattern"}],"type":"visualization","updated_at":"2020-10-06T12:34:38.736Z","version":"WzE1OTIsMTJd"} +{"attributes":{"description":"","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"query\":\"\",\"language\":\"kuery\"},\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.index\",\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"type.keyword\",\"negate\":true,\"params\":{\"query\":\"single_run\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index\"},\"query\":{\"match_phrase\":{\"type.keyword\":\"single_run\"}}},{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"frame_size\",\"negate\":true,\"params\":{\"query\":\"IMIX\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index\"},\"query\":{\"match_phrase\":{\"frame_size\":\"IMIX\"}}}]}"},"title":"[NDR] Capacity in Gbps - bar chart","uiStateJSON":"{}","version":1,"visState":"{\"type\":\"histogram\",\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"rate_bps\",\"customLabel\":\"Offered load (Gbps)\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"segment\",\"params\":{\"field\":\"frame_size_int\",\"orderBy\":\"_key\",\"order\":\"asc\",\"size\":50,\"otherBucket\":false,\"otherBucketLabel\":\"Other\",\"missingBucket\":false,\"missingBucketLabel\":\"Missing\",\"customLabel\":\"Frame size (bytes)\"}},{\"id\":\"3\",\"enabled\":true,\"type\":\"significant_terms\",\"schema\":\"group\",\"params\":{\"field\":\"user_label.keyword\",\"size\":10,\"customLabel\":\"Label\"}},{\"id\":\"4\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"group\",\"params\":{\"field\":\"flow_count\",\"orderBy\":\"_key\",\"order\":\"desc\",\"size\":5,\"otherBucket\":false,\"otherBucketLabel\":\"Other\",\"missingBucket\":false,\"missingBucketLabel\":\"Missing\"}}],\"params\":{\"type\":\"histogram\",\"grid\":{\"categoryLines\":false},\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"type\":\"category\",\"position\":\"bottom\",\"show\":true,\"style\":{},\"scale\":{\"type\":\"linear\"},\"labels\":{\"show\":true,\"filter\":true,\"truncate\":100,\"rotate\":0},\"title\":{}}],\"valueAxes\":[{\"id\":\"ValueAxis-1\",\"name\":\"LeftAxis-1\",\"type\":\"value\",\"position\":\"left\",\"show\":true,\"style\":{},\"scale\":{\"type\":\"linear\",\"mode\":\"normal\",\"setYExtents\":false},\"labels\":{\"show\":true,\"rotate\":0,\"filter\":false,\"truncate\":100},\"title\":{\"text\":\"Offered load (Gbps)\"}}],\"seriesParams\":[{\"show\":true,\"type\":\"histogram\",\"mode\":\"normal\",\"data\":{\"label\":\"Offered load (Gbps)\",\"id\":\"1\"},\"valueAxis\":\"ValueAxis-1\",\"drawLinesBetweenPoints\":true,\"lineWidth\":2,\"showCircles\":true}],\"addTooltip\":true,\"addLegend\":true,\"legendPosition\":\"right\",\"times\":[],\"addTimeMarker\":false,\"labels\":{\"show\":false},\"thresholdLine\":{\"show\":false,\"value\":10,\"width\":1,\"style\":\"full\",\"color\":\"#E7664C\"}},\"title\":\"[NDR] Capacity in Gbps - bar chart\"}"},"id":"8c87f800-edeb-11ea-a706-3fce679b2102","migrationVersion":{"visualization":"7.8.0"},"references":[{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index","type":"index-pattern"}],"type":"visualization","updated_at":"2020-09-10T12:50:59.005Z","version":"WzEzNjIsOF0="} +{"attributes":{"description":"","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"query\":\"\",\"language\":\"kuery\"},\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.index\",\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"type.keyword\",\"negate\":true,\"params\":{\"query\":\"single_run\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index\"},\"query\":{\"match_phrase\":{\"type.keyword\":\"single_run\"}}},{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"frame_size\",\"negate\":true,\"params\":{\"query\":\"IMIX\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index\"},\"query\":{\"match_phrase\":{\"frame_size\":\"IMIX\"}}}]}"},"title":"[NDR] Capacity in Mpps - bar chart","uiStateJSON":"{}","version":1,"visState":"{\"type\":\"histogram\",\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"rate_pps\",\"customLabel\":\"Offered load (Mpps)\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"segment\",\"params\":{\"field\":\"frame_size_int\",\"orderBy\":\"_key\",\"order\":\"asc\",\"size\":50,\"otherBucket\":false,\"otherBucketLabel\":\"Other\",\"missingBucket\":false,\"missingBucketLabel\":\"Missing\",\"customLabel\":\"Frame size (bytes)\"}},{\"id\":\"3\",\"enabled\":true,\"type\":\"significant_terms\",\"schema\":\"group\",\"params\":{\"field\":\"user_label.keyword\",\"size\":10,\"customLabel\":\"Label\"}},{\"id\":\"4\",\"enabled\":true,\"type\":\"terms\",\"schema\":\"group\",\"params\":{\"field\":\"flow_count\",\"orderBy\":\"_key\",\"order\":\"desc\",\"size\":5,\"otherBucket\":false,\"otherBucketLabel\":\"Other\",\"missingBucket\":false,\"missingBucketLabel\":\"Missing\"}}],\"params\":{\"type\":\"histogram\",\"grid\":{\"categoryLines\":true,\"valueAxis\":\"ValueAxis-1\"},\"categoryAxes\":[{\"id\":\"CategoryAxis-1\",\"type\":\"category\",\"position\":\"bottom\",\"show\":true,\"style\":{},\"scale\":{\"type\":\"linear\"},\"labels\":{\"show\":true,\"filter\":true,\"truncate\":100,\"rotate\":0},\"title\":{}}],\"valueAxes\":[{\"id\":\"ValueAxis-1\",\"name\":\"LeftAxis-1\",\"type\":\"value\",\"position\":\"left\",\"show\":true,\"style\":{},\"scale\":{\"type\":\"linear\",\"mode\":\"normal\",\"setYExtents\":false},\"labels\":{\"show\":true,\"rotate\":0,\"filter\":false,\"truncate\":100},\"title\":{\"text\":\"Offered load (Mpps)\"}}],\"seriesParams\":[{\"show\":true,\"type\":\"histogram\",\"mode\":\"normal\",\"data\":{\"label\":\"Offered load (Mpps)\",\"id\":\"1\"},\"valueAxis\":\"ValueAxis-1\",\"drawLinesBetweenPoints\":true,\"lineWidth\":2,\"showCircles\":true}],\"addTooltip\":true,\"addLegend\":true,\"legendPosition\":\"right\",\"times\":[],\"addTimeMarker\":false,\"labels\":{\"show\":false},\"thresholdLine\":{\"show\":false,\"value\":20,\"width\":1,\"style\":\"full\",\"color\":\"#E7664C\"}},\"title\":\"[NDR] Capacity in Mpps - bar chart\"}"},"id":"8c14a8b0-e6d8-11ea-a933-05dd8fc4d76f","migrationVersion":{"visualization":"7.8.0"},"references":[{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index","type":"index-pattern"}],"type":"visualization","updated_at":"2020-09-10T12:51:33.492Z","version":"WzEzNjQsOF0="} +{"attributes":{"description":"NDR / PDR line chart - in Mpps","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"query\":\"\",\"language\":\"kuery\"},\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"type.keyword\",\"negate\":true,\"params\":{\"query\":\"single_run\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index\"},\"query\":{\"match_phrase\":{\"type.keyword\":\"single_run\"}}},{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"frame_size\",\"negate\":true,\"params\":{\"query\":\"IMIX\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index\"},\"query\":{\"match_phrase\":{\"frame_size\":\"IMIX\"}}},{\"$state\":{\"store\":\"appState\"},\"exists\":{\"field\":\"theoretical_tx_rate_pps\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"theoretical_tx_rate_pps\",\"negate\":false,\"type\":\"exists\",\"value\":\"exists\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[2].meta.index\"}}]}"},"title":"[NDR] Capacity in Mpps with theoretical max rate - Line chart","uiStateJSON":"{}","version":1,"visState":"{\"type\":\"vega\",\"aggs\":[],\"params\":{\"spec\":\"{\\n $schema: https: //vega.github.io/schema/vega-lite/v2.json\\n title: \\\"Capacity in Mpps - 0,001% loss ratio\\\"\\n data: {\\n url: {\\n %context%: true\\n %timefield%: \\\"@timestamp\\\"\\n index: resu*\\n body: {\\n _source: [\\\"@timestamp\\\", \\\"_source\\\", \\\"theoretical_tx_rate_pps\\\", \\\"rate_pps\\\", \\\"flow_count\\\", \\\"frame_size\\\", \\\"user_label\\\", \\\"type\\\"]\\n },\\n size: 10000\\n },\\n format: { property: \\\"hits.hits\\\" }\\n },\\n\\n transform: [\\n { calculate: \\\"datum._source['rate_pps'] / 1000000\\\" as: \\\"offered_load_pps\\\"},\\n { calculate: \\\"datum._source['theoretical_tx_rate_pps'] / 1000000\\\" as: \\\"theoretical_tx_rate_pps\\\"},\\n { calculate: \\\"datum._source['flow_count']\\\" as: \\\"flow_count\\\"},\\n { calculate: \\\"isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])\\\" as: \\\"frame_size\\\"},\\n { calculate: \\\"datum._source['user_label'] + '-' + datum._source['flow_count']\\\" as: \\\"label\\\"}\\n { aggregate: [{op: \\\"max\\\", field: \\\"offered_load_pps\\\", as: \\\"max_offered_load_pps\\\"}, {op: \\\"max\\\", field: \\\"theoretical_tx_rate_pps\\\", as: \\\"theoretical_tx_rate_pps\\\"}], groupby: [\\\"frame_size\\\", \\\"label\\\",\\\"flow_count\\\"]}\\n \\n ],\\n center: true,\\n hconcat: [\\n {\\n width:10,\\n selection: {\\n legendSel: {\\n type: \\\"multi\\\",\\n encodings: [ \\\"color\\\", \\\"shape\\\" ],\\n toggle: \\\"event.shiftKey\\\"\\n }\\n },\\n encoding: {\\n y: {\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n axis: {\\n title: \\\"\\\",\\n domain: false,\\n ticks: false,\\n offset: 10\\n },\\n },\\n color: {\\n condition: {\\n selection: \\\"legendSel\\\",\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n legend: null\\n },\\n value: \\\"lightgrey\\\"\\n }\\n },\\n mark: {\\n type: \\\"square\\\",\\n size: 120,\\n opacity: 1\\n }\\n },\\n {\\n layer: [{\\n mark: {\\n type: \\\"line\\\",\\n tooltip: true,\\n point: true\\n },\\n encoding: {\\n x: { field: \\\"frame_size\\\", type: \\\"quantitative\\\", title: \\\"Frame size (bytes)\\\", axis: {offset: 10} }\\n y: { field: \\\"theoretical_tx_rate_pps\\\", type: \\\"quantitative\\\", title: \\\"Offered load (Mpps)\\\" , axis: {offset: 10} }\\n strokeDash: {\\\"field\\\": \\\"theoretical_tx_rate_pps\\\", \\\"type\\\": \\\"nominal\\\"}\\n tooltip: [{\\\"field\\\": \\\"theoretical_tx_rate_pps\\\", \\\"type\\\": \\\"quantitative\\\", title: \\\"theoretical max capacity\\\"}],\\n color: { \\\"value\\\": \\\"red\\\"}\\n }\\n },{\\n width:500,\\n height:280,\\n transform: [\\n {filter: { selection: \\\"legendSel\\\"}}\\n \\n ],mark: {\\n type: \\\"line\\\",\\n tooltip: true,\\n point: true\\n },\\n selection: {\\n grid: {\\n type: \\\"interval\\\",\\n resolve: \\\"global\\\",\\n bind: \\\"scales\\\",\\n translate: \\\"[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!\\\",\\n zoom: \\\"wheel![!event.shiftKey]\\\"\\n },\\n pts: {\\n type: \\\"single\\\",\\n fields: [\\\"Label\\\"]\\n }\\n },\\n encoding: {\\n x: { field: \\\"frame_size\\\", type: \\\"quantitative\\\", title: \\\"Frame size (bytes)\\\", axis: {offset: 10} }\\n y: { field: \\\"max_offered_load_pps\\\", type: \\\"quantitative\\\", title: \\\"Offered load (Mpps)\\\" , axis: {offset: 10} }\\n color: {field: \\\"label\\\", \\\"type\\\": \\\"nominal\\\",\\n \\\"legend\\\": null}\\n tooltip: {\\\"field\\\": \\\"max_offered_load_pps\\\", \\\"type\\\": \\\"quantitative\\\"},\\n shape: {field: \\\"flow_count\\\", type: \\\"nominal\\\"}\\n }\\n }\\n ]\\n }\\n \\n ]\\n}\"},\"title\":\"[NDR] Capacity in Mpps with theoretical max rate - Line chart\"}"},"id":"a523c930-07d0-11eb-92f0-3518df6b43ff","migrationVersion":{"visualization":"7.8.0"},"references":[{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[2].meta.index","type":"index-pattern"}],"type":"visualization","updated_at":"2020-10-06T12:37:07.011Z","version":"WzE1OTgsMTJd"} +{"attributes":{"description":"","hits":0,"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"language\":\"kuery\",\"query\":\"\"},\"filter\":[]}"},"optionsJSON":"{\"hidePanelTitles\":false,\"useMargins\":true}","panelsJSON":"[{\"version\":\"7.8.0\",\"gridData\":{\"h\":15,\"i\":\"c6f77fa7-0493-4ef6-b995-9250039f26e0\",\"w\":24,\"x\":0,\"y\":0},\"panelIndex\":\"c6f77fa7-0493-4ef6-b995-9250039f26e0\",\"embeddableConfig\":{},\"panelRefName\":\"panel_0\"},{\"version\":\"7.8.0\",\"gridData\":{\"h\":15,\"i\":\"0b349901-c6f5-4a35-ad44-5331d75ceb8c\",\"w\":24,\"x\":24,\"y\":0},\"panelIndex\":\"0b349901-c6f5-4a35-ad44-5331d75ceb8c\",\"embeddableConfig\":{},\"panelRefName\":\"panel_1\"},{\"version\":\"7.8.0\",\"gridData\":{\"h\":15,\"i\":\"e7f9f670-3866-4795-a83e-3b208990262d\",\"w\":24,\"x\":24,\"y\":15},\"panelIndex\":\"e7f9f670-3866-4795-a83e-3b208990262d\",\"embeddableConfig\":{},\"panelRefName\":\"panel_2\"},{\"version\":\"7.8.0\",\"gridData\":{\"h\":16,\"i\":\"7ad18ce1-1916-4d5b-abe8-340571feb151\",\"w\":48,\"x\":0,\"y\":30},\"panelIndex\":\"7ad18ce1-1916-4d5b-abe8-340571feb151\",\"embeddableConfig\":{},\"panelRefName\":\"panel_3\"},{\"version\":\"7.8.0\",\"gridData\":{\"x\":0,\"y\":15,\"w\":24,\"h\":15,\"i\":\"29117e66-cb29-43fc-ba6f-5f61d356a236\"},\"panelIndex\":\"29117e66-cb29-43fc-ba6f-5f61d356a236\",\"embeddableConfig\":{},\"panelRefName\":\"panel_4\"}]","timeRestore":false,"title":"Comparison synthesis dashboard with max theoretical value","version":1},"id":"81cf0e70-070a-11eb-92f0-3518df6b43ff","migrationVersion":{"dashboard":"7.3.0"},"references":[{"id":"966a5990-0712-11eb-92f0-3518df6b43ff","name":"panel_0","type":"visualization"},{"id":"8c87f800-edeb-11ea-a706-3fce679b2102","name":"panel_1","type":"visualization"},{"id":"8c14a8b0-e6d8-11ea-a933-05dd8fc4d76f","name":"panel_2","type":"visualization"},{"id":"38cecb10-eded-11ea-a706-3fce679b2102","name":"panel_3","type":"visualization"},{"id":"a523c930-07d0-11eb-92f0-3518df6b43ff","name":"panel_4","type":"visualization"}],"type":"dashboard","updated_at":"2020-10-06T12:37:58.211Z","version":"WzE2MDIsMTJd"} +{"attributes":{"description":"","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"query\":\"\",\"language\":\"kuery\"},\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.index\",\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"type.keyword\",\"negate\":true,\"params\":{\"query\":\"single_run\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index\"},\"query\":{\"match_phrase\":{\"type.keyword\":\"single_run\"}}}]}"},"title":"IMIX KPI","uiStateJSON":"{}","version":1,"visState":"{\"type\":\"metric\",\"aggs\":[{\"id\":\"1\",\"enabled\":true,\"type\":\"max\",\"schema\":\"metric\",\"params\":{\"field\":\"rate_bps\",\"customLabel\":\"IMIX Offered load (Mbps)\"}},{\"id\":\"2\",\"enabled\":true,\"type\":\"significant_terms\",\"schema\":\"group\",\"params\":{\"field\":\"user_label.keyword\",\"size\":10,\"customLabel\":\"label\"}}],\"params\":{\"addTooltip\":true,\"addLegend\":false,\"type\":\"metric\",\"metric\":{\"percentageMode\":false,\"useRanges\":false,\"colorSchema\":\"Green to Red\",\"metricColorMode\":\"None\",\"colorsRange\":[{\"from\":0,\"to\":10000}],\"labels\":{\"show\":true},\"invertColors\":false,\"style\":{\"bgFill\":\"#000\",\"bgColor\":false,\"labelColor\":false,\"subText\":\"\",\"fontSize\":60}}},\"title\":\"IMIX KPI\"}"},"id":"83434d80-e882-11ea-9fcb-3bb6d0d175f6","migrationVersion":{"visualization":"7.8.0"},"references":[{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index","type":"index-pattern"}],"type":"visualization","updated_at":"2020-08-27T16:29:43.383Z","version":"Wzk4Miw0XQ=="} +{"attributes":{"description":"NDR / PDR scatter plot - in Mpps","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"language\":\"kuery\",\"query\":\"\"},\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"type.keyword\",\"negate\":true,\"params\":{\"query\":\"single_run\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index\"},\"query\":{\"match_phrase\":{\"type.keyword\":\"single_run\"}}},{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"frame_size\",\"negate\":true,\"params\":{\"query\":\"IMIX\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index\"},\"query\":{\"match_phrase\":{\"frame_size\":\"IMIX\"}}},{\"$state\":{\"store\":\"appState\"},\"exists\":{\"field\":\"theoretical_tx_rate_pps\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"theoretical_tx_rate_pps\",\"negate\":false,\"type\":\"exists\",\"value\":\"exists\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[2].meta.index\"}}]}"},"title":"[NDR] Capacity in Mpps with theoretical max rate - Scatter plot","uiStateJSON":"{}","version":1,"visState":"{\"aggs\":[],\"params\":{\"spec\":\"{\\n $schema: \\\"https://vega.github.io/schema/vega-lite/v2.json\\\"\\n title: \\\"Capacity in Mpps - 0,001% loss ratio\\\"\\n data: {\\n url: {\\n %context%: true\\n %timefield%: \\\"@timestamp\\\"\\n index: resu*\\n body: {\\n _source: [\\\"@timestamp\\\", \\\"_source\\\", \\\"rate_pps\\\", \\\"theoretical_tx_rate_pps\\\", \\\"flow_count\\\", \\\"frame_size\\\", \\\"user_label\\\"]\\n },\\n size: 10000\\n },\\n format: { property: \\\"hits.hits\\\" }\\n },\\n transform: [\\n { calculate: \\\"datum._source['rate_pps'] / 1000000\\\" as: \\\"rate_pps\\\"},\\n { calculate: \\\"datum._source['theoretical_tx_rate_pps'] / 1000000\\\" as: \\\"theoretical_tx_rate_pps\\\"},\\n { calculate: \\\"datum._source['flow_count']\\\" as: \\\"flow_count\\\"},\\n { calculate: \\\"isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])\\\" as: \\\"frame_size\\\"}\\n { calculate: \\\"datum._source['user_label'] + '-' + datum._source['flow_count']\\\" as: \\\"label\\\"}\\n ],\\n center: true,\\n hconcat: [\\n {\\n width:10,\\n selection: {\\n legendSel: {\\n type: \\\"multi\\\",\\n encodings: [ \\\"color\\\", \\\"shape\\\" ],\\n toggle: \\\"event.shiftKey\\\"\\n }\\n },\\n encoding: {\\n y: {\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n axis: {\\n title: \\\"\\\",\\n domain: false,\\n ticks: false,\\n offset: 10\\n },\\n },\\n color: {\\n condition: {\\n selection: \\\"legendSel\\\",\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n legend: null\\n },\\n value: \\\"lightgrey\\\"\\n }\\n },\\n mark: {\\n type: \\\"square\\\",\\n size: 120,\\n opacity: 1\\n }\\n },\\n {\\n layer: [\\n {\\n mark: {\\n type: \\\"line\\\",\\n tooltip: true\\n },\\n encoding: {\\n x: { field: \\\"frame_size\\\", type: \\\"quantitative\\\", title: \\\"Frame size (bytes)\\\", axis: {offset: 10} }\\n y: { field: \\\"theoretical_tx_rate_pps\\\", type: \\\"quantitative\\\", title: \\\"Offered load (Mpps)\\\" , axis: {offset: 10} }\\n strokeDash: {\\\"field\\\": \\\"theoretical_tx_rate_pps\\\", \\\"type\\\": \\\"nominal\\\"}\\n tooltip: [{\\\"field\\\": \\\"theoretical_tx_rate_pps\\\", \\\"type\\\": \\\"quantitative\\\", title: \\\"theoretical max capacity\\\"}],\\n color: { \\\"value\\\": \\\"red\\\"}\\n }\\n },\\n {\\n width:500,\\n height:280,\\n transform: [\\n {filter: { selection: \\\"legendSel\\\"}}\\n ],\\n mark: {\\n \\\"type\\\": \\\"point\\\",\\n \\\"tooltip\\\": true\\n },\\n selection: {\\n grid: {\\n type: \\\"interval\\\",\\n resolve: \\\"global\\\",\\n bind: \\\"scales\\\",\\n translate: \\\"[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!\\\",\\n zoom: \\\"wheel![!event.shiftKey]\\\"\\n },\\n pts: {\\n type: \\\"single\\\",\\n fields: [\\\"label\\\"]\\n }\\n },\\n encoding: {\\n x: {\\n field: \\\"frame_size\\\",\\n title: \\\"Frame size (bytes)\\\",\\n type: \\\"quantitative\\\"\\n }\\n y: {\\n field: \\\"rate_pps\\\",\\n title: \\\"Offered load (Mpps)\\\",\\n type: \\\"quantitative\\\"\\n }\\n color: {\\n field: \\\"label\\\", \\\"type\\\": \\\"nominal\\\",\\n \\\"legend\\\": null\\n }\\n shape: {\\n field: \\\"flow_count\\\",\\n type: \\\"nominal\\\"\\n }\\n tooltip: {\\n \\\"field\\\": \\\"rate_pps\\\",\\n \\\"title\\\": \\\"Offered load (Mpps)\\\",\\n \\\"type\\\": \\\"quantitative\\\"\\n }\\n }\\n }\\n ]\\n }\\n ]\\n}\"},\"title\":\"[NDR] Capacity in Mpps with theoretical max rate - Scatter plot\",\"type\":\"vega\"}"},"id":"8eb9cd00-07d2-11eb-92f0-3518df6b43ff","migrationVersion":{"visualization":"7.8.0"},"references":[{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[2].meta.index","type":"index-pattern"}],"type":"visualization","updated_at":"2020-10-06T12:50:53.215Z","version":"WzE2NDksMTJd"} +{"attributes":{"description":"","filters":[],"query":{"language":"kuery","query":"flow_count:128 or flow_count:2"},"title":"KQL - flow count"},"id":"KQL - flow count","references":[],"type":"query","updated_at":"2020-09-03T14:05:36.549Z","version":"WzExMjcsNV0="} +{"attributes":{"description":"","hits":0,"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"language\":\"kuery\",\"query\":\"\"},\"filter\":[]}"},"optionsJSON":"{\"hidePanelTitles\":false,\"useMargins\":true}","panelsJSON":"[{\"version\":\"7.8.0\",\"gridData\":{\"h\":15,\"i\":\"885a2773-bf7e-4c93-a746-dd400ad3b25f\",\"w\":24,\"x\":0,\"y\":0},\"panelIndex\":\"885a2773-bf7e-4c93-a746-dd400ad3b25f\",\"embeddableConfig\":{},\"panelRefName\":\"panel_0\"},{\"version\":\"7.8.0\",\"gridData\":{\"h\":15,\"i\":\"e7f9f670-3866-4795-a83e-3b208990262d\",\"w\":24,\"x\":24,\"y\":15},\"panelIndex\":\"e7f9f670-3866-4795-a83e-3b208990262d\",\"embeddableConfig\":{},\"panelRefName\":\"panel_1\"},{\"version\":\"7.8.0\",\"gridData\":{\"h\":15,\"i\":\"0b349901-c6f5-4a35-ad44-5331d75ceb8c\",\"w\":24,\"x\":24,\"y\":0},\"panelIndex\":\"0b349901-c6f5-4a35-ad44-5331d75ceb8c\",\"embeddableConfig\":{},\"panelRefName\":\"panel_2\"},{\"version\":\"7.8.0\",\"gridData\":{\"x\":0,\"y\":30,\"w\":48,\"h\":16,\"i\":\"7ad18ce1-1916-4d5b-abe8-340571feb151\"},\"panelIndex\":\"7ad18ce1-1916-4d5b-abe8-340571feb151\",\"embeddableConfig\":{},\"panelRefName\":\"panel_3\"},{\"version\":\"7.8.0\",\"gridData\":{\"x\":0,\"y\":15,\"w\":24,\"h\":15,\"i\":\"631f6738-69c3-4637-b9cb-82d2a8cc1fae\"},\"panelIndex\":\"631f6738-69c3-4637-b9cb-82d2a8cc1fae\",\"embeddableConfig\":{},\"panelRefName\":\"panel_4\"}]","timeRestore":false,"title":"Comparison synthesis dashboard","version":1},"id":"c24f4c50-e778-11ea-bb67-9b8ce9c25c00","migrationVersion":{"dashboard":"7.3.0"},"references":[{"id":"23b0eb40-e60a-11ea-bdc0-1fe1db0b9cb6","name":"panel_0","type":"visualization"},{"id":"8c14a8b0-e6d8-11ea-a933-05dd8fc4d76f","name":"panel_1","type":"visualization"},{"id":"8c87f800-edeb-11ea-a706-3fce679b2102","name":"panel_2","type":"visualization"},{"id":"38cecb10-eded-11ea-a706-3fce679b2102","name":"panel_3","type":"visualization"},{"id":"1b471fa0-e6b0-11ea-bdc0-1fe1db0b9cb6","name":"panel_4","type":"visualization"}],"type":"dashboard","updated_at":"2020-09-03T15:32:16.951Z","version":"WzExODYsNV0="} +{"attributes":{"description":"NDR / PDR scatter plot - in Gbps","kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"language\":\"kuery\",\"query\":\"\"},\"filter\":[{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"type.keyword\",\"negate\":true,\"params\":{\"query\":\"single_run\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index\"},\"query\":{\"match_phrase\":{\"type.keyword\":\"single_run\"}}},{\"$state\":{\"store\":\"appState\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"frame_size\",\"negate\":true,\"params\":{\"query\":\"IMIX\"},\"type\":\"phrase\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index\"},\"query\":{\"match_phrase\":{\"frame_size\":\"IMIX\"}}},{\"$state\":{\"store\":\"appState\"},\"exists\":{\"field\":\"theoretical_tx_rate_bps\"},\"meta\":{\"alias\":null,\"disabled\":false,\"key\":\"theoretical_tx_rate_bps\",\"negate\":false,\"type\":\"exists\",\"value\":\"exists\",\"indexRefName\":\"kibanaSavedObjectMeta.searchSourceJSON.filter[2].meta.index\"}}]}"},"title":"[NDR] Capacity in Gbps with theoretical max value - Scatter plot","uiStateJSON":"{}","version":1,"visState":"{\"type\":\"vega\",\"aggs\":[],\"params\":{\"spec\":\"{\\n $schema: \\\"https://vega.github.io/schema/vega-lite/v2.json\\\"\\n title: \\\"Capacity in Gbps - 0,001% loss ratio\\\"\\n data: {\\n url: {\\n %context%: true\\n %timefield%: \\\"@timestamp\\\"\\n index: resu*\\n body: {\\n _source: [\\\"@timestamp\\\", \\\"_source\\\", \\\"offered_tx_rate_bps\\\", \\\"theoretical_tx_rate_bps\\\", \\\"flow_count\\\", \\\"frame_size\\\", \\\"user_label\\\"]\\n },\\n size: 10000\\n },\\n format: { property: \\\"hits.hits\\\" }\\n },\\n transform: [\\n { calculate: \\\"datum._source['offered_tx_rate_bps'] / 1000000000\\\" as: \\\"offered_tx_rate_bps\\\"},\\n { calculate: \\\"datum._source['theoretical_tx_rate_bps'] / 1000000000\\\" as: \\\"theoretical_tx_rate_bps\\\"},\\n { calculate: \\\"datum._source['flow_count']\\\" as: \\\"flow_count\\\"},\\n { calculate: \\\"isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])\\\" as: \\\"frame_size\\\"}\\n { calculate: \\\"datum._source['user_label'] + '-' + datum._source['flow_count']\\\" as: \\\"label\\\"}\\n ],\\n center: true,\\n hconcat: [\\n {\\n width:10,\\n selection: {\\n legendSel: {\\n type: \\\"multi\\\",\\n encodings: [ \\\"color\\\", \\\"shape\\\" ],\\n toggle: \\\"event.shiftKey\\\"\\n }\\n },\\n encoding: {\\n y: {\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n axis: {\\n title: \\\"\\\",\\n domain: false,\\n ticks: false,\\n offset: 10\\n },\\n },\\n color: {\\n condition: {\\n selection: \\\"legendSel\\\",\\n field: \\\"label\\\",\\n type: \\\"nominal\\\",\\n legend: null\\n },\\n value: \\\"lightgrey\\\"\\n }\\n },\\n mark: {\\n type: \\\"square\\\",\\n size: 120,\\n opacity: 1\\n }\\n },\\n {\\n layer: [\\n {\\n mark: {\\n type: \\\"line\\\",\\n tooltip: true\\n },\\n encoding: {\\n x: { field: \\\"frame_size\\\", type: \\\"quantitative\\\", title: \\\"Frame size (bytes)\\\", axis: {offset: 10} }\\n y: { field: \\\"theoretical_tx_rate_bps\\\", type: \\\"quantitative\\\", title: \\\"Offered load (Gbps)\\\" , axis: {offset: 10} }\\n strokeDash: {\\\"field\\\": \\\"theoretical_tx_rate_bps\\\", \\\"type\\\": \\\"nominal\\\"}\\n tooltip: [{\\\"field\\\": \\\"theoretical_tx_rate_bps\\\", \\\"type\\\": \\\"quantitative\\\", title: \\\"theoretical max capacity\\\"}],\\n color: { \\\"value\\\": \\\"red\\\"}\\n }\\n },\\n {\\n width:500,\\n height:280,\\n transform: [\\n {filter: { selection: \\\"legendSel\\\"}}\\n ],\\n mark: {\\n \\\"type\\\": \\\"point\\\",\\n \\\"tooltip\\\": true\\n },\\n selection: {\\n grid: {\\n type: \\\"interval\\\",\\n resolve: \\\"global\\\",\\n bind: \\\"scales\\\",\\n translate: \\\"[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!\\\",\\n zoom: \\\"wheel![!event.shiftKey]\\\"\\n },\\n pts: {\\n type: \\\"single\\\",\\n fields: [\\\"label\\\"]\\n }\\n },\\n encoding: {\\n x: {\\n field: \\\"frame_size\\\",\\n title: \\\"Frame size (bytes)\\\",\\n type: \\\"quantitative\\\"\\n }\\n y: {\\n field: \\\"offered_tx_rate_bps\\\",\\n title: \\\"Offered load (Gbps)\\\",\\n type: \\\"quantitative\\\"\\n }\\n color: {\\n field: \\\"label\\\", \\\"type\\\": \\\"nominal\\\",\\n \\\"legend\\\": null\\n }\\n shape: {\\n field: \\\"flow_count\\\",\\n type: \\\"nominal\\\"\\n }\\n tooltip: {\\n \\\"field\\\": \\\"offered_tx_rate_bps\\\",\\n \\\"title\\\": \\\"Offered load (Gbps)\\\",\\n \\\"type\\\": \\\"quantitative\\\"\\n }\\n }\\n }\\n ]\\n }\\n ]\\n}\"},\"title\":\"[NDR] Capacity in Gbps with theoretical max value - Scatter plot\"}"},"id":"eea11370-f82a-11ea-8203-0fee5ecd414e","migrationVersion":{"visualization":"7.8.0"},"references":[{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[0].meta.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[1].meta.index","type":"index-pattern"},{"id":"e0939790-e78f-11ea-8ca2-35af0cc4217c","name":"kibanaSavedObjectMeta.searchSourceJSON.filter[2].meta.index","type":"index-pattern"}],"type":"visualization","updated_at":"2020-10-06T12:49:41.894Z","version":"WzE2NDcsMTJd"} +{"attributes":{"description":"","hits":0,"kibanaSavedObjectMeta":{"searchSourceJSON":"{\"query\":{\"language\":\"kuery\",\"query\":\"\"},\"filter\":[]}"},"optionsJSON":"{\"hidePanelTitles\":false,\"useMargins\":true}","panelsJSON":"[{\"version\":\"7.8.0\",\"gridData\":{\"h\":10,\"i\":\"d806469f-2ea3-4b45-99d8-acc7f09ee8f5\",\"w\":48,\"x\":0,\"y\":30},\"panelIndex\":\"d806469f-2ea3-4b45-99d8-acc7f09ee8f5\",\"embeddableConfig\":{},\"panelRefName\":\"panel_0\"},{\"version\":\"7.8.0\",\"gridData\":{\"x\":0,\"y\":0,\"w\":24,\"h\":15,\"i\":\"dfc3abc1-8fcf-486f-8b8e-fa8956a4299b\"},\"panelIndex\":\"dfc3abc1-8fcf-486f-8b8e-fa8956a4299b\",\"embeddableConfig\":{},\"panelRefName\":\"panel_1\"},{\"version\":\"7.8.0\",\"gridData\":{\"x\":24,\"y\":0,\"w\":24,\"h\":15,\"i\":\"82bcc455-a312-49dc-b9b7-7414d53cfdd5\"},\"panelIndex\":\"82bcc455-a312-49dc-b9b7-7414d53cfdd5\",\"embeddableConfig\":{},\"panelRefName\":\"panel_2\"},{\"version\":\"7.8.0\",\"gridData\":{\"x\":0,\"y\":15,\"w\":24,\"h\":15,\"i\":\"eb3a0dcc-e55a-4f0b-87e7-70b15f864bf2\"},\"panelIndex\":\"eb3a0dcc-e55a-4f0b-87e7-70b15f864bf2\",\"embeddableConfig\":{},\"panelRefName\":\"panel_3\"},{\"version\":\"7.8.0\",\"gridData\":{\"x\":24,\"y\":15,\"w\":24,\"h\":15,\"i\":\"e6c3eeb1-5a7e-4a3e-89d1-c61193f31ccf\"},\"panelIndex\":\"e6c3eeb1-5a7e-4a3e-89d1-c61193f31ccf\",\"embeddableConfig\":{},\"panelRefName\":\"panel_4\"}]","timeRestore":false,"title":"Synthesis Max Throughput - NDR (0.001% loss ratio) with max theoretical value","version":1},"id":"c61120f0-07d2-11eb-92f0-3518df6b43ff","migrationVersion":{"dashboard":"7.3.0"},"references":[{"id":"0d2c4070-e6e3-11ea-a933-05dd8fc4d76f","name":"panel_0","type":"visualization"},{"id":"966a5990-0712-11eb-92f0-3518df6b43ff","name":"panel_1","type":"visualization"},{"id":"eea11370-f82a-11ea-8203-0fee5ecd414e","name":"panel_2","type":"visualization"},{"id":"a523c930-07d0-11eb-92f0-3518df6b43ff","name":"panel_3","type":"visualization"},{"id":"8eb9cd00-07d2-11eb-92f0-3518df6b43ff","name":"panel_4","type":"visualization"}],"type":"dashboard","updated_at":"2020-10-06T12:52:55.971Z","version":"WzE2NTUsMTJd"} +{"attributes":{"description":"","filters":[{"$state":{"store":"appState"},"meta":{"alias":null,"disabled":false,"index":"39955f20-78ac-11ea-ae77-8339e5fd808c","key":"flow_count","negate":false,"params":{"query":"2"},"type":"phrase"},"query":{"match_phrase":{"flow_count":"2"}}}],"query":{"language":"kuery","query":""},"title":"flow count 2"},"id":"flow count 2","references":[],"type":"query","updated_at":"2020-08-26T09:25:58.265Z","version":"WzY0Miw0XQ=="} +{"attributes":{"description":"","filters":[{"$state":{"store":"appState"},"meta":{"alias":null,"disabled":false,"index":"39955f20-78ac-11ea-ae77-8339e5fd808c","key":"user_label.keyword","negate":false,"params":["oslodu_oiaas_g4r1_ovsdpdk_tc20_ndr4latency","icnfvbench_none_none_loopback_tc3"],"type":"phrases","value":"oslodu_oiaas_g4r1_ovsdpdk_tc20_ndr4latency, icnfvbench_none_none_loopback_tc3"},"query":{"bool":{"minimum_should_match":1,"should":[{"match_phrase":{"user_label.keyword":"oslodu_oiaas_g4r1_ovsdpdk_tc20_ndr4latency"}},{"match_phrase":{"user_label.keyword":"icnfvbench_none_none_loopback_tc3"}}]}}},{"$state":{"store":"appState"},"meta":{"alias":null,"disabled":false,"index":"39955f20-78ac-11ea-ae77-8339e5fd808c","key":"flow_count","negate":false,"params":["2","128"],"type":"phrases","value":"2, 128"},"query":{"bool":{"minimum_should_match":1,"should":[{"match_phrase":{"flow_count":"2"}},{"match_phrase":{"flow_count":"128"}}]}}}],"query":{"language":"kuery","query":""},"title":"test filter"},"id":"test filter","references":[],"type":"query","updated_at":"2020-08-26T13:13:10.130Z","version":"WzY3MSw0XQ=="} +{"exportedCount":24,"missingRefCount":0,"missingReferences":[]} \ No newline at end of file diff --git a/kibana/visualizations/ndr_capacity_gbps_line_chart.json b/kibana/visualizations/ndr_capacity_gbps_line_chart.json new file mode 100644 index 0000000..cb696ba --- /dev/null +++ b/kibana/visualizations/ndr_capacity_gbps_line_chart.json @@ -0,0 +1,95 @@ +{ + $schema: https: //vega.github.io/schema/vega-lite/v2.json + title: "Capacity in Gbps - 0,001% loss ratio" + data: { + url: { + %context%: true + %timefield%: "@timestamp" + index: resu* + body: { + _source: ["@timestamp", "_source", "offered_tx_rate_bps", "flow_count", "frame_size", "user_label"] + }, + size: 10000 + }, + format: { property: "hits.hits" } + }, + transform: [ + { calculate: "datum._source['offered_tx_rate_bps'] / 1000000000" as: "offered_load_gbps"}, + { calculate: "datum._source['flow_count']" as: "flow_count"}, + { calculate: "isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])" as: "frame_size"}, + { calculate: "datum._source['user_label'] + '-' + datum._source['flow_count']" as: "label"} + { aggregate: [{op: "max", field: "offered_load_gbps", as: "max_offered_load_gbps"}], groupby: ["frame_size", "label","flow_count"]} + ], + center: true, + hconcat: [ + { + width:10, + selection: { + legendSel: { + type: "multi", + encodings: [ "color", "shape" ], + toggle: "event.shiftKey" + } + }, + encoding: { + y: { + field: "label", + type: "nominal", + axis: { + title: "", + domain: false, + ticks: false, + offset: 10 + }, + }, + color: { + condition: { + selection: "legendSel", + field: "label", + type: "nominal", + legend: null + }, + value: "lightgrey" + } + }, + mark: { + type: "square", + size: 120, + opacity: 1 + } + }, + { + width:500, + height:280, + transform: [ + {filter: { selection: "legendSel"}} + ], + mark: { + type: "line", + tooltip: true, + point: true + }, + selection: { + grid: { + type: "interval", + resolve: "global", + bind: "scales", + translate: "[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!", + zoom: "wheel![!event.shiftKey]" + }, + pts: { + type: "single", + fields: ["label"] + } + }, + encoding: { + x: { field: "frame_size", type: "quantitative", title: "Frame size (bytes)", axis: {offset: 10} } + y: { field: "max_offered_load_gbps", type: "quantitative", title: "Offered load (Gbps)" , axis: {offset: 10} } + color: {field: "label", "type": "nominal", + "legend": null} + shape: {field: "flow_count", type: "nominal"} + tooltip: {"field": "max_offered_load_gbps", "type": "quantitative"} + } + } + ] +} \ No newline at end of file diff --git a/kibana/visualizations/ndr_capacity_gbps_scatter_plot.json b/kibana/visualizations/ndr_capacity_gbps_scatter_plot.json new file mode 100644 index 0000000..9908e9d --- /dev/null +++ b/kibana/visualizations/ndr_capacity_gbps_scatter_plot.json @@ -0,0 +1,108 @@ +{ + $schema: "https://vega.github.io/schema/vega-lite/v2.json" + title: "Capacity in Gbps - 0.001% loss ratio" + data: { + url: { + %context%: true + %timefield%: "@timestamp" + index: resu* + body: { + _source: ["@timestamp", "_source", "offered_tx_rate_bps", "flow_count", "frame_size", "user_label"] + }, + size: 10000 + }, + format: { property: "hits.hits" } + }, + transform: [ + { calculate: "datum._source['offered_tx_rate_bps'] / 1000000000" as: "Offered load (Gbps)"}, + { calculate: "datum._source['flow_count']" as: "Flow count"}, + { calculate: "isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])" as: "Frame size (bytes)"} + { calculate: "datum._source['user_label'] + '-' + datum._source['flow_count']" as: "label"} + ], + center: true, + hconcat: [ + { + width:10, + selection: { + legendSel: { + type: "multi", + encodings: [ "color", "shape" ], + toggle: "event.shiftKey" + } + }, + encoding: { + y: { + field: "label", + type: "nominal", + axis: { + title: "", + domain: false, + ticks: false, + offset: 10 + }, + }, + color: { + condition: { + selection: "legendSel", + field: "label", + type: "nominal", + legend: null + }, + value: "lightgrey" + } + }, + mark: { + type: "square", + size: 120, + opacity: 1 + } + }, + { + width:500, + height:280, + transform: [ + {filter: { selection: "legendSel"}} + + ], + mark: { + "type": "point", + "tooltip": true + }, + selection: { + grid: { + type: "interval", + resolve: "global", + bind: "scales", + translate: "[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!", + zoom: "wheel![!event.shiftKey]" + }, + pts: { + type: "single", + fields: ["label"] + } + }, + encoding: { + x: { + field: "Frame size (bytes)", + type: "quantitative" + } + y: { + field: "Offered load (Gbps)", + type: "quantitative" + } + color: { + field: "label", "type": "nominal", + "legend": null + } + shape: { + field: "Flow count", + type: "nominal" + } + tooltip: { + "field": "Offered load (Gbps)", + "type": "quantitative" + } + } + } + ] +} \ No newline at end of file diff --git a/kibana/visualizations/ndr_capacity_gbps_theoretical_line_chart.json b/kibana/visualizations/ndr_capacity_gbps_theoretical_line_chart.json new file mode 100644 index 0000000..1ff4d23 --- /dev/null +++ b/kibana/visualizations/ndr_capacity_gbps_theoretical_line_chart.json @@ -0,0 +1,114 @@ +{ + $schema: https: //vega.github.io/schema/vega-lite/v2.json + title: "Capacity in Gbps - 0,001% loss ratio" + data: { + url: { + %context%: true + %timefield%: "@timestamp" + index: resu* + body: { + _source: ["@timestamp", "_source", "offered_tx_rate_bps", "theoretical_tx_rate_bps", "flow_count", "frame_size", "user_label"] + }, + size: 10000 + }, + format: { property: "hits.hits" } + }, + transform: [ + { calculate: "datum._source['offered_tx_rate_bps'] / 1000000000" as: "offered_load_gbps"}, + { calculate: "datum._source['theoretical_tx_rate_bps'] / 1000000000" as: "theoretical_tx_rate_bps"}, + { calculate: "datum._source['flow_count']" as: "flow_count"}, + { calculate: "isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])" as: "frame_size"}, + { calculate: "datum._source['user_label'] + '-' + datum._source['flow_count']" as: "label"} + { aggregate: [{op: "max", field: "offered_load_gbps", as: "max_offered_load_gbps"}, {op: "max", field: "theoretical_tx_rate_bps", as: "theoretical_tx_rate_bps"}], groupby: ["frame_size", "label","flow_count"]} + ], + center: true, + hconcat: [ + { + width:10, + selection: { + legendSel: { + type: "multi", + encodings: [ "color", "shape" ], + toggle: "event.shiftKey" + } + }, + encoding: { + y: { + field: "label", + type: "nominal", + axis: { + title: "", + domain: false, + ticks: false, + offset: 10 + }, + }, + color: { + condition: { + selection: "legendSel", + field: "label", + type: "nominal", + legend: null + }, + value: "lightgrey" + } + }, + mark: { + type: "square", + size: 120, + opacity: 1 + } + }, + { + layer: [ + { + mark: { + type: "line", + tooltip: true, + point: true + }, + encoding: { + x: { field: "frame_size", type: "quantitative", title: "Frame size (bytes)", axis: {offset: 10} } + y: { field: "theoretical_tx_rate_bps", type: "quantitative", title: "Theoretical rate (Gbps)" , axis: {offset: 10} } + strokeDash: {"field": "theoretical_tx_rate_bps", "type": "nominal"} + tooltip: [{"field": "theoretical_tx_rate_bps", "type": "quantitative", title: "theoretical max capacity"}], + color: { "value": "red"} + } + }, + { + width:500, + height:280, + transform: [ + {filter: { selection: "legendSel"}} + ], + mark: { + type: "line", + tooltip: true, + point: true + }, + selection: { + grid: { + type: "interval", + resolve: "global", + bind: "scales", + translate: "[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!", + zoom: "wheel![!event.shiftKey]" + }, + pts: { + type: "single", + fields: ["Label"] + } + }, + encoding: { + x: { field: "frame_size", type: "quantitative", title: "Frame size (bytes)", axis: {offset: 10} } + y: { field: "max_offered_load_gbps", type: "quantitative", title: "Offered load (Gbps)" , axis: {offset: 10} } + color: {field: "label", "type": "nominal", + "legend": null} + shape: {field: "flow_count", type: "nominal"} + tooltip: {"field": "max_offered_load_gbps", "type": "quantitative"} + } + } + ] + } + ] +} \ No newline at end of file diff --git a/kibana/visualizations/ndr_capacity_gbps_theoretical_scatter_plot.json b/kibana/visualizations/ndr_capacity_gbps_theoretical_scatter_plot.json new file mode 100644 index 0000000..55a48ff --- /dev/null +++ b/kibana/visualizations/ndr_capacity_gbps_theoretical_scatter_plot.json @@ -0,0 +1,128 @@ +{ + $schema: "https://vega.github.io/schema/vega-lite/v2.json" + title: "Capacity in Gbps - 0,001% loss ratio" + data: { + url: { + %context%: true + %timefield%: "@timestamp" + index: resu* + body: { + _source: ["@timestamp", "_source", "offered_tx_rate_bps", "theoretical_tx_rate_bps", "flow_count", "frame_size", "user_label"] + }, + size: 10000 + }, + format: { property: "hits.hits" } + }, + transform: [ + { calculate: "datum._source['offered_tx_rate_bps'] / 1000000000" as: "offered_tx_rate_bps"}, + { calculate: "datum._source['theoretical_tx_rate_bps'] / 1000000000" as: "theoretical_tx_rate_bps"}, + { calculate: "datum._source['flow_count']" as: "flow_count"}, + { calculate: "isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])" as: "frame_size"} + { calculate: "datum._source['user_label'] + '-' + datum._source['flow_count']" as: "label"} + ], + center: true, + hconcat: [ + { + width:10, + selection: { + legendSel: { + type: "multi", + encodings: [ "color", "shape" ], + toggle: "event.shiftKey" + } + }, + encoding: { + y: { + field: "label", + type: "nominal", + axis: { + title: "", + domain: false, + ticks: false, + offset: 10 + }, + }, + color: { + condition: { + selection: "legendSel", + field: "label", + type: "nominal", + legend: null + }, + value: "lightgrey" + } + }, + mark: { + type: "square", + size: 120, + opacity: 1 + } + }, + { + layer: [ + { + mark: { + type: "line", + tooltip: true + }, + encoding: { + x: { field: "frame_size", type: "quantitative", title: "Frame size (bytes)", axis: {offset: 10} } + y: { field: "theoretical_tx_rate_bps", type: "quantitative", title: "Offered load (Gbps)" , axis: {offset: 10} } + strokeDash: {"field": "theoretical_tx_rate_bps", "type": "nominal"} + tooltip: [{"field": "theoretical_tx_rate_bps", "type": "quantitative", title: "theoretical max capacity"}], + color: { "value": "red"} + } + }, + { + width:500, + height:280, + transform: [ + {filter: { selection: "legendSel"}} + ], + mark: { + "type": "point", + "tooltip": true + }, + selection: { + grid: { + type: "interval", + resolve: "global", + bind: "scales", + translate: "[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!", + zoom: "wheel![!event.shiftKey]" + }, + pts: { + type: "single", + fields: ["label"] + } + }, + encoding: { + x: { + field: "frame_size", + title: "Frame size (bytes)", + type: "quantitative" + } + y: { + field: "offered_tx_rate_bps", + title: "Offered load (Gbps)", + type: "quantitative" + } + color: { + field: "label", "type": "nominal", + "legend": null + } + shape: { + field: "flow_count", + type: "nominal" + } + tooltip: { + "field": "offered_tx_rate_bps", + "title": "Offered load (Gbps)", + "type": "quantitative" + } + } + } + ] + } + ] +} \ No newline at end of file diff --git a/kibana/visualizations/ndr_capacity_pps_line_chart.json b/kibana/visualizations/ndr_capacity_pps_line_chart.json new file mode 100644 index 0000000..ad79caa --- /dev/null +++ b/kibana/visualizations/ndr_capacity_pps_line_chart.json @@ -0,0 +1,98 @@ +{ + $schema: https: //vega.github.io/schema/vega-lite/v2.json + title: "Capacity in Mpps - 0,001% loss ratio" + data: { + url: { + %context%: true + %timefield%: "@timestamp" + index: resu* + body: { + _source: ["@timestamp", "_source", "rate_pps", "flow_count", "frame_size", "user_label", "type"] + }, + size: 10000 + }, + format: { property: "hits.hits" } + }, + + transform: [ + { calculate: "datum._source['rate_pps'] / 1000000" as: "offered_load_pps"}, + { calculate: "datum._source['flow_count']" as: "flow_count"}, + { calculate: "isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])" as: "frame_size"}, + { calculate: "datum._source['user_label'] + '-' + datum._source['flow_count']" as: "label"} + { aggregate: [{op: "max", field: "offered_load_pps", as: "max_offered_load_pps"}], groupby: ["frame_size", "label","flow_count"]} + + ], + center: true, + hconcat: [ + { + width:10, + selection: { + legendSel: { + type: "multi", + encodings: [ "color", "shape" ], + toggle: "event.shiftKey" + } + }, + encoding: { + y: { + field: "label", + type: "nominal", + axis: { + title: "", + domain: false, + ticks: false, + offset: 10 + }, + }, + color: { + condition: { + selection: "legendSel", + field: "label", + type: "nominal", + legend: null + }, + value: "lightgrey" + } + }, + mark: { + type: "square", + size: 120, + opacity: 1 + } + }, + { + width:500, + height:280, + transform: [ + {filter: { selection: "legendSel"}} + + ], + mark: { + type: "line", + tooltip: true, + point: true + }, + selection: { + grid: { + type: "interval", + resolve: "global", + bind: "scales", + translate: "[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!", + zoom: "wheel![!event.shiftKey]" + }, + pts: { + type: "single", + fields: ["Label"] + } + }, + encoding: { + x: { field: "frame_size", type: "quantitative", title: "Frame size (bytes)", axis: {offset: 10} } + y: { field: "max_offered_load_pps", type: "quantitative", title: "Offered load (Mpps)" , axis: {offset: 10} } + color: {field: "label", "type": "nominal", + "legend": null} + tooltip: {"field": "max_offered_load_pps", "type": "quantitative"}, + shape: {field: "flow_count", type: "nominal"} + } + } + ] +} \ No newline at end of file diff --git a/kibana/visualizations/ndr_capacity_pps_scatter_plot.json b/kibana/visualizations/ndr_capacity_pps_scatter_plot.json new file mode 100644 index 0000000..0bb8f2f --- /dev/null +++ b/kibana/visualizations/ndr_capacity_pps_scatter_plot.json @@ -0,0 +1,108 @@ +{ + $schema: "https://vega.github.io/schema/vega-lite/v2.json" + title: "Capacity in Mpps - 0,001% loss ratio" + data: { + url: { + %context%: true + %timefield%: "@timestamp" + index: resu* + body: { + _source: ["@timestamp", "_source", "rate_pps", "flow_count", "frame_size", "user_label"] + }, + size: 10000 + }, + format: { property: "hits.hits" } + }, + transform: [ + { calculate: "datum._source['rate_pps'] / 1000000" as: "Offered load (Mpps)"}, + { calculate: "datum._source['flow_count']" as: "Flow count"}, + { calculate: "isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])" as: "Frame size (bytes)"} + { calculate: "datum._source['user_label'] + '-' + datum._source['flow_count']" as: "label"} + ], + center: true, + hconcat: [ + { + width:10, + selection: { + legendSel: { + type: "multi", + encodings: [ "color", "shape" ], + toggle: "event.shiftKey" + } + }, + encoding: { + y: { + field: "label", + type: "nominal", + axis: { + title: "", + domain: false, + ticks: false, + offset: 10 + }, + }, + color: { + condition: { + selection: "legendSel", + field: "label", + type: "nominal", + legend: null + }, + value: "lightgrey" + } + }, + mark: { + type: "square", + size: 120, + opacity: 1 + } + }, + { + width:500, + height:280, + transform: [ + {filter: { selection: "legendSel"}} + + ], + mark: { + "type": "point", + "tooltip": true + }, + selection: { + grid: { + type: "interval", + resolve: "global", + bind: "scales", + translate: "[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!", + zoom: "wheel![!event.shiftKey]" + }, + pts: { + type: "single", + fields: ["label"] + } + }, + encoding: { + x: { + field: "Frame size (bytes)", + type: "quantitative" + } + y: { + field: "Offered load (Mpps)", + type: "quantitative" + } + color: { + field: "label", "type": "nominal", + "legend": null + } + shape: { + field: "Flow count", + type: "nominal" + } + tooltip: { + "field": "Offered load (Mpps)", + "type": "quantitative" + } + } + } + ] +} \ No newline at end of file diff --git a/kibana/visualizations/ndr_capacity_pps_theoretical_line_chart.json b/kibana/visualizations/ndr_capacity_pps_theoretical_line_chart.json new file mode 100644 index 0000000..00b9765 --- /dev/null +++ b/kibana/visualizations/ndr_capacity_pps_theoretical_line_chart.json @@ -0,0 +1,115 @@ +{ + $schema: https: //vega.github.io/schema/vega-lite/v2.json + title: "Capacity in Mpps - 0,001% loss ratio" + data: { + url: { + %context%: true + %timefield%: "@timestamp" + index: resu* + body: { + _source: ["@timestamp", "_source", "theoretical_tx_rate_pps", "rate_pps", "flow_count", "frame_size", "user_label", "type"] + }, + size: 10000 + }, + format: { property: "hits.hits" } + }, + + transform: [ + { calculate: "datum._source['rate_pps'] / 1000000" as: "offered_load_pps"}, + { calculate: "datum._source['theoretical_tx_rate_pps'] / 1000000" as: "theoretical_tx_rate_pps"}, + { calculate: "datum._source['flow_count']" as: "flow_count"}, + { calculate: "isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])" as: "frame_size"}, + { calculate: "datum._source['user_label'] + '-' + datum._source['flow_count']" as: "label"} + { aggregate: [{op: "max", field: "offered_load_pps", as: "max_offered_load_pps"}, {op: "max", field: "theoretical_tx_rate_pps", as: "theoretical_tx_rate_pps"}], groupby: ["frame_size", "label","flow_count"]} + + ], + center: true, + hconcat: [ + { + width:10, + selection: { + legendSel: { + type: "multi", + encodings: [ "color", "shape" ], + toggle: "event.shiftKey" + } + }, + encoding: { + y: { + field: "label", + type: "nominal", + axis: { + title: "", + domain: false, + ticks: false, + offset: 10 + }, + }, + color: { + condition: { + selection: "legendSel", + field: "label", + type: "nominal", + legend: null + }, + value: "lightgrey" + } + }, + mark: { + type: "square", + size: 120, + opacity: 1 + } + }, + { + layer: [{ + mark: { + type: "line", + tooltip: true, + point: true + }, + encoding: { + x: { field: "frame_size", type: "quantitative", title: "Frame size (bytes)", axis: {offset: 10} } + y: { field: "theoretical_tx_rate_pps", type: "quantitative", title: "Offered load (Mpps)" , axis: {offset: 10} } + strokeDash: {"field": "theoretical_tx_rate_pps", "type": "nominal"} + tooltip: [{"field": "theoretical_tx_rate_pps", "type": "quantitative", title: "theoretical max capacity"}], + color: { "value": "red"} + } + },{ + width:500, + height:280, + transform: [ + {filter: { selection: "legendSel"}} + + ],mark: { + type: "line", + tooltip: true, + point: true + }, + selection: { + grid: { + type: "interval", + resolve: "global", + bind: "scales", + translate: "[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!", + zoom: "wheel![!event.shiftKey]" + }, + pts: { + type: "single", + fields: ["Label"] + } + }, + encoding: { + x: { field: "frame_size", type: "quantitative", title: "Frame size (bytes)", axis: {offset: 10} } + y: { field: "max_offered_load_pps", type: "quantitative", title: "Offered load (Mpps)" , axis: {offset: 10} } + color: {field: "label", "type": "nominal", + "legend": null} + tooltip: {"field": "max_offered_load_pps", "type": "quantitative"}, + shape: {field: "flow_count", type: "nominal"} + } + } + ] + } + + ] +} \ No newline at end of file diff --git a/kibana/visualizations/ndr_capacity_pps_theoretical_scatter_plot.json b/kibana/visualizations/ndr_capacity_pps_theoretical_scatter_plot.json new file mode 100644 index 0000000..984a7f4 --- /dev/null +++ b/kibana/visualizations/ndr_capacity_pps_theoretical_scatter_plot.json @@ -0,0 +1,128 @@ +{ + $schema: "https://vega.github.io/schema/vega-lite/v2.json" + title: "Capacity in Mpps - 0,001% loss ratio" + data: { + url: { + %context%: true + %timefield%: "@timestamp" + index: resu* + body: { + _source: ["@timestamp", "_source", "rate_pps", "theoretical_tx_rate_pps", "flow_count", "frame_size", "user_label"] + }, + size: 10000 + }, + format: { property: "hits.hits" } + }, + transform: [ + { calculate: "datum._source['rate_pps'] / 1000000" as: "rate_pps"}, + { calculate: "datum._source['theoretical_tx_rate_pps'] / 1000000" as: "theoretical_tx_rate_pps"}, + { calculate: "datum._source['flow_count']" as: "flow_count"}, + { calculate: "isNaN(toNumber(datum._source['frame_size'])) ? 362 : toNumber(datum._source['frame_size'])" as: "frame_size"} + { calculate: "datum._source['user_label'] + '-' + datum._source['flow_count']" as: "label"} + ], + center: true, + hconcat: [ + { + width:10, + selection: { + legendSel: { + type: "multi", + encodings: [ "color", "shape" ], + toggle: "event.shiftKey" + } + }, + encoding: { + y: { + field: "label", + type: "nominal", + axis: { + title: "", + domain: false, + ticks: false, + offset: 10 + }, + }, + color: { + condition: { + selection: "legendSel", + field: "label", + type: "nominal", + legend: null + }, + value: "lightgrey" + } + }, + mark: { + type: "square", + size: 120, + opacity: 1 + } + }, + { + layer: [ + { + mark: { + type: "line", + tooltip: true + }, + encoding: { + x: { field: "frame_size", type: "quantitative", title: "Frame size (bytes)", axis: {offset: 10} } + y: { field: "theoretical_tx_rate_pps", type: "quantitative", title: "Offered load (Mpps)" , axis: {offset: 10} } + strokeDash: {"field": "theoretical_tx_rate_pps", "type": "nominal"} + tooltip: [{"field": "theoretical_tx_rate_pps", "type": "quantitative", title: "theoretical max capacity"}], + color: { "value": "red"} + } + }, + { + width:500, + height:280, + transform: [ + {filter: { selection: "legendSel"}} + ], + mark: { + "type": "point", + "tooltip": true + }, + selection: { + grid: { + type: "interval", + resolve: "global", + bind: "scales", + translate: "[mousedown[!event.shiftKey], window:mouseup] > window:mousemove!", + zoom: "wheel![!event.shiftKey]" + }, + pts: { + type: "single", + fields: ["label"] + } + }, + encoding: { + x: { + field: "frame_size", + title: "Frame size (bytes)", + type: "quantitative" + } + y: { + field: "rate_pps", + title: "Offered load (Mpps)", + type: "quantitative" + } + color: { + field: "label", "type": "nominal", + "legend": null + } + shape: { + field: "flow_count", + type: "nominal" + } + tooltip: { + "field": "rate_pps", + "title": "Offered load (Mpps)", + "type": "quantitative" + } + } + } + ] + } + ] +} \ No newline at end of file -- 2.16.6