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(java.lang.String name,
java.lang.String description,
java.lang.String units)
Creates and returns a double counter
StatisticDescriptor with the given
name , description , units , and with larger values
indicating better performance. |
StatisticDescriptor |
createDoubleCounter(java.lang.String name,
java.lang.String description,
java.lang.String units,
boolean largerBetter)
Creates and returns a double counter
StatisticDescriptor with the given
name , description , largerBetter , and units . |
StatisticDescriptor |
createDoubleGauge(java.lang.String name,
java.lang.String description,
java.lang.String units)
Creates and returns a double gauge
StatisticDescriptor with the given
name , description , units , and with smaller values
indicating better performance. |
StatisticDescriptor |
createDoubleGauge(java.lang.String name,
java.lang.String description,
java.lang.String units,
boolean largerBetter)
Creates and returns a double gauge
StatisticDescriptor with the given
name , description , largerBetter , and units . |
StatisticDescriptor |
createIntCounter(java.lang.String name,
java.lang.String description,
java.lang.String units)
Deprecated.
as of Geode 1.10, use
createLongCounter(String, String, String) instead |
StatisticDescriptor |
createIntCounter(java.lang.String name,
java.lang.String description,
java.lang.String units,
boolean largerBetter)
Deprecated.
as of Geode 1.10, use
createLongCounter(String, String, String, boolean)
instead |
StatisticDescriptor |
createIntGauge(java.lang.String name,
java.lang.String description,
java.lang.String units)
Deprecated.
as of Geode 1.10, use
createLongGauge(String, String, String) instead |
StatisticDescriptor |
createIntGauge(java.lang.String name,
java.lang.String description,
java.lang.String units,
boolean largerBetter)
Deprecated.
as of Geode 1.10, use
createLongGauge(String, String, String, boolean)
instead |
StatisticDescriptor |
createLongCounter(java.lang.String name,
java.lang.String description,
java.lang.String units)
Creates and returns a long counter
StatisticDescriptor with the given
name , description , units , and with larger values
indicating better performance. |
StatisticDescriptor |
createLongCounter(java.lang.String name,
java.lang.String description,
java.lang.String units,
boolean largerBetter)
Creates and returns a long counter
StatisticDescriptor with the given
name , description , largerBetter , and units . |
StatisticDescriptor |
createLongGauge(java.lang.String name,
java.lang.String description,
java.lang.String units)
Creates and returns a long gauge
StatisticDescriptor with the given name ,
description , units , and with smaller values indicating better
performance. |
StatisticDescriptor |
createLongGauge(java.lang.String name,
java.lang.String description,
java.lang.String units,
boolean largerBetter)
Creates and returns a long gauge
StatisticDescriptor with the given name ,
description , largerBetter , and units . |
StatisticsType |
createType(java.lang.String name,
java.lang.String description,
StatisticDescriptor[] stats)
Creates or finds and returns a
StatisticsType with the given name ,
description , and statistic descriptions . |
StatisticsType[] |
createTypesFromXml(java.io.Reader reader)
Creates one or more
StatisticsType from the contents of the given reader . |
StatisticsType |
findType(java.lang.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(java.lang.String name, java.lang.String description, java.lang.String units)
createLongCounter(String, String, String)
insteadStatisticDescriptor
with the given
name
, description
, units
, and with larger values
indicating better performance.StatisticDescriptor createLongCounter(java.lang.String name, java.lang.String description, java.lang.String units)
StatisticDescriptor
with the given
name
, description
, units
, and with larger values
indicating better performance.StatisticDescriptor createDoubleCounter(java.lang.String name, java.lang.String description, java.lang.String units)
StatisticDescriptor
with the given
name
, description
, units
, and with larger values
indicating better performance.@Deprecated StatisticDescriptor createIntGauge(java.lang.String name, java.lang.String description, java.lang.String units)
createLongGauge(String, String, String)
insteadStatisticDescriptor
with the given name
,
description
, units
, and with smaller values indicating better
performance.StatisticDescriptor createLongGauge(java.lang.String name, java.lang.String description, java.lang.String units)
StatisticDescriptor
with the given name
,
description
, units
, and with smaller values indicating better
performance.StatisticDescriptor createDoubleGauge(java.lang.String name, java.lang.String description, java.lang.String units)
StatisticDescriptor
with the given
name
, description
, units
, and with smaller values
indicating better performance.@Deprecated StatisticDescriptor createIntCounter(java.lang.String name, java.lang.String description, java.lang.String units, boolean largerBetter)
createLongCounter(String, String, String, boolean)
insteadStatisticDescriptor
with the given
name
, description
, largerBetter
, and units
.StatisticDescriptor createLongCounter(java.lang.String name, java.lang.String description, java.lang.String units, boolean largerBetter)
StatisticDescriptor
with the given
name
, description
, largerBetter
, and units
.StatisticDescriptor createDoubleCounter(java.lang.String name, java.lang.String description, java.lang.String units, boolean largerBetter)
StatisticDescriptor
with the given
name
, description
, largerBetter
, and units
.@Deprecated StatisticDescriptor createIntGauge(java.lang.String name, java.lang.String description, java.lang.String units, boolean largerBetter)
createLongGauge(String, String, String, boolean)
insteadStatisticDescriptor
with the given name
,
description
, largerBetter
, and units
.StatisticDescriptor createLongGauge(java.lang.String name, java.lang.String description, java.lang.String units, boolean largerBetter)
StatisticDescriptor
with the given name
,
description
, largerBetter
, and units
.StatisticDescriptor createDoubleGauge(java.lang.String name, java.lang.String description, java.lang.String units, boolean largerBetter)
StatisticDescriptor
with the given
name
, description
, largerBetter
, and units
.StatisticsType createType(java.lang.String name, java.lang.String description, StatisticDescriptor[] stats)
StatisticsType
with the given name
,
description
, and statistic descriptions
.java.lang.IllegalArgumentException
- if a type with the given name
already exists and
it differs from the given parameters.StatisticsType findType(java.lang.String name)
StatisticsType
with the given name
.
Returns null
if the type does not exist.StatisticsType[] createTypesFromXml(java.io.Reader reader) throws java.io.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
.java.lang.IllegalArgumentException
- if a type defined in the reader already existsjava.io.IOException
- Something went wrong while reading from reader