type=page
status=published
title=set-log-levels
next=setup-local-dcom.html
prev=set-log-file-format.html
~~~~~~
set-log-levels
==============

[[set-log-levels-1]][[GSRFM00228]][[set-log-levels]]

set-log-levels
--------------

sets the log level for one or more loggers

[[sthref2057]]

Synopsis

[source,oac_no_warn]
----
asadmin [asadmin-options] set-log-levels [--help]
[--target=target]
logger-name=logger-level[:logger-name=logger-level]*
----

[[sthref2058]]

Description

The `set-log-levels` subcommand sets the log level for one or more
loggers. Changes take effect dynamically. Depending on the log levels
you set, a server restart may be necessary.

This subcommand is supported in remote mode only.

[[sthref2059]]

Options

asadmin-options::
  Options for the `asadmin` utility. For information about these
  options, see the link:asadmin.html#asadmin-1m[`asadmin`(1M)] help page.
`--help`::
`-?`::
  Displays the help text for the subcommand.
`--target`::
  The server instance or cluster for which log levels will be set. Valid
  values are: +
  * `server` - The default server instance. If no target is specified
  then log levels are set for the default server instance.
  * cluster-name - The name of a cluster.
  * instance-name - The name of a standalone server instance.

[[sthref2060]]

Operands

logger-name::
  The name of the logger. The `list-log-levels` subcommand can be used
  to list the names of the current loggers.
logger-level::
  The level to set for the logger. Log level values are `SEVERE`,
  `WARNING`, `INFO`, `CONFIG`, `FINE`, `FINER`, and `FINEST`. The
  default setting is `INFO`.

[[sthref2061]]

Examples

[[GSRFM749]][[sthref2062]]

Example 1   Setting a Log Level for a Logger

This example sets the log level of the web container logger to
`WARNING`.

[source,oac_no_warn]
----
asadmin> set-log-levels jakarta.enterprise.system.container.web=WARNING
Command set-log-level executed successfully.
----

[[GSRFM750]][[sthref2063]]

Example 2   Setting the Log Level for Multiple Loggers

This example sets the log level of the web container logger to `FINE`
and the log level of the EJB container logger to `SEVERE`:

[source,oac_no_warn]
----
asadmin set-log-levels jakarta.enterprise.system.container.web=FINE:
jakarta.enterprise.system.container.ejb=SEVERE
Command set-log-level executed successfully.
----

[[sthref2064]]

Exit Status

0::
  subcommand executed successfully
1::
  error in executing the subcommand

[[sthref2065]]

See Also

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

link:collect-log-files.html#collect-log-files-1[`collect-log-files`(1)],
link:list-log-attributes.html#list-log-attributes-1[`list-log-attributes`(1)],
link:list-log-levels.html#list-log-levels-1[`list-log-levels`(1)],
link:rotate-log.html#rotate-log-1[`rotate-log`(1)],
link:set-log-attributes.html#set-log-attributes-1[`set-log-attributes`(1)]

"link:../administration-guide/logging.html#GSADG00010[Administering the Logging Service]" in GlassFish
Server Open Source Edition Administration Guide


