2 Documentation Test suite for Cassandra DataStore PortStats Verification
3 Suite Teardown Stop Tsdr Suite
7 Library RequestsLibrary
8 Library ../../../libraries/Common.py
9 Resource ../../../libraries/KarafKeywords.robot
10 Resource ../../../libraries/TsdrUtils.robot
11 Variables ../../../variables/Variables.py
14 @{INTERFACE_METRICS} TransmittedPackets TransmittedBytes TransmitErrors TransmitDrops ReceivedPackets ReceivedBytes ReceiveOverRunError
15 ... ReceiveFrameError ReceiveErrors ReceiveDrops ReceiveCrcError CollisionCount
16 ${root_path} flow-capable-node-connector-statistics
17 @{xpath} ${root_path}/packets/transmitted ${root_path}/bytes/transmitted ${root_path}/transmit-errors ${root_path}/transmit-drops ${root_path}/packets/received ${root_path}/bytes/received ${root_path}/receive-over-run-error
18 ... ${root_path}/receive-frame-error ${root_path}/receive-errors ${root_path}/receive-drops ${root_path}/receive-crc-error ${root_path}/collision-count
19 @{CATEGORY} FlowStats FlowTableStats PortStats QueueStats
20 ${TSDR_PORTSTATS} tsdr:list PortStats
21 ${metric_path} metric_path
22 ${metric_val} metric_val
27 Verification of TSDR Cassandra Feature Installation
28 [Documentation] Install and Verify the TSDR Cassandra Features
29 COMMENT Install a Feature odl-tsdr-cassandra-all ${ODL_SYSTEM_IP} ${KARAF_SHELL_PORT} 60
30 Wait Until Keyword Succeeds 24x 10 sec Check Karaf Log Has Messages tsdr.openflow
31 Verify Feature Is Installed odl-tsdr-cassandra
32 Verify Feature Is Installed odl-tsdr-openflow-statistics-collector
35 Wait Until Keyword Succeeds 5x 30 sec Check Metric val \\d{5}
37 Storing Statistics from Openflow REST
38 [Documentation] Store openflow PortStats metrics using REST.
39 FOR ${item} IN @{xpath}
40 ${ret_val}= Set Variable -1
41 ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:1/node-connector/openflow:1:1 ${item}
42 Append To List ${xml_list} ${ret_val}
43 ${ret_val}= Set Variable -1
44 ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:1/node-connector/openflow:1:2 ${item}
45 Append To List ${xml_list} ${ret_val}
46 ${ret_val}= Set Variable -1
47 ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:1/node-connector/openflow:1:LOCAL ${item}
48 Append To List ${xml_list} ${ret_val}
49 ${ret_val}= Set Variable -1
50 ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:2/node-connector/openflow:2:1 ${item}
51 Append To List ${xml_list} ${ret_val}
52 ${ret_val}= Set Variable -1
53 ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:2/node-connector/openflow:2:2 ${item}
54 Append To List ${xml_list} ${ret_val}
55 ${ret_val}= Set Variable -1
56 ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:2/node-connector/openflow:2:3 ${item}
57 Append To List ${xml_list} ${ret_val}
58 ${ret_val}= Set Variable -1
59 ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:2/node-connector/openflow:2:LOCAL ${item}
60 Append To List ${xml_list} ${ret_val}
61 ${ret_val}= Set Variable -1
62 ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:3/node-connector/openflow:3:1 ${item}
63 Append To List ${xml_list} ${ret_val}
64 ${ret_val}= Set Variable -1
65 ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:3/node-connector/openflow:3:2 ${item}
66 Append To List ${xml_list} ${ret_val}
67 ${ret_val}= Set Variable -1
68 ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:3/node-connector/openflow:3:LOCAL ${item}
69 Append To List ${xml_list} ${ret_val}
70 ${ret_val}= Set Variable -1
74 Verification of InterfaceMetrics-Attributes on Cassandra Client
75 [Documentation] Verify the InterfaceMetrics has been updated on Cassandra Data Store
77 FOR ${list} IN @{INTERFACE_METRICS}
78 ${ret_val1}= Extract From DB Table grep NID=openflow:1 | grep DC=PORTSTATS | grep MN=${list} | grep RK=Node:openflow:1,NodeConnector:openflow:1:1
79 Append To List ${tsdr_list} ${ret_val1}
80 ${ret_val1}= Extract From DB Table grep NID=openflow:1 | grep DC=PORTSTATS | grep MN=${list} | grep RK=Node:openflow:1,NodeConnector:openflow:1:2
81 Append To List ${tsdr_list} ${ret_val1}
82 ${ret_val1}= Extract From DB Table grep NID=openflow:1 | grep DC=PORTSTATS | grep MN=${list} | grep RK=Node:openflow:1,NodeConnector:openflow:1:LOCAL
83 Append To List ${tsdr_list} ${ret_val1}
84 ${ret_val1}= Extract From DB Table grep NID=openflow:2 | grep DC=PORTSTATS | grep MN=${list} | grep RK=Node:openflow:2,NodeConnector:openflow:2:1
85 Append To List ${tsdr_list} ${ret_val1}
86 ${ret_val1}= Extract From DB Table grep NID=openflow:2 | grep DC=PORTSTATS | grep MN=${list} | grep RK=Node:openflow:2,NodeConnector:openflow:2:2
87 Append To List ${tsdr_list} ${ret_val1}
88 ${ret_val1}= Extract From DB Table grep NID=openflow:2 | grep DC=PORTSTATS | grep MN=${list} | grep RK=Node:openflow:2,NodeConnector:openflow:2:3
89 Append To List ${tsdr_list} ${ret_val1}
90 ${ret_val1}= Extract From DB Table grep NID=openflow:2 | grep DC=PORTSTATS | grep MN=${list} | grep RK=Node:openflow:2,NodeConnector:openflow:2:LOCAL
91 Append To List ${tsdr_list} ${ret_val1}
92 ${ret_val1}= Extract From DB Table grep NID=openflow:3 | grep DC=PORTSTATS | grep MN=${list} | grep RK=Node:openflow:3,NodeConnector:openflow:3:1
93 Append To List ${tsdr_list} ${ret_val1}
94 ${ret_val1}= Extract From DB Table grep NID=openflow:3 | grep DC=PORTSTATS | grep MN=${list} | grep RK=Node:openflow:3,NodeConnector:openflow:3:2
95 Append To List ${tsdr_list} ${ret_val1}
96 ${ret_val1}= Extract From DB Table grep NID=openflow:3 | grep DC=PORTSTATS | grep MN=${list} | grep RK=Node:openflow:3,NodeConnector:openflow:3:LOCAL
97 Append To List ${tsdr_list} ${ret_val1}
101 [Documentation] Compare openflow Interface metrics between data collected from openflow Plugin and TSDR
102 FOR ${xml_val} ${tsdr_val} IN ZIP ${xml_list} ${tsdr_list}
103 Compare Tsdr XML Metrics ${xml_val} ${tsdr_val} 20
107 Extract From DB Table
108 [Arguments] ${pattern}
109 [Documentation] Extract from metricpath table and return the value
110 ${ret_val1}= Set Variable -100
111 ${ret_val1}= Verify the Metrics Attributes on Cassandra Client ${pattern}