@InterfaceAudience.Public @InterfaceStability.Evolving public class CompositeContext extends AbstractMetricsContext
AbstractMetricsContext.MetricMap, AbstractMetricsContext.TagMap
DEFAULT_PERIOD
Constructor and Description |
---|
CompositeContext() |
Modifier and Type | Method and Description |
---|---|
void |
close()
Stops monitoring and frees buffered data, returning this
object to its initial state.
|
protected void |
emitRecord(String contextName,
String recordName,
OutputRecord outRec)
Sends a record to the metrics system.
|
protected void |
flush()
Called each period after all records have been emitted, this method does nothing.
|
void |
init(String contextName,
ContextFactory factory)
Initializes the context.
|
boolean |
isMonitoring()
Return true if all subcontexts are monitoring.
|
MetricsRecord |
newRecord(String recordName)
Subclasses should override this if they subclass MetricsRecordImpl.
|
void |
registerUpdater(Updater updater)
Registers a callback to be called at time intervals determined by
the configuration.
|
void |
startMonitoring()
Starts or restarts monitoring, the emitting of metrics records.
|
void |
stopMonitoring()
Stops monitoring.
|
void |
unregisterUpdater(Updater updater)
Removes a callback, if it exists.
|
createRecord, getAllRecords, getAttribute, getAttributeTable, getContextFactory, getContextName, getPeriod, parseAndSetPeriod, remove, setPeriod, update
@InterfaceAudience.Private public CompositeContext()
@InterfaceAudience.Private public void init(String contextName, ContextFactory factory)
AbstractMetricsContext
init
in interface MetricsContext
init
in class AbstractMetricsContext
contextName
- The given name for this contextfactory
- The creator of this context@InterfaceAudience.Private public MetricsRecord newRecord(String recordName)
AbstractMetricsContext
newRecord
in class AbstractMetricsContext
recordName
- the name of the record@InterfaceAudience.Private protected void emitRecord(String contextName, String recordName, OutputRecord outRec) throws IOException
AbstractMetricsContext
emitRecord
in class AbstractMetricsContext
IOException
@InterfaceAudience.Private protected void flush() throws IOException
AbstractMetricsContext
flush
in class AbstractMetricsContext
IOException
@InterfaceAudience.Private public void startMonitoring() throws IOException
AbstractMetricsContext
startMonitoring
in interface MetricsContext
startMonitoring
in class AbstractMetricsContext
IOException
@InterfaceAudience.Private public void stopMonitoring()
AbstractMetricsContext
stopMonitoring
in interface MetricsContext
stopMonitoring
in class AbstractMetricsContext
AbstractMetricsContext.close()
@InterfaceAudience.Private public boolean isMonitoring()
isMonitoring
in interface MetricsContext
isMonitoring
in class AbstractMetricsContext
@InterfaceAudience.Private public void close()
AbstractMetricsContext
close
in interface MetricsContext
close
in class AbstractMetricsContext
@InterfaceAudience.Private public void registerUpdater(Updater updater)
AbstractMetricsContext
registerUpdater
in interface MetricsContext
registerUpdater
in class AbstractMetricsContext
updater
- object to be run periodically; it should update
some metrics records@InterfaceAudience.Private public void unregisterUpdater(Updater updater)
AbstractMetricsContext
unregisterUpdater
in interface MetricsContext
unregisterUpdater
in class AbstractMetricsContext
updater
- object to be removed from the callback listCopyright © 2013 Apache Software Foundation. All rights reserved.