I'm trying to get statistics using the following RPC call and not via the default statistics-manager.
POST / restconf / operations / opendaylight - flow - statistics: get - all - flows - statistics - from - all - flow - tables {
"input": {
"node": "/opendaylight-inventory:nodes/opendaylight-inventory:node[opendaylight-inventory:id=\"openflow:1000\"]"
}
}
However, the response of this request is just transaction-id
. While I can see the OpenFlow Flow Stat Request
and Flow Stat Reply
messages are exchanged between the controller and the switch, the operational datastore seems not to be updated as a result of calling the above RPC. I check the operational datastore using:
GET /restconf/operational/opendaylight-inventory:nodes/node/openflow:1000/table/0
My question is:
get-all-flows-statistics-from-all-flow-tables
)? And why is the operational datastore is not updated?Thanks! Michael.
Using Boron, what you're trying to use is deprecated, hence you should use the following:
odl-openflowplugin-flow-services
POST /restconf/operations/opendaylight-direct-statistics:get-node-connector-statistics
Host: localhost:8181
Content-Type: application/json
Authorization: Basic YWRtaW46YWRtaW4=
{
"input":
{
"node" : "/opendaylight-inventory:nodes/opendaylight-inventory:node[opendaylight-inventory:id=\"openflow:187811733353539\"]" ,
"store-stats" : false
}
}
true
if you want to keep them in the datastore.You can also get the stats only for a specified port, but while trying, it appears not to be working well Add this to the above payload:
"node-connector-id" : "/opendaylight-inventory:nodes/opendaylight-inventory:node[opendaylight-inventory:id=\"openflow:187811733353539\"]/opendaylight-inventory:node-connector[opendaylight-inventory:id='openflow:187811733353539:LOCAL']",
Instead of LOCAL
, specify the port you want.
Hope this helps, Alexis