Hi Alex,

Some statistics have been there since the first release with the REST API -
version 0.18 in Sep 2012 (see
https://issues.apache.org/jira/browse/QPID-3998); and the mechanisms for
retrieving the statistics haven't fundamentally changed since version 0.28
in Jun 2014 (https://issues.apache.org/jira/browse/QPID-5579)

Hope this helps,
Rob



On 10 October 2017 at 01:31, Alex O'Ree <[email protected]> wrote:

> Keith, quick follow up question. Any idea when the REST API was
> introduced with the statistics getters?
>
> On Mon, Oct 9, 2017 at 4:43 PM, Alex O'Ree <[email protected]> wrote:
> > Cool thanks
> >
> > On Oct 9, 2017 4:14 AM, "Keith W" <[email protected]> wrote:
> >>
> >> Hi Alex
> >>
> >> The decision to deprecate the JMX interface in favour of a platform
> >> neutral REST API was taken a few years ago.   Support for JMX was
> >> finally removed with v6.1.
> >>
> >> The statistics (bytesIn, bytesOut and much more) are available through
> >> the REST API, but unfortunately the statistics were missed from the
> >> online API docs (will be fixed by QPID-7790 in v7.0).
> >>
> >> Here's an example to get you going.  For queues:
> >>
> >> curl --user admin
> >> https://localhost:8080/api/latest/queue/default/default/queue
> >>
> >> The queue object returns includes a map "statistics" containing:
> >>
> >>  "statistics" : {
> >>     "availableBytes" : 0,
> >>     "availableBytesHighWatermark" : 0,
> >>     "availableMessages" : 0,
> >>     "availableMessagesHighWatermark" : 0,
> >>     "bindingCount" : 0,
> >>     "consumerCount" : 0,
> >>     "consumerCountWithCredit" : 0,
> >>     "oldestMessageAge" : 0,
> >>     "persistentDequeuedBytes" : 0,
> >>     "persistentDequeuedMessages" : 0,
> >>     "persistentEnqueuedBytes" : 0,
> >>     "persistentEnqueuedMessages" : 0,
> >>     "queueDepthBytes" : 0,
> >>     "queueDepthBytesHighWatermark" : 0,
> >>     "queueDepthMessages" : 0,
> >>     "queueDepthMessagesHighWatermark" : 0,
> >>     "totalDequeuedBytes" : 0,
> >>     "totalDequeuedMessages" : 0,
> >>     "totalEnqueuedBytes" : 0,
> >>     "totalEnqueuedMessages" : 0,
> >>     "totalExpiredBytes" : 0,
> >>     "totalExpiredMessages" : 0,
> >>     "unacknowledgedBytes" : 0,
> >>     "unacknowledgedMessages" : 0
> >>   }
> >>
> >> Most statistics have reasonably intuitive names but for more
> >> information, until QPID-7790,  see the textual description attached to
> >> the statistics's getter method on the model object (look for the
> >> @ManagedStatistic annotation).
> >>
> >>
> >> https://github.com/apache/qpid-broker-j/blob/master/
> broker-core/src/main/java/org/apache/qpid/server/model/Queue.java
> >>
> >> Hope this helps.
> >>
> >>
> >>
> >>
> >>
> >> On 7 October 2017 at 17:12, Alex O'Ree <[email protected]> wrote:
> >> > Quick follow up question, I was poking around in the documentation
> >> > (hey nice theming!)
> >> >
> >> > https://qpid.apache.org/releases/qpid-java-6.0.0/java-
> broker/book/Java-Broker-Management-Channel-REST-API.html
> >> > And saw that the JMX endpoint is going away eventually. Is this
> >> > scheduled yet?
> >> >
> >> > I also noticed that the REST endpoints (according to the docs) lacks
> >> > the ability to get statistics on topics, channels, etc. Those are
> >> > available via JMX for bytes in/out/dropped, messages in/out/dropped,
> >> > queue depths, consumer counts, etc. Is there a plan to add this to the
> >> > REST endpoints?
> >> >
> >> > On Sat, Oct 7, 2017 at 11:14 AM, Alex O'Ree <[email protected]>
> wrote:
> >> >> Sorry, hit send too quickly
> >> >>
> >> >> if I uncomment
> >> >>     options.setManagementModeJmxPortOverride(9099);
> >> >> it appears to have no affect on the JMX listener starting up.
> >> >>
> >> >> Any recommendations on how to enable it programmatically?
> >> >> using qpid version 6.0.0
> >> >>
> >> >>
> >> >> On Sat, Oct 7, 2017 at 11:12 AM, Alex O'Ree <[email protected]>
> >> >> wrote:
> >> >>> Hello qpid community.
> >> >>>
> >> >>> I have a product that integrates with Qpid and have happily been
> >> >>> running integration tests with it without much of a fuss.  In the
> >> >>> past, I've written to this mailing list on how to attach qpid's java
> >> >>> server as a maven dependency and start it up programmatically in a
> >> >>> unit test, then destroy it when the tests is complete. This is
> working
> >> >>> as expected.
> >> >>>
> >> >>> I now am trying to get the JMX points of Qpid up and running using
> the
> >> >>> same mechanism (programmatically starting qpid during a unit test).
> >> >>> I'm currently starting qpid using the following.
> >> >>>
> >> >>> org.apache.qpid.server.Broker broker2 = new Broker();
> >> >>> BrokerOptions options = new BrokerOptions();
> >> >>> options.setOverwriteConfigurationStore(true);
> >> >>> //options.setManagementModeHttpPortOverride(9090);
> >> >>> //options.setManagementModeJmxPortOverride(9099);
> >> >>> //options.setManagementMode(false);
> >> >>> options.setStartupLoggedToSystemOut(true);
> >> >>> String file=new File(".").getAbsolutePath() + File.separator +
> >> >>> "config.json";
> >> >>> options.setConfigurationStoreLocation(file);
> >> >>> broker2.startup(options);
> >> >>>
> >> >>> if I set
> >> >>>     options.setManagementMode(true);
> >> >>> qpid doesn't appear to accept connections (not sure why)
> >> >>>
> >> >>> if i uncomment
> >> >
> >> > ---------------------------------------------------------------------
> >> > To unsubscribe, e-mail: [email protected]
> >> > For additional commands, e-mail: [email protected]
> >> >
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [email protected]
> >> For additional commands, e-mail: [email protected]
> >>
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

Reply via email to