blob: d7613e331bdba8e679c928a8f24155d7be10d36a [file] [log] [blame]
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<HTML>
<BODY>
<P>The base package of the GemFire Java product, featuring highly
concurrent distributed {@linkplain org.apache.geode.cache.Cache caching}
with {@linkplain org.apache.geode.cache.CacheEvent cache event} delivery,
<a href="{@docRoot}/org/apache/geode/cache/query/package-summary.html#package_description">OQL querying</a>, and
<a href="{@docRoot}/org/apache/geode/admin/package-summary.html#package_description">remote cache administration</a>, built using a {@linkplain
org.apache.geode.distributed.DistributedSystem} which includes a
{@linkplain org.apache.geode.distributed.DistributedLockService}.
</P>
<p>This package contains classes that are used throughout GemFire,
providing enhanced serialization performance using the {@link
org.apache.geode.DataSerializable} feature and the ability to
profile your GemFire application using a handy {@link
org.apache.geode.Statistics} infrastructure.
<p>
<!-- ------------------------------------------------------------ -->
<A NAME="statistics"><H2>GemFire Statistics</H2></A>
<P>The ability to monitor and analyze the behavior and performance of
an application can ease the job of optimization. To aid in this
analysis, GemFire provides the ability to register and capture
application statistics. An application statistic is simply a number
that the application is free to modify and that is monitored by
the GemFire's statistics collector.
The statistics may be
monitored at runtime using the Admin API or GemFire JMX Agent.</P>
<P>Each application statistic is described by a
{@link org.apache.geode.StatisticDescriptor} instance.
Logical groupings of application statistics are described by a
{@link org.apache.geode.StatisticsType} instance that contains the name
and description of each statistic. Each instance of an type
is represented by an instance of
{@link org.apache.geode.Statistics}.
The {@link org.apache.geode.StatisticDescriptor descriptors},
{@link org.apache.geode.StatisticsType types}, and
{@link org.apache.geode.Statistics instances} are created using an
instance of the {@link org.apache.geode.StatisticsFactory} interface.
Each statistics instance
(there may be multiple instances of a statistics type) can be identified
by a {@link org.apache.geode.Statistics#getTextId text id}
and/or a {@link org.apache.geode.Statistics#getNumericId numeric id}.
The name, description, etc. of the statistic and its type
are available in the Admin API or GemFire JMX Agent.</P>
<P>An application can get, set, and increment the value of a statistic
using methods of the <code>Statistics</code> interface. If statistics
sampling has been <A
href="distributed/DistributedSystem.html#statistic-sampling-enabled">enabled</A>
a thread in the application VM <A
href="distributed/DistributedSystem.html#statistic-sample-rate">periodically</A>
reads the values of application statistics allowing them to be viewed
by the Admin API and GemFire JMX Agent. Statistics may also be archived
to a file, the <A
href="distributed/DistributedSystem.html#statistic-archive-file ">name
and location</A> of which may be configured when creating a {@link
org.apache.geode.distributed.DistributedSystem}. </P>
<P>In addition to application statistics, GemFire maintains statistics
about the distributed system, the distributed cache,
and the physical machine on which it runs. These statistics can be
monitored, viewed, and archived just like application statistics.</P>
</BODY>
</HTML>