Hi There,
I wanted to note that of the two reasons Ashley raised to not use
Glassbox, the first one shouldn’t be a major factor. People are using
Glassbox to monitor non-app server JVMs, you just have to do a little more work
to configure the system as you desire.
Glassbox also no longer uses around advice and the worker object
pattern for the reason you noted that we also need to be able to watch the time
between two events: the system has a response listener architecture now and advice
on different join points can raise start and end events. We haven’t
really solved long-lived response monitoring yet, where you would expect to
monitor the time *in* a queue, but I think you’d find that
Glassbox can very naturally monitor the time from arrival to enqueuing.
Since Glassbox is open source, I’d certainly consider all
or part of it, extending it (and maybe contributing) as an alternative to
rolling a custom solution. We’d certainly love to learn from use cases
where it wasn’t a good fit for future planning.
In implementing Glassbox we did also encounter Robert’s issue
with JMX object names and wrote code that tolerates a pretty good range of old
and new JMX implementations too.
Ron Bodkin
Glassbox Project Lead
From: aspectj-users-bounces@xxxxxxxxxxx
[mailto:aspectj-users-bounces@xxxxxxxxxxx] On Behalf Of Buck, Robert
Sent: Wednesday, April 23, 2008 8:19 AM
To: aspectj-users@xxxxxxxxxxx
Subject: RE: [aspectj-users] Alternative to glassbox?
I for one haven't seen any useful stripped-down ones. If you were
not familiar with these links, I include them for your benefit:
http://www.javaworld.com/javaworld/jw-01-2002/jw-0118-aspect.html
http://www.javaworld.com/javaworld/jw-11-2004/jw-1108-windowspm.html
http://www.ibm.com/developerworks/java/library/j-aopwork10/
http://www.componative2.com/content/controller/developer/insights/jconsole1
http://www.devx.com/Java/Article/29526/1954
http://www.jinspired.com/products/jxinsight/new-in-5.5.html
http://java.sun.com/javase/technologies/core/mntr-mgmt/javamanagement/best-practices.jsp#mozTocId654884
This last one has a good discussion on ObjectName, but in practice,
results may vary with the kind of monitoring application (e.g. JConsole versus
JBoss).
The big gotcha you will run into is ObjectName + JMX. Sun's
JMX specification is way underspecified, which led to different interpretations
and handling of names. Everyone seems to use different schemes, and rarely do
they play well together in practice. For instance, I have not found a scheme
that plays well for both JBoss JMX Console and Sun's JConsole.
Bob
From: aspectj-users-bounces@xxxxxxxxxxx
[mailto:aspectj-users-bounces@xxxxxxxxxxx] On Behalf Of Ashley Williams
Sent: Wednesday, April 23, 2008 9:50 AM
To: aspectj-users@xxxxxxxxxxx
Cc: aspectj-users@xxxxxxxxxxx; aspectj-users-bounces@xxxxxxxxxxx
Subject: RE: [aspectj-users] Alternative to glassbox?
Thanks, just as
I suspected! I think I have an idea of how to approach this,
I just wanted
to make sure there wasn't already a good fit already available.
aspectj-users-bounces@xxxxxxxxxxx wrote on
23/04/2008 14:10:24:
> Hi Ashley,
>
> I have not seen many stripped down
variants of Glassbox out there,
> or rather, none that were worth it. So we rolled out our own.
>
> It would take an engineer about
two-three weeks to write up a custom
> solution, and have it fully tested. There are several articles on
> the topic if you Google for them. There are two commercial products
> that provide online documentation, from which you can glean some
> design hints, and they may in some capacity also serve as examples
> of what not to do.
>
> Best wishes,
>
> Bob
>
>
> From: aspectj-users-bounces@xxxxxxxxxxx [mailto:aspectj-users-
> bounces@xxxxxxxxxxx] On Behalf Of Ashley Williams
> Sent: Wednesday, April 23, 2008 3:31 AM
> To: aspectj-users@xxxxxxxxxxx
> Subject: [aspectj-users] Alternative to glassbox?
>
> Hi,
>
> Just wondering if anybody knows of an alternative to glassbox for
> investigating performance. Glassbox looks great except for the
following:
>
> 1. We want to monitor other virtual machines, not just a jboss one
> so a war component is no good to us
>
> 2. Additionally our api is asynchronous so performance based on
> around() advice for a single join point is no
> good to us: methods return almost immediately. So we want to test
> usually across 2 join points - eg the first
> when a message is sent (asynchronously ) and the second when it
> eventually arrives at in a jms queue for example.
>
> If there is nothing else out there then I'm sure we can come up with
> a custom solution.
>
> Thanks
> - Ashley Williams
> ---
>
> This e-mail may contain confidential and/or privileged information.
> If you are not the intended recipient (or have received this e-mail
> in error) please notify the sender immediately and delete this e-
> mail. Any unauthorized copying, disclosure or distribution of the
> material in this e-mail is strictly forbidden.
>
> Please refer to http://www.db.com/en/content/eu_disclosures.htm for
> additional EU corporate and regulatory disclosures.
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
---
This e-mail may contain confidential and/or privileged information. If you are
not the intended recipient (or have received this e-mail in error) please
notify the sender immediately and delete this e-mail. Any unauthorized copying,
disclosure or distribution of the material in this e-mail is strictly
forbidden.
Please refer to http://www.db.com/en/content/eu_disclosures.htm for additional
EU corporate and regulatory disclosures.