type=page
status=published
title=monitoring
next=passwords.html
prev=logging.html
~~~~~~
monitoring
==========

[[monitoring-5asc]][[GSRFM00271]][[monitoring]]

monitoring
----------

reviewing the runtime state of components and services deployed in
\{product---name}

[[sthref2406]]

Description

Monitoring is the process of reviewing the statistics of a system to
improve performance or solve problems. By monitoring the state of
various components and services deployed in \{product---name},
performance bottlenecks can be identified, failures can be anticipated,
and runtime standards can be established and observed. Data gathered by
monitoring can also be useful in performance tuning and capacity
planning.

The \{product---name} monitoring service is enabled by default, that is,
the `monitoring-enabled` attribute of the `monitoring-service` element
is set to true. Once the monitoring service is enabled, a deployed
module can then be enabled for monitoring by setting its monitoring
level to HIGH or LOW (default is OFF). Monitoring can be configured
dynamically by using the Administration Console or the
`enable-monitoring` and the `disable-monitoring` subcommands. The `set`
subcommand can also be used with dotted names to enable or disable
monitoring. However, a server restart is required for changes made by
using the `set` subcommand to take affect.

Monitoring data can be viewed by using the Administration Console or by
using the subcommands of the `asadmin` utility.

* The `monitor` subcommand displays monitoring data for a given type,
similar to the UNIX `top` command. The data is presented at given
intervals.
* The `list` and `get` subcommands display comprehensive data. Both use
dotted names to specify monitorable objects.

Alternate tools for monitoring \{product---name} components and services
include JConsole and the REST interface.

The Monitoring Scripting Client or DTrace Monitoring can be used to
start the available monitoring probes. Using these tools is helpful in
identifying performance issues during runtime. Monitoring Scripting
Client or DTrace Monitoring are only usable if their modules are
present.

[[sthref2407]]

See Also

link:monitor.html#monitor-1[`monitor`(1)],
link:enable-monitoring.html#enable-monitoring-1[`enable-monitoring`(1)],
link:disable-monitoring.html#disable-monitoring-1[`disable-monitoring`(1)],
link:list.html#list-1[`list`(1)], link:get.html#get-1[`get`(1)],
link:set.html#set-1[`set`(1)]

link:dotted-names.html#dotted-names-5asc[`dotted-names`(5ASC)]

link:asadmin.html#asadmin-1m[`asadmin`(1M)]

"link:../administration-guide/monitoring.html#GSADG00011[Administering the Monitoring Service]" in GlassFish
Server Open Source Edition Administration Guide


