[
https://issues.apache.org/jira/browse/DISPATCH-911?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ganesh Murthy updated DISPATCH-911:
-----------------------------------
Description: (was: 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.
)
> Add link and address level counters at the global router level
> --------------------------------------------------------------
>
> 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
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]