[ 
https://issues.apache.org/jira/browse/DISPATCH-911?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Ganesh Murthy reassigned DISPATCH-911:
--------------------------------------

    Assignee: Ganesh Murthy

> New management call to return overall router network statistics
> ---------------------------------------------------------------
>
>                 Key: DISPATCH-911
>                 URL: https://issues.apache.org/jira/browse/DISPATCH-911
>             Project: Qpid Dispatch
>          Issue Type: Improvement
>          Components: Management Agent
>    Affects Versions: 1.0.0
>            Reporter: Ernest Allen
>            Assignee: Ganesh Murthy
>            Priority: Major
>
> We need overview charts that display:
>   - the throughput rate for the router network
>   - network load
>   - average latency
> For the throughput rate:
> This is derived from the sum of router.address.deliveriesEgress for all 
> addresses on all routers in the network.
> For network load:
> This is derived from the sum of the router.link.undeliveredCount and 
> router.link.unsettledCount for all endpoint links on the network.
> For the average latency:
> A new attribute needs to be created. Each ingress message needs to be 
> annotated with an ingress timestamp. When the message egresses the network, 
> the total time 'in-flight' needs to be calculated and accumulated in the 
> egress router's new router.address.deliveriesEgressDuration attribute. 
> Average latency can be calculated using this statistic and the throughput 
> statistic.
> Add a new management action of "SUM" that recognizes a new 
> application_proptery of filter. The SUM action sums the given attribute(s) 
> from all routers. The filter determines which records are included.
> To calculate load, the request looks like:
> {
>     body: ['undeliveredCount', 'unsettledCount'],
>     application_properties: {
>         operation: 'SUM',
>         type: 'org.apache.qpid.dispatch.router.link',
>         filter: {'linkType': 'endpoint'}
>     }
> }
> This would return:
> {
>     attributeNames: ['undeliveredCount', 'unsettledCount'],
>     values: [<sum of undeliveredCounts>, <sum of unsettledCounts>]
> }
> where the sums are for all routers for all links with linkType == endpoint 
> For the throughput request:
> {
>     body: ['deliveriesEgress'],
>     application_properties: {
>         operation: 'SUM',
>         type: 'org.apache.qpid.dispatch.router.address',
>         filter: {'name': '*'}  // or name: <address.name> for a single address
>     }
> }
> This would return:
> {
>     attributeNames: ['deliveriesEgress'],
>     values: [<sum of deliveriesEgress>]
> }
> where the sum is for all routers for all address.names that matched the name 
> given in the filter.
> For the latancy request:
> {
>     body: ['deliveriesEgress', 'deliveriesEgressDuration'],
>     application_properties: {
>         operation: 'SUM',
>         type: 'org.apache.qpid.dispatch.router.address',
>         filter: {'name': '*'} // or name: <address.name> for a single address
>     }
> }
> This would return:
> {
>     attributeNames: ['deliveriesEgress', 'deliveriesEgressDuration'],
>     values: [<sum of deliveriesEgress>, <sum of deliveriesEgressDuration>]
> }
> where the sums are for all routers for all address.names that matched the 
> name given in the filter.
> Note: If annotating messages with timestamps for the deliveriesEgressDuration 
> attribute is too much of a performance hit, an additional management call is 
> needed to enable and disable this behavior.
> Bonus: This new 'SUM' request can be used to replace the existing request 
> that sums logStats accross routers. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to