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.name - the name of the int counter StatisticDescriptordescription - the description of the int counter StatisticDescriptorunits - the units of the int counter StatisticDescriptorStatisticDescriptorStatisticDescriptor createLongCounter(String name, String description, String units)
StatisticDescriptor with the given
name, description, units, and with larger values
indicating better performance.name - the name of the long counter StatisticDescriptordescription - the description of the long counter StatisticDescriptorunits - the units of the long counter StatisticDescriptorStatisticDescriptorStatisticDescriptor createDoubleCounter(String name, String description, String units)
StatisticDescriptor with the given
name, description, units, and with larger values
indicating better performance.name - the name of the double counter StatisticDescriptordescription - the description of the double counter StatisticDescriptorunits - the units of the double counter StatisticDescriptorStatisticDescriptor@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.name - the name of the int gauge StatisticDescriptordescription - the description of the int gauge StatisticDescriptorunits - the units of the int gauge StatisticDescriptorStatisticDescriptorStatisticDescriptor createLongGauge(String name, String description, String units)
StatisticDescriptor with the given name,
description, units, and with smaller values indicating better
performance.name - the name of the long gauge StatisticDescriptordescription - the description of the long gauge StatisticDescriptorunits - the units of the long gauge StatisticDescriptorStatisticDescriptorStatisticDescriptor createDoubleGauge(String name, String description, String units)
StatisticDescriptor with the given
name, description, units, and with smaller values
indicating better performance.name - the name of the double gauge StatisticDescriptordescription - the description of the double gauge StatisticDescriptorunits - the units of the double gauge StatisticDescriptorStatisticDescriptor@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.name - the name of the int counter StatisticDescriptordescription - the description of the int counter StatisticDescriptorunits - the units of the int counter StatisticDescriptorlargerBetter - whether larger values indicate better performanceStatisticDescriptorStatisticDescriptor createLongCounter(String name, String description, String units, boolean largerBetter)
StatisticDescriptor with the given
name, description, largerBetter, and units.name - the name of the long counter StatisticDescriptordescription - the description of the long counter StatisticDescriptorunits - the units of the long counter StatisticDescriptorlargerBetter - whether larger values indicate better performanceStatisticDescriptorStatisticDescriptor createDoubleCounter(String name, String description, String units, boolean largerBetter)
StatisticDescriptor with the given
name, description, largerBetter, and units.name - the name of the double counter StatisticDescriptordescription - the description of the double counter StatisticDescriptorunits - the units of the double counter StatisticDescriptorlargerBetter - whether larger values indicate better performanceStatisticDescriptor@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.name - the name of the int gauge StatisticDescriptordescription - the description of the int gauge StatisticDescriptorunits - the units of the int gauge StatisticDescriptorlargerBetter - whether larger values indicate better performanceStatisticDescriptorStatisticDescriptor createLongGauge(String name, String description, String units, boolean largerBetter)
StatisticDescriptor with the given name,
description, largerBetter, and units.name - the name of the long gauge StatisticDescriptordescription - the description of the long gauge StatisticDescriptorunits - the units of the long gauge StatisticDescriptorlargerBetter - whether larger values indicate better performanceStatisticDescriptorStatisticDescriptor createDoubleGauge(String name, String description, String units, boolean largerBetter)
StatisticDescriptor with the given
name, description, largerBetter, and units.name - the name of the double gauge StatisticDescriptordescription - the description of the double gauge StatisticDescriptorunits - the units of the double gauge StatisticDescriptorlargerBetter - whether larger values indicate better performanceStatisticDescriptorStatisticsType createType(String name, String description, StatisticDescriptor[] stats)
StatisticsType with the given name,
description, and statistic descriptions.name - the name of the StatisticsType to create or finddescription - the description of the StatisticsType to create or findstats - the statistic descriptions of the StatisticsType to create or findStatisticsType with the given name, description,
and statistic descriptionsIllegalArgumentException - 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.name - the name of the StatisticsType to findStatisticsType with the given nameStatisticsType[] 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.StatisticsTypesIllegalArgumentException - if a type defined in the reader already existsIOException - Something went wrong while reading from reader