public interface StatisticsTypeFactory
StatisticDescriptor
and StatisticsType. Every StatisticsFactory is also a type factory.
A StatisticsTypeFactory can create a statistic of three
numeric types: int, long, and double. A statistic
(StatisticDescriptor) can either be a gauge meaning that its value can
increase and decrease or a counter meaning that its value is strictly increasing.
The following code is an example of how to create a type using code. In this example the type has two counters:
StatisticsTypeFactory f = ...;
StatisticsType t = f.createType(
"StatSampler",
"Stats on the statistic sampler.",
new StatisticDescriptor[] {
f.createLongCounter("sampleCount",
"Total number of samples taken by this sampler.",
"samples"),
f.createLongCounter("sampleTime",
"Total amount of time spent taking samples.",
"milliseconds"),
}
);
The following is an example of how to create the same type using XML. The XML data:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE statistics PUBLIC
"-//GemStone Systems, Inc.//GemFire Statistics Type//EN"
"http://www.gemstone.com/dtd/statisticsType.dtd">
<statistics>
<type name="StatSampler">
<description>Stats on the statistic sampler.</description>
<stat name="sampleCount" storage="long" counter="true">
<description>Total number of samples taken by this sampler.</description>
<unit>samples</unit>
</stat>
<stat name="sampleTime" storage="long" counter="true">
<description>Total amount of time spent taking samples.</description>
<unit>milliseconds</unit>
</stat>
</type>
</statistics>
The code to create the type:
StatisticsTypeFactory f = ...;
Reader r = new InputStreamReader("fileContainingXmlData"));
StatisticsType type = f.createTypesFromXml(r)[0];
| Modifier and Type | Field and Description |
|---|---|
static int |
MAX_DESCRIPTORS_PER_TYPE
The maximum number of descriptors a single statistics type can have.
|
| Modifier and Type | Method and Description |
|---|---|
StatisticDescriptor |
createDoubleCounter(String name,
String description,
String units)
Creates and returns a double counter
StatisticDescriptor with the given
name, description, units, and with larger values
indicating better performance. |
StatisticDescriptor |
createDoubleCounter(String name,
String description,
String units,
boolean largerBetter)
Creates and returns a double counter
StatisticDescriptor with the given
name, description, largerBetter, and units. |
StatisticDescriptor |
createDoubleGauge(String name,
String description,
String units)
Creates and returns a double gauge
StatisticDescriptor with the given
name, description, units, and with smaller values
indicating better performance. |
StatisticDescriptor |
createDoubleGauge(String name,
String description,
String units,
boolean largerBetter)
Creates and returns a double gauge
StatisticDescriptor with the given
name, description, largerBetter, and units. |
StatisticDescriptor |
createIntCounter(String name,
String description,
String units)
Deprecated.
as of Geode 1.10, use
createLongCounter(String, String, String) instead |
StatisticDescriptor |
createIntCounter(String name,
String description,
String units,
boolean largerBetter)
Deprecated.
as of Geode 1.10, use
createLongCounter(String, String, String, boolean)
instead |
StatisticDescriptor |
createIntGauge(String name,
String description,
String units)
Deprecated.
as of Geode 1.10, use
createLongGauge(String, String, String) instead |
StatisticDescriptor |
createIntGauge(String name,
String description,
String units,
boolean largerBetter)
Deprecated.
as of Geode 1.10, use
createLongGauge(String, String, String, boolean)
instead |
StatisticDescriptor |
createLongCounter(String name,
String description,
String units)
Creates and returns a long counter
StatisticDescriptor with the given
name, description, units, and with larger values
indicating better performance. |
StatisticDescriptor |
createLongCounter(String name,
String description,
String units,
boolean largerBetter)
Creates and returns a long counter
StatisticDescriptor with the given
name, description, largerBetter, and units. |
StatisticDescriptor |
createLongGauge(String name,
String description,
String units)
Creates and returns a long gauge
StatisticDescriptor with the given name,
description, units, and with smaller values indicating better
performance. |
StatisticDescriptor |
createLongGauge(String name,
String description,
String units,
boolean largerBetter)
Creates and returns a long gauge
StatisticDescriptor with the given name,
description, largerBetter, and units. |
StatisticsType |
createType(String name,
String description,
StatisticDescriptor[] stats)
Creates or finds and returns a
StatisticsType with the given name,
description, and statistic descriptions. |
StatisticsType[] |
createTypesFromXml(Reader reader)
Creates one or more
StatisticsType from the contents of the given reader. |
StatisticsType |
findType(String name)
Finds and returns an already created
StatisticsType with the given name. |
static final int MAX_DESCRIPTORS_PER_TYPE
Current value is: 254
@Deprecated StatisticDescriptor createIntCounter(String name, String description, String units)
createLongCounter(String, String, String) insteadStatisticDescriptor with the given
name, description, units, and with larger values
indicating better performance.StatisticDescriptor createLongCounter(String name, String description, String units)
StatisticDescriptor with the given
name, description, units, and with larger values
indicating better performance.StatisticDescriptor createDoubleCounter(String name, String description, String units)
StatisticDescriptor with the given
name, description, units, and with larger values
indicating better performance.@Deprecated StatisticDescriptor createIntGauge(String name, String description, String units)
createLongGauge(String, String, String) insteadStatisticDescriptor with the given name,
description, units, and with smaller values indicating better
performance.StatisticDescriptor createLongGauge(String name, String description, String units)
StatisticDescriptor with the given name,
description, units, and with smaller values indicating better
performance.StatisticDescriptor createDoubleGauge(String name, String description, String units)
StatisticDescriptor with the given
name, description, units, and with smaller values
indicating better performance.@Deprecated StatisticDescriptor createIntCounter(String name, String description, String units, boolean largerBetter)
createLongCounter(String, String, String, boolean)
insteadStatisticDescriptor with the given
name, description, largerBetter, and units.StatisticDescriptor createLongCounter(String name, String description, String units, boolean largerBetter)
StatisticDescriptor with the given
name, description, largerBetter, and units.StatisticDescriptor createDoubleCounter(String name, String description, String units, boolean largerBetter)
StatisticDescriptor with the given
name, description, largerBetter, and units.@Deprecated StatisticDescriptor createIntGauge(String name, String description, String units, boolean largerBetter)
createLongGauge(String, String, String, boolean)
insteadStatisticDescriptor with the given name,
description, largerBetter, and units.StatisticDescriptor createLongGauge(String name, String description, String units, boolean largerBetter)
StatisticDescriptor with the given name,
description, largerBetter, and units.StatisticDescriptor createDoubleGauge(String name, String description, String units, boolean largerBetter)
StatisticDescriptor with the given
name, description, largerBetter, and units.StatisticsType createType(String name, String description, StatisticDescriptor[] stats)
StatisticsType with the given name,
description, and statistic descriptions.IllegalArgumentException - if a type with the given name already exists and
it differs from the given parameters.StatisticsType findType(String name)
StatisticsType with the given name.
Returns null if the type does not exist.StatisticsType[] createTypesFromXml(Reader reader) throws IOException
StatisticsType from the contents of the given reader.
The created types can be found by calling findType(java.lang.String).reader - The source of the XML data which must comply with the
statisticsType.dtd.IllegalArgumentException - if a type defined in the reader already existsIOException - Something went wrong while reading from reader