aboutsummaryrefslogtreecommitdiffstats
path: root/resources
diff options
context:
space:
mode:
authorpmikus <pmikus@cisco.com>2021-08-23 12:58:47 +0000
committerPeter Mikus <pmikus@cisco.com>2021-08-24 13:04:08 +0000
commitf352e4ff6f74bb8dcdc85241c5a92c6f0da1fb76 (patch)
tree5fea8301276e07f836a4ac328fb0c6470f2af974 /resources
parent55372c91ac0c59065f3d8634c686efd0809a85aa (diff)
Telemetry: vpp device
Signed-off-by: pmikus <pmikus@cisco.com> Change-Id: I80efb278cf824dd8b1d38bb3ff3df43366e7295a
Diffstat (limited to 'resources')
-rw-r--r--resources/libraries/robot/shared/default.robot28
-rw-r--r--resources/libraries/robot/shared/test_teardown.robot9
-rw-r--r--resources/templates/telemetry/vpp_test_teardown.yaml154
3 files changed, 161 insertions, 30 deletions
diff --git a/resources/libraries/robot/shared/default.robot b/resources/libraries/robot/shared/default.robot
index 7c013d78e7..93aa3976a2 100644
--- a/resources/libraries/robot/shared/default.robot
+++ b/resources/libraries/robot/shared/default.robot
@@ -93,34 +93,6 @@
| | # Parens are there to perform the call.
| | Run Keyword If | $resetter | Evaluate | $resetter()
-| Verify statistic commands
-| | [Documentation]
-| | ... | Execute several commands related to stats.
-| | ... | To be used by "stats" device tests,
-| | ... | as other device tests do not interact with stats.
-| |
-| | ... | The commands should also cover frequently used
-| | ... | PAPI (non-stats) commands and CLI commands.
-| |
-| | ${results}= | Create List
-| | ${status} | ${value}= | Run Keyword And Ignore Error
-| | ... | VPP Show Runtime On All DUTs | ${nodes}
-| | Append To List | ${results} | ${status}
-| | ${status} | ${value}= | Run Keyword And Ignore Error
-| | ... | Show Statistics On All DUTs | ${nodes}
-| | Append To List | ${results} | ${status}
-| | ${status} | ${value}= | Run Keyword And Ignore Error
-| | ... | Show Event Logger On All DUTs | ${nodes}
-| | Append To List | ${results} | ${status}
-| | ${status} | ${value}= | Run Keyword And Ignore Error
-| | ... | VPP Clear Runtime On All DUTs | ${nodes}
-| | Append To List | ${results} | ${status}
-| | ${status} | ${value}= | Run Keyword And Ignore Error
-| | ... | Clear Statistics On All DUTs | ${nodes}
-| | Append To List | ${results} | ${status}
-| | Should Not Contain Match | ${results} | FAIL
-| | ... | msg=At least one of statistic commands failed!
-
| Configure crypto device on all DUTs
| | [Documentation] | Verify if Crypto QAT device virtual functions are
| | ... | initialized on all DUTs. If parameter force_init is set to True, then
diff --git a/resources/libraries/robot/shared/test_teardown.robot b/resources/libraries/robot/shared/test_teardown.robot
index 977a87d5a6..3fe5e6a8ee 100644
--- a/resources/libraries/robot/shared/test_teardown.robot
+++ b/resources/libraries/robot/shared/test_teardown.robot
@@ -170,13 +170,18 @@
| |
| | Show Packet Trace on All DUTs | ${nodes}
+| Additional Test Tear Down Action For telemetry
+| | [Documentation]
+| | ... | Additional teardown for tests which uses telemetry reads.
+| |
+| | Run Telemetry On All DUTs
+| | ... | ${nodes} | profile=${telemetry_profile}.yaml
+
| Additional Test Tear Down Action For performance
| | [Documentation]
| | ... | Additional teardown for tests which uses performance measurement.
| | ... | Optionally, call \${resetter} (if defined) to reset DUT state.
| |
-| | ... | TODO: Document what test variables are required or optional.
-| |
| | Run Keyword If Test Passed | Return From Keyword
| | ${use_latency} = | Get Use Latency
| | ${rate_for_teardown} = | Get Rate For Teardown
diff --git a/resources/templates/telemetry/vpp_test_teardown.yaml b/resources/templates/telemetry/vpp_test_teardown.yaml
new file mode 100644
index 0000000000..a1372da19a
--- /dev/null
+++ b/resources/templates/telemetry/vpp_test_teardown.yaml
@@ -0,0 +1,154 @@
+---
+logging:
+ version: 1
+ formatters:
+ console:
+ format: '%(asctime)s - %(name)s - %(message)s'
+ prom:
+ format: '%(message)s'
+ handlers:
+ console:
+ class: logging.StreamHandler
+ level: INFO
+ formatter: console
+ stream: ext://sys.stdout
+ prom:
+ class: logging.handlers.RotatingFileHandler
+ level: INFO
+ formatter: prom
+ filename: /tmp/metric.prom
+ mode: w
+ loggers:
+ prom:
+ handlers: [prom]
+ level: INFO
+ propagate: False
+ root:
+ level: INFO
+ handlers: [console]
+scheduler:
+ duration: 0
+programs:
+ - name: bundle_vpp
+ metrics:
+ counter:
+ - name: calls
+ documentation: Number of calls total
+ labelnames:
+ - name
+ - state
+ - thread_name
+ - thread_id
+ - thread_lcore
+ - name: vectors
+ documentation: Number of vectors total
+ labelnames:
+ - name
+ - state
+ - thread_name
+ - thread_id
+ - thread_lcore
+ - name: suspends
+ documentation: Number of suspends total
+ labelnames:
+ - name
+ - state
+ - thread_name
+ - thread_id
+ - thread_lcore
+ - name: clocks
+ documentation: Number of clocks total
+ labelnames:
+ - name
+ - state
+ - thread_name
+ - thread_id
+ - thread_lcore
+ - name: vectors_calls
+ documentation: Number of vectors per call
+ labelnames:
+ - name
+ - state
+ - thread_name
+ - thread_id
+ - thread_lcore
+ code: |
+ show runtime
+ - name: bundle_vpp
+ metrics:
+ counter:
+ - name: rx_packets
+ documentation: Number of received packets for interface
+ labelnames:
+ - name
+ - index
+ - name: rx_bytes
+ documentation: Number of received bytes for interface
+ labelnames:
+ - name
+ - index
+ - name: rx_error
+ documentation: Number of errors on interface
+ labelnames:
+ - name
+ - index
+ - name: tx_packets
+ documentation: Number of transitted packets for interface
+ labelnames:
+ - name
+ - index
+ - name: tx_bytes
+ documentation: Number of transitted bytes for interface
+ labelnames:
+ - name
+ - index
+ - name: tx_error
+ documentation: Number of errors on interface
+ labelnames:
+ - name
+ - index
+ - name: drops
+ documentation: Number of dropped packets for interface
+ labelnames:
+ - name
+ - index
+ - name: punt
+ documentation: Number of punted packets for interface
+ labelnames:
+ - name
+ - index
+ - name: ip4
+ documentation: Number of IPv4 packets for interface
+ labelnames:
+ - name
+ - index
+ - name: ip6
+ documentation: Number of IPv6 packets for interface
+ labelnames:
+ - name
+ - index
+ - name: rx_no_buf
+ documentation: Number of out of buffer RX packets on interface
+ labelnames:
+ - name
+ - index
+ - name: rx_miss
+ documentation: Number of missed RX packets on interface
+ labelnames:
+ - name
+ - index
+ code: |
+ show interface
+ - name: bundle_vpp
+ metrics:
+ counter:
+ - name: node_counter
+ documentation: Node counter
+ labelnames:
+ - name
+ - reason
+ - severity
+ - thread_name
+ - thread_id
+ code: |
+ show node counters verbose