2017-11-02 3 views
0

Ich habe eine Tomcat-Bereitstellung mit mehreren (der gleichen) Webapp zur Verfügung gestellt.io.dropwizard.metrics pro webapp in Tomcat

Ich bin auf der Suche nach Metriken auf Webapp-Ebene über JMX.

Also, wenn ich bei jconsole suchen bin

Ich bin auf der Suche nach so etwas wie:

com.orgName 
       /webapp1 
       /timer-metric1 
       /timer-metric2 
       /webapp2 
       /timer-metric1 
       /timer-metric2 

Ich habe Probleme diese immer per Web-App. Ich habe versucht:

final JmxReporter reporter = JmxReporter.forRegistry(metricsRegistry).inDomain("com.orgName=/getContextName(),Type=TestBean,Name=com.orgName.TestBean") 
).build(); 

Wer weiß, von irgendeiner Weise dies mit metrics.dropwizard.io zu erreichen?

Antwort

0

Wir dachten, es endlich

 ObjectNameFactory objectNameFactory = new ObjectNameFactory() { 
     @Override 
     public ObjectName createName(String type, String domain, String name) { 
      ObjectName objectName = null; 
      StringBuilder nameString = new StringBuilder(); 
      nameString.append(domain + ":"); 
      nameString.append("Context=").append("/").append(getContextName()).append(","); 

      nameString.append("Type=").append(type).append(","); 
      nameString.append("Name=").append(name); 
      try { 
       objectName= new ObjectName(nameString.toString()); 
      } catch (MalformedObjectNameException e) { 
       e.printStackTrace(); 
      } 
      return objectName; 
     } 
    }; 

    final JmxReporter reporter = JmxReporter.forRegistry(metricsRegistry) 
      .inDomain("com.orgName") 
      .createsObjectNamesWith(objectNameFactory) 
      .build(); 

    reporter.start(); 
die createName Methode überschrieben aus
Verwandte Themen