*** Settings ***
Documentation Test suite for Cassandra DataStore PortStats Verification
Suite Teardown Stop Tsdr Suite
-Metadata https://bugs.opendaylight.org/show_bug.cgi?id=5068 ${EMPTY}
Library SSHLibrary
Library Collections
Library String
... ${root_path}/receive-frame-error ${root_path}/receive-errors ${root_path}/receive-drops ${root_path}/receive-crc-error ${root_path}/collision-count
@{CATEGORY} FlowStats FlowTableStats PortStats QueueStats
${TSDR_PORTSTATS} tsdr:list PortStats
-${CONFIG_INTERVAL} /restconf/config/tsdr-openflow-statistics-collector:TSDRDCConfig
-${OPER_INTERVAL} /restconf/operations/tsdr-openflow-statistics-collector:setPollingInterval
${metric_path} metric_path
${metric_val} metric_val
@{xml_list}
Storing Statistics from Openflow REST
[Documentation] Store openflow PortStats metrics using REST.
- : FOR ${item} IN @{xpath}
- \ ${ret_val}= Set Variable -1
- \ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:1/node-connector/openflow:1:1 ${item}
- \ Append To List ${xml_list} ${ret_val}
- \ ${ret_val}= Set Variable -1
- \ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:1/node-connector/openflow:1:2 ${item}
- \ Append To List ${xml_list} ${ret_val}
- \ ${ret_val}= Set Variable -1
- \ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:1/node-connector/openflow:1:LOCAL ${item}
- \ Append To List ${xml_list} ${ret_val}
- \ ${ret_val}= Set Variable -1
- \ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:2/node-connector/openflow:2:1 ${item}
- \ Append To List ${xml_list} ${ret_val}
- \ ${ret_val}= Set Variable -1
- \ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:2/node-connector/openflow:2:2 ${item}
- \ Append To List ${xml_list} ${ret_val}
- \ ${ret_val}= Set Variable -1
- \ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:2/node-connector/openflow:2:3 ${item}
- \ Append To List ${xml_list} ${ret_val}
- \ ${ret_val}= Set Variable -1
- \ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:2/node-connector/openflow:2:LOCAL ${item}
- \ Append To List ${xml_list} ${ret_val}
- \ ${ret_val}= Set Variable -1
- \ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:3/node-connector/openflow:3:1 ${item}
- \ Append To List ${xml_list} ${ret_val}
- \ ${ret_val}= Set Variable -1
- \ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:3/node-connector/openflow:3:2 ${item}
- \ Append To List ${xml_list} ${ret_val}
- \ ${ret_val}= Set Variable -1
- \ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:3/node-connector/openflow:3:LOCAL ${item}
- \ Append To List ${xml_list} ${ret_val}
- \ ${ret_val}= Set Variable -1
+ FOR ${item} IN @{xpath}
+ ${ret_val}= Set Variable -1
+ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:1/node-connector/openflow:1:1 ${item}
+ Append To List ${xml_list} ${ret_val}
+ ${ret_val}= Set Variable -1
+ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:1/node-connector/openflow:1:2 ${item}
+ Append To List ${xml_list} ${ret_val}
+ ${ret_val}= Set Variable -1
+ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:1/node-connector/openflow:1:LOCAL ${item}
+ Append To List ${xml_list} ${ret_val}
+ ${ret_val}= Set Variable -1
+ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:2/node-connector/openflow:2:1 ${item}
+ Append To List ${xml_list} ${ret_val}
+ ${ret_val}= Set Variable -1
+ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:2/node-connector/openflow:2:2 ${item}
+ Append To List ${xml_list} ${ret_val}
+ ${ret_val}= Set Variable -1
+ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:2/node-connector/openflow:2:3 ${item}
+ Append To List ${xml_list} ${ret_val}
+ ${ret_val}= Set Variable -1
+ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:2/node-connector/openflow:2:LOCAL ${item}
+ Append To List ${xml_list} ${ret_val}
+ ${ret_val}= Set Variable -1
+ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:3/node-connector/openflow:3:1 ${item}
+ Append To List ${xml_list} ${ret_val}
+ ${ret_val}= Set Variable -1
+ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:3/node-connector/openflow:3:2 ${item}
+ Append To List ${xml_list} ${ret_val}
+ ${ret_val}= Set Variable -1
+ ${ret_val}= Get Stats XML ${OPERATIONAL_NODES_API}/node/openflow:3/node-connector/openflow:3:LOCAL ${item}
+ Append To List ${xml_list} ${ret_val}
+ ${ret_val}= Set Variable -1
+ END
Log List ${xml_list}
Verification of InterfaceMetrics-Attributes on Cassandra Client
[Documentation] Verify the InterfaceMetrics has been updated on Cassandra Data Store
Copy TSDR tables
- : FOR ${list} IN @{INTERFACE_METRICS}
- \ ${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
- \ Append To List ${tsdr_list} ${ret_val1}
- \ ${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
- \ Append To List ${tsdr_list} ${ret_val1}
- \ ${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
- \ Append To List ${tsdr_list} ${ret_val1}
- \ ${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
- \ Append To List ${tsdr_list} ${ret_val1}
- \ ${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
- \ Append To List ${tsdr_list} ${ret_val1}
- \ ${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
- \ Append To List ${tsdr_list} ${ret_val1}
- \ ${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
- \ Append To List ${tsdr_list} ${ret_val1}
- \ ${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
- \ Append To List ${tsdr_list} ${ret_val1}
- \ ${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
- \ Append To List ${tsdr_list} ${ret_val1}
- \ ${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
- \ Append To List ${tsdr_list} ${ret_val1}
+ FOR ${list} IN @{INTERFACE_METRICS}
+ ${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
+ Append To List ${tsdr_list} ${ret_val1}
+ ${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
+ Append To List ${tsdr_list} ${ret_val1}
+ ${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
+ Append To List ${tsdr_list} ${ret_val1}
+ ${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
+ Append To List ${tsdr_list} ${ret_val1}
+ ${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
+ Append To List ${tsdr_list} ${ret_val1}
+ ${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
+ Append To List ${tsdr_list} ${ret_val1}
+ ${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
+ Append To List ${tsdr_list} ${ret_val1}
+ ${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
+ Append To List ${tsdr_list} ${ret_val1}
+ ${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
+ Append To List ${tsdr_list} ${ret_val1}
+ ${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
+ Append To List ${tsdr_list} ${ret_val1}
+ END
Comparing Mertics
[Documentation] Compare openflow Interface metrics between data collected from openflow Plugin and TSDR
- : FOR ${xml_val} ${tsdr_val} IN ZIP ${xml_list} ${tsdr_list}
- \ Compare Tsdr XML Metrics ${xml_val} ${tsdr_val} 20
-
-Verify Configuration Interval-change
- [Documentation] Verify the TSDR Collection configuration changes
- ${session}= Create Session session http://${ODL_SYSTEM_IP}:${RESTCONFPORT} auth=${AUTH} headers=${HEADERS}
- Verify TSDR Configuration Interval 180
- Post TSDR Configuration Interval 200
- Verify TSDR Configuration Interval 200
- Post TSDR Configuration Interval 180
- Verify TSDR Configuration Interval 180
- Delete All Sessions
- [Teardown] Report_Failure_Due_To_Bug 5068
+ FOR ${xml_val} ${tsdr_val} IN ZIP ${xml_list} ${tsdr_list}
+ Compare Tsdr XML Metrics ${xml_val} ${tsdr_val} 20
+ END
*** Keywords ***
-Verify TSDR Configuration Interval
- [Arguments] ${interval}
- [Documentation] Verify Configuration interval of TSDR Collection
- ${resp} RequestsLibrary.Get session ${CONFIG_INTERVAL}
- Should Be Equal As Strings ${resp.status_code} 200
- Should Contain ${resp.content} ${interval}
-
-Post TSDR Configuration Interval
- [Arguments] ${interval}
- [Documentation] Configuration TSDR collection interval ${interval}
- ${p1} Create Dictionary interval ${interval}
- ${p2} Create Dictionary input ${p1}
- ${post_data} Create Dictionary setPollingInterval ${p2}
- Log ${post_data}
- ${resp} RequestsLibrary.Post session ${OPER_INTERVAL} ${post_data}
- Should Be Equal As Strings ${resp.status_code} 201
-
Extract From DB Table
[Arguments] ${pattern}
[Documentation] Extract from metricpath table and return the value