1
1
package org.munin.plugin.jmx;
3
import java.io.IOException;
2
4
import java.lang.management.ClassLoadingMXBean;
3
5
import java.lang.management.ManagementFactory;
4
import javax.management.MBeanServerConnection;
5
import java.io.FileNotFoundException;
6
import java.io.IOException;
7
public class ClassesUnloaded {
9
public static void main(String args[]) throws FileNotFoundException, IOException {
10
String[] connectionInfo = ConfReader.GetConnectionInfo();
12
if (args.length == 1) {
13
if (args[0].equals("config")) {
15
"graph_title JVM (port " + connectionInfo[1] + ") ClassesUnloaded\n" +
16
"graph_vlabel classes\n" +
17
"graph_category " + connectionInfo[2] + "\n" +
18
"graph_info The total number of classes unloaded since the Java virtual machine has started execution.\n" +
19
"UnloadedClass.label UnloadedClass\n"
25
MBeanServerConnection connection = BasicMBeanConnection.get();
26
ClassLoadingMXBean classmxbean=ManagementFactory.newPlatformMXBeanProxy(connection, ManagementFactory.CLASS_LOADING_MXBEAN_NAME, ClassLoadingMXBean.class);
28
System.out.println("UnloadedClass.value "+classmxbean.getUnloadedClassCount());
30
} catch (Exception e) {
7
import org.munin.plugin.jmx.AbstractAnnotationGraphsProvider.Graph;
10
@Graph(title = "ClassesUnloaded", vlabel = "classes", info = "The total number of classes unloaded since the Java virtual machine has started execution.")
11
public class ClassesUnloaded extends AbstractAnnotationGraphsProvider {
13
public ClassesUnloaded(Config config) {
18
public long unloadedClass() throws IOException {
19
ClassLoadingMXBean classmxbean = ManagementFactory
20
.newPlatformMXBeanProxy(getConnection(),
21
ManagementFactory.CLASS_LOADING_MXBEAN_NAME,
22
ClassLoadingMXBean.class);
23
return classmxbean.getUnloadedClassCount();
26
public static void main(String args[]) {