This project has been reported as a duplicate of Java Simon. This project will be deleted upon review by an Ohloh administrator.
Java Simon - Simple Monitoring APIJava Simon is a simple monitoring API that allows you to follow and better understand your application. Monitors (familiarly called Simons) are placed directly into your code and you can choose whether you want to count something or measure time/duration.
NewsJuly 23rd, 2009 - Version 2.1This is a minor update of version 2 based on some user's input:
added methods reset and two versions of sampleAndReset to SimonMXBean; you can now use [, ], and _ in Simon names; timestamps for 0 are formated as undef in toString methods.
Download on the right side of the page, we also updated Javadoc for a few JMX classes - see JavaDoc for v2.1.
We thank our users for their support and feedback!
June 19th, 2009 - Version 2 out!After few more fixes, some simplifications (ever used StatProcessor? it's gone!), more Javadocs and some Wiki updates (with some more ahead) we have finally released version 2 of Java Simon library. You can choose the big package with precompiled JARs, Javadocs (here online) and working Ant build - or if you're Maven user, you can go for smaller sources-only ZIP with Maven build (Maven 2.1 is required). Check the right side of the page for both downloads.
Enjoy - and tell us what you think!
May 20th, 2009 - Version 2, Beta 2Yup, we're slower than we anticipated - especially because we really wanted to wrap it up faster for our own sake as well. This time the whole source structure is Maven 2 compliant and you should be able to compile the project and install all Java Simon artifacts into your repository. We still have to finish deployment to online repository and besides that there are some documentation tasks pending as well.
May 6th, 2009 - Fighting with Maven 2 ;-)We are finishing second beta (check trunk if you're adventurous) with Maven 2 build. As the core developers are not familiar with Maven we have a problem to build the project properly with all dependencies (especially half of the JARs need JDK 5, the other JDK 6 ;-)). If you don't need Maven, simply download the first beta - final version is going to be very similar except for the project structure. API, JARs, features... we will not change this unless some vis major occasion.
Older news: All news can be found here. News on this page (Google code) might be rephrased or shortened. ;-)
DocumentationCheck out the list of our Wiki pages where you may also find:
Introduction - where Java Simon API is positioned and the motivation for it GettingStarted - how to start with Java Simon along with some examples Callbacks - new important feature of v2 to extend Java Simon functions with your own code MavenSupport - for Maven 2 users
Javadocs for v2 About Java Simon - on javasimon.org
Visit and join our mailing list on Google Groups: http://groups.google.com/group/javasimon
Some part of the documentation relates to v1 which is not officially supported anymore (sounds strange but there are reasons for that).
MotivationWe wanted to use something like JAMon for our products originally, but we lacked two important features:
better way (or any way for that matter) to organize all those monitors; nanosecond resolution.
Monitor hierarchySimon API gives you a better control over all those monitors in your big - possibly Java EE - application. Simons are organized in a hierarchy similar to what you can see in java.util.logging API.
Simons can be disabled which minimizes their overhead influencing your application. These operations can be performed on the whole subtrees of Simons which makes partial application monitoring easier. See SimonHierarchy for more.
The time for nanos is hereSimon measures times in nanos - and believe it or not it can make the difference on current very fast machines. Although not all platforms provide timers precise enough this design decision is future proof. Of course this decision comes with a price - you can use Java Simon only with JDK 1.5 or higher (platform Java SE 5). See SystemTimersGranularity page for more.
Future plansOur future goals include (the later goals are in a more distant future):
Sampling, collecting, agregating with persistence backend (file/DB). VisualVM plugin. Dynamic profiling integration. Currently the project is rather on hold - but this depends on other free-time activities of the authors and also on public demand and feedback. We're not preparing v3 right now, we're ready to tweak version 2 though.
Do you have something to tell us?So tell us! Visit our Google Group (preferably) or file an issue, whatever. We can't promise to fulfill all your dreams but we want to produce the library YOU like (and so do we - of course ;-)). So if you know how to make Simon better, without making it something it is not, let us know! We want to know.
Copyright © 2013 Black Duck Software, Inc. and its contributors, Some Rights Reserved. Unless otherwise marked, this work is licensed under a Creative Commons Attribution 3.0 Unported License . Ohloh ® and the Ohloh logo are trademarks of Black Duck Software, Inc. in the United States and/or other jurisdictions. All other trademarks are the property of their respective holders.