[infinispan-issues] [JBoss JIRA] Created: (ISPN-754) Build object names that follow best practices that are clearer and avoid confusion

Galder Zamarreño (JIRA) jira-events at lists.jboss.org
Tue Nov 2 04:41:01 EDT 2010


Build object names that follow best practices that are clearer and avoid confusion
----------------------------------------------------------------------------------

                 Key: ISPN-754
                 URL: https://jira.jboss.org/browse/ISPN-754
             Project: Infinispan
          Issue Type: Task
          Components: JMX, reporting and management
            Reporter: Galder Zamarreño
            Assignee: Galder Zamarreño
             Fix For: 5.0.0.BETA1, 5.0.0.Final


CacheManager JMX object names need revisiting to better follow best practices (http://java.sun.com/javase/technologies/core/mntr-mgmt/javamanagement/best-practices.jsp#mozTocId654884) and enable easier identification in multi CacheManager environments. 

At the moment, cache managers follow this pattern: *:cache-name="[global]",jmx-resource=CacheManager and in app server environments, we can find these names deployed: 

[infinispan4:cache-name="[global]",jmx-resource=CacheManager, 
infinispan3:cache-name="[global]",jmx-resource=CacheManager, 
infinispan:cache-name="[global]",jmx-resource=CacheManager, 
infinispan2:cache-name="[global]",jmx-resource=CacheManager]

Suggestions:

1. As per best practices, the ON should start with the java package name, so preferably the default domain name should be: org.infinispan. 

2. Every ON should contain a type=key for each object type. In Infinispan, we differentiate between CacheManager and Cache, so accordingly, we should have: type=CacheManager and type=Cache

3. A name property should be available to differentiate each ON of a particular type. cache-name is not good for this cos it's only meaningful at the cache level and can confuse people searching for CacheManager instances.

I think it's good that we keep a jmxDomain optionally configurable, but we should add name to globalJmxStatistics configuration to define the cache manager name and to avoid confusion with domain redefinition. The end result for a CacheManager object name would be:

org.infinispan:type=CacheManager,name="Hibernate2LC"
org.infinispan:type=CacheManager,name="HttpSession"
org.infinispan:type=CacheManager,name="Ejb3SfsbState"
...etc

At the cache level, currently JMX names would look like:

infinispan:cache-name="MyCache(local)",jmx-resource=Cache

This should be transformed into something along the lines of:

org.infinispan:type=Cache,mode=local,name="MyCache"

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       



More information about the infinispan-issues mailing list