Class Stats
- All Implemented Interfaces:
ShutdownListener
Allows a uniform interface to statistics information in a uniform format.
Stats supports different states of filing stats information:
OFF, FILE and CONSOLE.
-
OFFstatistics is turned off. -
FILEstatistics information is written to a file -
CONSOLEstatistics information is written on console
Stats service uses the property file, AMConfig.properties, to
set the default stats level and the output directory where the stats files
will be placed. The properties file is located (using
ResourceBundle semantics) from one of the directories in
the CLASSPATH.
The following keys are used to configure the Stats service. Possible values for the key 'state' are: off | off | file | console The key 'directory' specifies the output directory where the stats files will be created.
If there is an error reading or loading the properties, all the information is redirected tocom.iplanet.services.stats.state com.iplanet.services.stats.directory
System.out
If these properties are changed, the server must be restarted for the changes
to take effect.
NOTE: Printing Statistics is an IO intensive operation and may hurt
application performance when abused. Particularly, note that Java evaluates
the arguments to message() and warning() even
when statistics is turned off. It is recommended that the stats state be
checked before invoking any message() or
warning() methods to avoid unnecessary argument evaluation and
to maximize application performance.
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionvoidaddStatsListener(com.sun.identity.shared.stats.StatsListener listener) voiddestroy()Destroys the stats object, closes the stats file and releases any system resources.protected voidfinalize()Flushes and then closes the stats file.static StatsgetInstance(String statsName) Returns an existing instance of Stats for the specified stats file or a new one if no such instance already exists.intgetState()Returns one of the 3 possible values.booleanChecks if statistics is enabled.voidPrints messages only when the stats state is eitherStats.FILEorStats.CONSOLE.voidsetStats(int statsType) Sets the stats capabilities based on the values of thestatsTypeargument.voidSets thestatscapabilities based on the values of thestatsTypeargument.voidshutdown()The function to run when the system shutdown.
-
Field Details
-
OFF
public static final int OFFflags the disabled stats state.- See Also:
-
FILE
public static final int FILEFlags the state where all the statistic information is printed to a file- See Also:
-
CONSOLE
public static final int CONSOLEFlags the state where printing to a file is disabled. All printing is done on System.out.- See Also:
-
-
Method Details
-
getInstance
Returns an existing instance of Stats for the specified stats file or a new one if no such instance already exists. If a Stats object has to be created, its level is set to the level defined in theAMConfig.propertiesfile. The level can be changed later by usingsetStats(int)orsetStats(String)- Parameters:
statsName- name of statistic instance.- Returns:
- an existing instance of Stats for the specified stats file.
-
isEnabled
public boolean isEnabled()Checks if statistics is enabled.NOTE: It is recommended that
isEnabled()be used instead ofisEnabled()as the former is more intuitive.- Returns:
trueif statistics is enabledfalseif statistics is disabled
-
getState
public int getState()Returns one of the 3 possible values.Stats.OFFStats.FILEStats.CONSOLE
- Returns:
- state of Stats.
-
record
Prints messages only when the stats state is eitherStats.FILEorStats.CONSOLE.NOTE: Printing Statistics is an IO intensive operation and may hurt application performance when abused. Particularly, note that Java evaluates arguments to
message()even when statistics is turned off. So when the argument to this method involves the String concatenation operator '+' or any other method invocation,isEnabledMUST be used. It is recommended that the stats state be checked by invokingisEnabled()before invoking anymessage()methods to avoid unnecessary argument evaluation and maximize application performance.- Parameters:
msg- message to be recorded.
-
setStats
public void setStats(int statsType) Sets the stats capabilities based on the values of thestatsTypeargument.- Parameters:
statsType- is any one of five possible values:Stats.OFFStats.FILEStats.CONSOLE
-
setStats
Sets thestatscapabilities based on the values of thestatsTypeargument.- Parameters:
statsType- is any one of the following possible values:off - statistics is disabled
file - statistics are written to the stats file
System.outconsole - statistics are written to the stats to the console
-
destroy
public void destroy()Destroys the stats object, closes the stats file and releases any system resources. Note that the stats file will remain open untildestroy()is invoked. To conserve file resources, you should invokedestroy()explicitly rather than wait for the garbage collector to clean up.If this object is accessed after
destroy()has been invoked, the results are undefined. -
shutdown
public void shutdown()Description copied from interface:ShutdownListenerThe function to run when the system shutdown.- Specified by:
shutdownin interfaceShutdownListener
-
finalize
protected void finalize()Flushes and then closes the stats file.
-