Hi Lasantha,
Good to know you’re interested in this work. The more help we get, the
merrier. The general steps for adding J2EE managed object statistics are:
1. Find the J2EE managed object class and modify the
isStatisticsProvider() method to return true.
2. Have the J2EE managed object class implement StatisticsProvider
interface and provide an implementation for the method: Stats
getStats(). This should return an instance of the matching Stats
interface (e.g., ServletStats) for the J2EE managed object.
Note that a major part of this work is finding the right J2EE managed
object and adding a way to gather the statistics needed if it’s not yet
provided. So far that’s where we need a lot of help. We need to know how
to get the needed statistics. Best case is if the J2EE managed object is
already gathering the needed data and all we need to do is expose it.
Otherwise, we need to add that functionality.
I hope this can get you started. ;-)
Best wishes,
chris
Lasantha Ranaweera wrote:
> Hi Chris,
>
> I would like to contribute to this work in the Geronimo too ;-) .
>
> Went through the JSR. Saw Jetty implementation is already available
> there even though it is commented in the source code. I hope to start
> from Tomcat side.
>
> Any help would be appriciated.
>
> Thanks,
> Lasantha Ranaweera
>
> Christopher M. Cardona wrote:
>> CORRECTION: The 'Implementing Class' column was modified to
>> 'StatisticsProvider Class' column. This column lists the classes that
>> implement the StatisticsProvider interface which defines a method to
>> return a specific managed object Stats.
>>
>> Christopher M. Cardona wrote:
>>> I’m currently looking on how to implement JSR 77 Stats interfaces
>>> (GERONIMO-2517) and I've created a wiki page to keep track of the
>>> progress:
>>> http://cwiki.apache.org/confluence/display/GMOxDEV/JSR+77+Performance+Monitoring+%28Stats+Interfaces%29
>>>
>>>
>>> This page lists the Stats interface required by each managed object
>>> type including the methods to be implemented. The ‘Implementing
>>> Class’ column is the specific Class that would implement the
>>> corresponding Stats interface and this is where I need some input
>>> from you guys. Implementing these interfaces might involve source
>>> modification of other projects that Geronimo uses (e.g. Openejb,
>>> ActiveMQ, Jetty, Tomcat, etc.) and it would really help if domain
>>> experts on these projects provide suggestions and info on how and
>>> where to implement the said interfaces. It would also help to bring
>>> up possible issues when implementing the said interfaces. Please
>>> feel free to modify the wiki page for corrections or additions.
>>>
>>> Here’s a list of Stats interfaces that we can implement and support
>>> in Geronimo:
>>>
>>> 1. EJBStats
>>> 2. SessionBeanStats
>>> 3. StatelessSessionBeanStats
>>> 4. StatefulSessionBeanStats
>>> 5. MessageDrivenBeanStats**
>>> 6. EntityBeanStats
>>> 7. ServletStats
>>> 8. JCAStats
>>> 9. JCAConnectionStats
>>> 10. JCAConnectionPoolStats
>>> 11. JTAStats
>>> 12. JDBCStats
>>> 13. JDBCConnectionStats
>>> 14. JDBCConnectionPoolStats
>>> 15. JMSStats
>>> 16. JMSConnectionStats
>>> 17. JMSSessionStats
>>> 18. JMSEndpointStats
>>> 19. JMSProducerStats
>>> 20. JMSConsumerStats
>>> 21. JavaMailStats
>>> 22. URLStats
>>> 23. JVMStats (Already implemented)
>>>
>>> Thanks,
>>> chris
>>>
>>>
>>
>>
>
>
>