Class SystemMonitor
java.lang.Object
org.jpos.q2.QBeanSupport
org.jpos.q2.qbean.SystemMonitor
- All Implemented Interfaces:
Runnable, Configurable, QBean, SystemMonitorMBean, QBeanSupportMBean, QPersist
Periodically dumps Thread and memory usage
- See Also:
-
Field Summary
Fields inherited from class QBeanSupport
cfg, log, scheduledThreadPoolExecutorModifier and TypeFieldDescriptionprotected ConfigurationConfiguration applied to this bean by the container.protected LogLogger associated with this bean.protected ScheduledThreadPoolExecutorLazily-allocated scheduler shared with subclasses; seeQBeanSupport.getScheduledThreadPoolExecutor().Fields inherited from interface QBean
DESTROYED, FAILED, STARTED, STARTING, stateString, STOPPED, STOPPINGModifier and TypeFieldDescriptionstatic final intQBean has been destroyed.static final intQBean has failed.static final intQBean is running.static final intQBean is in the process of starting.static final String[]Human-readable names for each QBean state, indexed by state constant.static final intQBean is stopped.static final intQBean is in the process of stopping. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected StringReturns the default realm for this bean; subclasses may override.voidCalled during the destroy lifecycle phase; subclasses may override.booleanIndicates whether detailed dumps are currently enabled.longReturns the configured polling interval.voidCalled during the init lifecycle phase; subclasses may override.voidrun()voidConfigures this object with the suppliedConfiguration.voidsetDetailRequired(boolean detail) Toggles whether the dump should include detailed thread/memory information.voidsetSleepTime(long sleepTime) Sets the polling interval in milliseconds.voidCalled during the start lifecycle phase; subclasses may override.voidCalled during the stop lifecycle phase; subclasses may override.Methods inherited from class QBeanSupport
addAttr, close, createElement, destroy, getAttrs, getAttrs, getConfiguration, getDump, getFactory, getLoader, getLoaderURLS, getLog, getLogger, getName, getPersist, getProperties, getProperty, getRealm, getScheduledThreadPoolExecutor, getServer, getState, getStateAsString, init, isModified, running, setAttr, setLogger, setModified, setName, setPersist, setProperty, setRealm, setServer, setState, start, stopModifier and TypeMethodDescriptionprotected voidAppends an<attr>child element with name/type/value toe.protected voidCloses a sequence ofCloseableresources, logging any failures as a warning.protected org.jdom2.ElementcreateElement(String name, Class mbeanClass) Builds a JDOMElementreflecting the bean's persistent attributes, driven by the JavaBean introspection ofmbeanClass.voiddestroy()destroy the serviceprotected IteratorgetAttrs()Iterates over top-level<attr>children of the persisted element.protected IteratorIterates over<attr>children nested under the given parent element name.Returns the configuration applied to this bean.getDump()Returns a textual dump of this bean's state.Returns theQFactoryassociated with the hosting Q2 server.Returns the QClassLoader for this bean.URL[]Returns the URLs registered with the class loader.getLog()Returns theLogused by this bean.Returns the logger name.getName()Returns the bean name.org.jdom2.ElementReturns the persistent configuration element for this QBean.protected IteratorgetProperties(String parent) Iterates over<property>children nested under the given parent element name.protected StringgetProperty(Iterator props, String name) Returns the value of the named property from an iterator of<property>elements.getRealm()Returns the logging realm.protected ScheduledThreadPoolExecutorLazily creates and returns aScheduledThreadPoolExecutorfor use by subclasses.Returns the Q2 server instance.intgetState()Returns the current state of this QBean.Returns the current state as a human-readable string.voidinit()init the servicebooleanReturnstrueif this QBean's configuration has been modified since last save.booleanrunning()Indicates whether this bean is currently starting or running.protected voidUpdates the value of the named attribute within an iterator of<attr>elements.voidSets the logger by name.voidsetModified(boolean modified) Marks this bean's persistent state as modified or in sync.voidSets the bean name.voidsetPersist(org.jdom2.Element persist) Sets the persistent configuration element.protected voidsetProperty(Iterator props, String name, String value) Updates the value attribute of the named property within an iterator of<property>elements.voidSets the logging realm.voidSets the Q2 server instance for this QBean.voidsetState(int state) Sets the lifecycle state of this bean.voidstart()start the servicevoidstop()stop the service
-
Constructor Details
-
SystemMonitor
public SystemMonitor()Default constructor; no instance state to initialise.
-
-
Method Details
-
defaultRealm
Description copied from class:QBeanSupportReturns the default realm for this bean; subclasses may override.- Overrides:
defaultRealmin classQBeanSupport- Returns:
- default realm string, or null
-
initService
Description copied from class:QBeanSupportCalled during the init lifecycle phase; subclasses may override.- Overrides:
initServicein classQBeanSupport
-
startService
Description copied from class:QBeanSupportCalled during the start lifecycle phase; subclasses may override.- Overrides:
startServicein classQBeanSupport
-
stopService
Description copied from class:QBeanSupportCalled during the stop lifecycle phase; subclasses may override.- Overrides:
stopServicein classQBeanSupport
-
destroyService
Description copied from class:QBeanSupportCalled during the destroy lifecycle phase; subclasses may override.- Overrides:
destroyServicein classQBeanSupport- Throws:
InterruptedException
-
setSleepTime
Description copied from interface:SystemMonitorMBeanSets the polling interval in milliseconds.- Specified by:
setSleepTimein interfaceSystemMonitorMBean- Parameters:
sleepTime- polling interval in milliseconds
-
getSleepTime
Description copied from interface:SystemMonitorMBeanReturns the configured polling interval.- Specified by:
getSleepTimein interfaceSystemMonitorMBean- Returns:
- polling interval in milliseconds
-
setDetailRequired
Description copied from interface:SystemMonitorMBeanToggles whether the dump should include detailed thread/memory information.- Specified by:
setDetailRequiredin interfaceSystemMonitorMBean- Parameters:
detail-trueto enable detailed dumps
-
getDetailRequired
Description copied from interface:SystemMonitorMBeanIndicates whether detailed dumps are currently enabled.- Specified by:
getDetailRequiredin interfaceSystemMonitorMBean- Returns:
trueif detailed dumps are enabled
-
run
-
setConfiguration
Description copied from interface:ConfigurableConfigures this object with the suppliedConfiguration.- Specified by:
setConfigurationin interfaceConfigurable- Overrides:
setConfigurationin classQBeanSupport- Parameters:
cfg- Configuration object- Throws:
ConfigurationException- if the configuration is invalid
-