public static void main(String[] argv) throws Exception { PlatformLoggingMXBean mbean = ManagementFactory.getPlatformMXBean(PlatformLoggingMXBean.class); ObjectName objname = mbean.getObjectName(); if (!objname.equals(new ObjectName(LogManager.LOGGING_MXBEAN_NAME))) { throw new RuntimeException("Invalid ObjectName " + objname); } // check if the PlatformLoggingMXBean is registered in the platform MBeanServer MBeanServer platformMBS = ManagementFactory.getPlatformMBeanServer(); ObjectName objName = new ObjectName(LogManager.LOGGING_MXBEAN_NAME); // We could call mbs.isRegistered(objName) here. // Calling getMBeanInfo will throw exception if not found. platformMBS.getMBeanInfo(objName); if (!platformMBS.isInstanceOf(objName, "java.lang.management.PlatformLoggingMXBean") || !platformMBS.isInstanceOf(objName, "java.util.logging.LoggingMXBean")) { throw new RuntimeException(objName + " is of unexpected type"); } // test if PlatformLoggingMXBean works properly in a MBeanServer PlatformLoggingMXBeanTest test = new PlatformLoggingMXBeanTest(); test.runTest(mbean); }
static void submitTasks(ExecutorService executor, int count) { for (int i=0; i < count && !failed; i++) { executor.execute(new Runnable() { @Override public void run() { List<PlatformManagedObject> mbeans = new ArrayList<>(); mbeans.add(ManagementFactory.getPlatformMXBean(PlatformLoggingMXBean.class)); mbeans.addAll(ManagementFactory.getPlatformMXBeans(BufferPoolMXBean.class)); for (PlatformManagedObject pmo : mbeans) { // Name should not be null if (pmo.getObjectName() == null) { failed = true; throw new RuntimeException("TEST FAILED: getObjectName() returns null"); } } } }); } }
public static void main(String[] argv) throws Exception { PlatformLoggingMXBean mbean = ManagementFactory.getPlatformMXBean(PlatformLoggingMXBean.class); ObjectName objname = mbean.getObjectName(); if (!objname.equals(new ObjectName(LogManager.LOGGING_MXBEAN_NAME))) { throw new RuntimeException("Invalid ObjectName " + objname); } // check if the PlatformLoggingMXBean is registered in the platform MBeanServer MBeanServer platformMBS = ManagementFactory.getPlatformMBeanServer(); ObjectName objName = new ObjectName(LogManager.LOGGING_MXBEAN_NAME); // We could call mbs.isRegistered(objName) here. // Calling getMBeanInfo will throw exception if not found. platformMBS.getMBeanInfo(objName); if (!platformMBS.isInstanceOf(objName, "java.lang.management.PlatformLoggingMXBean")) { throw new RuntimeException(objName + " is of unexpected type"); } // test if PlatformLoggingMXBean works properly in a MBeanServer PlatformLoggingMXBeanTest test = new PlatformLoggingMXBeanTest(); test.runTest(mbean); }