diff --git a/docs/add-on-component-development-guide/src/main/asciidoc/adding-container-capabilities.adoc b/docs/add-on-component-development-guide/src/main/asciidoc/adding-container-capabilities.adoc
index 3dfcff2bf62..5f7d91efe92 100644
--- a/docs/add-on-component-development-guide/src/main/asciidoc/adding-container-capabilities.adoc
+++ b/docs/add-on-component-development-guide/src/main/asciidoc/adding-container-capabilities.adoc
@@ -781,8 +781,8 @@ public class HelloWorld extends HttpServlet {
pw.println("SimpleService says " + greeter.saySomething());
pw.println("
");
}
- } catch(Exception e) {
- e.printStackTrace();
+ } catch(Exception e) {
+ e.printStackTrace();
}
}
}
diff --git a/docs/administration-guide/src/main/asciidoc/asadmin-subcommands.adoc b/docs/administration-guide/src/main/asciidoc/asadmin-subcommands.adoc
index 67a3d5e7e1e..38aba317cc1 100644
--- a/docs/administration-guide/src/main/asciidoc/asadmin-subcommands.adoc
+++ b/docs/administration-guide/src/main/asciidoc/asadmin-subcommands.adoc
@@ -1,7 +1,6 @@
-type=page
-status=published
title=Subcommands for the asadmin Utility
-prev=part-appendixes.html
+next=loe.adoc
+prev=part-appendixes.adoc
~~~~~~
= Subcommands for the asadmin Utility
@@ -667,7 +666,7 @@ link:reference-manual/delete-lifecycle-module.html#GSRFM00095[`delete-lifecycle-
link:reference-manual/collect-log-files.html#GSRFM00007[`collect-log-files`]::
Collects all available log files and creates a ZIP archive. Supported
in remote mode only. For procedural information in this guide, see
- link:logging.html#gklbi[To Collect Log Files into a ZIP Archive].
+ xref:logging.adoc#to-collect-log-files-into-a-zip-archive[To Collect Log Files into a ZIP Archive].
link:reference-manual/disable-monitoring.html#GSRFM00120[`disable-monitoring`]::
Disables the monitoring service. Supported in remote mode only. For
procedural information in this guide, see link:monitoring.html#gglcu[To
@@ -679,15 +678,14 @@ link:reference-manual/enable-monitoring.html#GSRFM00128[`enable-monitoring`]::
link:reference-manual/list-log-attributes.html#GSRFM00182[`list-log-attributes`]::
Lists log file attributes. Supported in remote mode only. For
procedural information in this guide, see
- link:logging.html#gklmn[Configuring the Logging Service].
+ xref:logging.adoc#configuring[Configuring the Logging Service].
link:reference-manual/list-log-levels.html#GSRFM00183[`list-log-levels`]::
- Lists the existing loggers. Supported in remote mode only. For
- procedural information in this guide, see link:logging.html#gjirr[To
- List Log Levels].
+ Lists the existing loggers. Supported in remote mode only.
+ For procedural information in this guide,
+ see xref:logging.adoc#to-list-log-levels[To List Log Levels].
link:reference-manual/list-loggers.html#GSRFM869[`list-loggers`]::
Lists all public loggers in your distribution of {productName}. Internal loggers are not listed. For procedural
- information in this guide, see link:logging.html#CEGGICGF[To List
- Loggers].
+ information in this guide, see xref:logging.adoc#to-list-loggers[To List Loggers].
link:reference-manual/monitor.html#GSRFM00212[`monitor`]::
Displays monitoring information for the common {productName}
resources. Supported in remote mode only. For procedural information
@@ -696,20 +694,19 @@ link:reference-manual/monitor.html#GSRFM00212[`monitor`]::
link:reference-manual/rotate-log.html#GSRFM00224[`rotate-log`]::
Rotates the `server.log` file and stores the old data in a
time-stamped file. Supported in remote mode only. For procedural
- information in this guide, see link:logging.html#gkmau[To Rotate Log
- Files Manually].
+ information in this guide, see xref:logging.adoc#to-rotate-log-files-manually[To Rotate Log Files Manually].
link:reference-manual/set-log-attributes.html#GSRFM00227[`set-log-attributes`]::
Sets log file attributes. Supported in remote mode only. For
procedural information in this guide, see
- link:logging.html#gklmn[Configuring the Logging Service].
+ xref:logging.adoc#configuring[Configuring the Logging Service].
link:reference-manual/set-log-file-format.html#GSRFM879[`set-log-file-format`]::
Sets the formatter used to format log records in log files. For
procedural information in this guide, see
- link:logging.html#CEGDJEBG[Setting the Log File Format].
+ xref:logging.adoc#setting-the-log-file-format[Setting the Log File Format].
link:reference-manual/set-log-levels.html#GSRFM00228[`set-log-levels`]::
Sets the log level for a module. Supported in remote mode only. For
procedural information in this guide, see
- link:logging.html#gklml[Setting Log Levels].
+ xref:logging.adoc#gklml[Setting Log Levels].
[[giusq]][[GSADG00620]][[orb-subcommands]]
diff --git a/docs/administration-guide/src/main/asciidoc/batch.adoc b/docs/administration-guide/src/main/asciidoc/batch.adoc
index 30c719f88ab..9d7b66597f3 100644
--- a/docs/administration-guide/src/main/asciidoc/batch.adoc
+++ b/docs/administration-guide/src/main/asciidoc/batch.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Administering Batch Jobs
-next=part-res-and-svcs-admin.html
-prev=lifecycle-modules.html
+next=part-res-and-svcs-admin.adoc
+prev=lifecycle-modules.adoc
~~~~~~
= Administering Batch Jobs
diff --git a/docs/administration-guide/src/main/asciidoc/concurrent.adoc b/docs/administration-guide/src/main/asciidoc/concurrent.adoc
index bfff5cdb3d9..4715fcdbcca 100644
--- a/docs/administration-guide/src/main/asciidoc/concurrent.adoc
+++ b/docs/administration-guide/src/main/asciidoc/concurrent.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Administering Concurrent Resources
-next=orb.html
-prev=http_https.html
+next=orb.adoc
+prev=http_https.adoc
~~~~~~
= Administering Concurrent Resources
diff --git a/docs/administration-guide/src/main/asciidoc/connectors.adoc b/docs/administration-guide/src/main/asciidoc/connectors.adoc
index d796eb2a59b..e68d27bed75 100644
--- a/docs/administration-guide/src/main/asciidoc/connectors.adoc
+++ b/docs/administration-guide/src/main/asciidoc/connectors.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Administering EIS Connectivity
-next=http_https.html
-prev=jdbc.html
+next=http_https.adoc
+prev=jdbc.adoc
~~~~~~
= Administering EIS Connectivity
diff --git a/docs/administration-guide/src/main/asciidoc/domains.adoc b/docs/administration-guide/src/main/asciidoc/domains.adoc
index 144c70489c5..e646909427e 100644
--- a/docs/administration-guide/src/main/asciidoc/domains.adoc
+++ b/docs/administration-guide/src/main/asciidoc/domains.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Administering Domains
-next=jvm.html
-prev=general-administration.html
+next=jvm.adoc
+prev=general-administration.adoc
~~~~~~
= Administering Domains
diff --git a/docs/administration-guide/src/main/asciidoc/general-administration.adoc b/docs/administration-guide/src/main/asciidoc/general-administration.adoc
index 0e174af9b51..26f60290c1a 100644
--- a/docs/administration-guide/src/main/asciidoc/general-administration.adoc
+++ b/docs/administration-guide/src/main/asciidoc/general-administration.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=General Administration
-next=domains.html
-prev=part-runtime-admin.html
+next=domains.adoc
+prev=part-runtime-admin.adoc
~~~~~~
= General Administration
@@ -3003,7 +3001,7 @@ The JSON representation of a log record in a record list is as follows:
"loggedDateTimeInMS":logged-date,
"loggedLevel":"log-level",
"productName":"product-name",
- "loggerName":"logger-class-name",
+ "loggerName":"logger-name",
"nameValuePairs":"_ThreadID=thread-id;_ThreadName=thread-name;",
"messageID":"message-id",
"Message":"message-text"
@@ -3016,18 +3014,18 @@ record-number::
A serial number in the form of a decimal integer that uniquely
identifies the log record.
logged-date::
- The date and time in UNIX time that the record was created.
+ time when the record was created - a number of milliseconds from the epoch
+ of `1970-01-01T00:00:00Z`.
log-level::
The severity level of the message in the log record. For more
- information, see link:logging.html#gklml[Setting Log Levels].
+ information, see xref:logging.adoc#setting-log-levels[Setting Log Levels].
product-name::
- The application that created the log message, for example, `glassfish7`.
-logger-class-name::
- The fully qualified name of the Java class of the logger class that
- created the log message. Each component of {productName} provides
- its own logger class. For detailed information about the names of
- logger classes in {productName}, see link:logging.html#gkres[Logger
- Namespaces].
+ The application that created the log message, for example, `GlassFish 7.0`.
+logger-name::
+ The logger name, which is usually a fully qualified name of the Java class
+ owning the logger class that created the log record. For detailed information
+ how to get names of logger classes used in {productName},
+ see xref:logging.adoc#listing-loggers[Listing Loggers].
thread-id::
The numerical identifier of the thread that created the message.
thread-name::
@@ -3127,16 +3125,16 @@ The XML representation of a log record is as follows:
The replaceable items in this format are as follows:
logged-date::
- The date and time in UNIX time that the record was created.
+ time when the record was created - a number of milliseconds from the epoch
+ of `1970-01-01T00:00:00Z`.
log-level::
The severity level of the message in the log record. For more
- information, see link:logging.html#gklml[Setting Log Levels].
+ information, see xref:logging.adoc#setting-log-levels[Setting Log Levels].
logger-class-name::
The fully qualified name of the Java class of the logger class that
created the log message. Each component of {productName} provides
its own logger class. For detailed information about the names of
- logger classes in {productName}, see link:logging.html#gkres[Logger
- Namespaces].
+ logger classes in {productName}, see xref:logging.adoc#listing-loggers[Listing Loggers].
message-id::
A unique identifier for the message. For messages from {productName}, this identifier consists of a module code and a numerical
value, for example, `CORE5004`. All `SEVERE` and `WARNING` messages
@@ -3147,8 +3145,7 @@ thread-id::
thread-name::
The name of the thread that created the message.
product-name::
- The application that created the log message, for example,
- `glassfish7`.
+ The application that created the log message, for example, `GlassFish 7.0`.
record-number::
A serial number in the form of a decimal integer that uniquely
identifies the log record.
@@ -3190,9 +3187,8 @@ The {productName} REST interfaces support the following types in the
content-type header of a client request:
* http://www.json.org/[JSON]
-* XML
-* http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4.1[Form URL
-encoded]
+* https://www.w3.org/XML/[XML]
+* http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4.1[Form URL encoded]
How to specify the type in the content-type header depends on how you
are sending the request. For example, if you are using the cURL utility,
@@ -3200,7 +3196,5 @@ specify the type through the `-H` option as follows:
* For JSON, specify `-H "Content-type: application/json"`.
* For XML, specify `-H "Content-type: application/xml"`.
-* For form URL encoded, specify
-`-H "Content-type: application/x-www-form-urlencoded"`.
-
+* For form URL encoded, specify `-H "Content-type: application/x-www-form-urlencoded"`.
diff --git a/docs/administration-guide/src/main/asciidoc/http_https.adoc b/docs/administration-guide/src/main/asciidoc/http_https.adoc
index 79f4d3c0040..b16c3607d61 100644
--- a/docs/administration-guide/src/main/asciidoc/http_https.adoc
+++ b/docs/administration-guide/src/main/asciidoc/http_https.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Administering Internet Connectivity
-next=concurrent.html
-prev=connectors.html
+next=concurrent.adoc
+prev=connectors.adoc
~~~~~~
= Administering Internet Connectivity
diff --git a/docs/administration-guide/src/main/asciidoc/javamail.adoc b/docs/administration-guide/src/main/asciidoc/javamail.adoc
index 8472e01796c..3460a4d3cc8 100644
--- a/docs/administration-guide/src/main/asciidoc/javamail.adoc
+++ b/docs/administration-guide/src/main/asciidoc/javamail.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Administering the JavaMail Service
-next=jms.html
-prev=orb.html
+next=jms.adoc
+prev=orb.adoc
~~~~~~
= Administering the JavaMail Service
diff --git a/docs/administration-guide/src/main/asciidoc/jdbc.adoc b/docs/administration-guide/src/main/asciidoc/jdbc.adoc
index 6052da04fa5..aeb180b3f05 100644
--- a/docs/administration-guide/src/main/asciidoc/jdbc.adoc
+++ b/docs/administration-guide/src/main/asciidoc/jdbc.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Administering Database Connectivity
-next=connectors.html
-prev=part-res-and-svcs-admin.html
+next=connectors.adoc
+prev=part-res-and-svcs-admin.adoc
~~~~~~
= Administering Database Connectivity
diff --git a/docs/administration-guide/src/main/asciidoc/jms.adoc b/docs/administration-guide/src/main/asciidoc/jms.adoc
index e7e5954a4d4..54c284d35eb 100644
--- a/docs/administration-guide/src/main/asciidoc/jms.adoc
+++ b/docs/administration-guide/src/main/asciidoc/jms.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Administering the Java Message Service (JMS)
-next=jndi.html
-prev=javamail.html
+next=jndi.adoc
+prev=javamail.adoc
~~~~~~
= Administering the Java Message Service (JMS)
diff --git a/docs/administration-guide/src/main/asciidoc/jndi.adoc b/docs/administration-guide/src/main/asciidoc/jndi.adoc
index ffa59689151..1e533700bd7 100644
--- a/docs/administration-guide/src/main/asciidoc/jndi.adoc
+++ b/docs/administration-guide/src/main/asciidoc/jndi.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Administering the Java Naming and Directory Interface (JNDI) Service
-next=transactions.html
-prev=jms.html
+next=transactions.adoc
+prev=jms.adoc
~~~~~~
= Administering the Java Naming and Directory Interface (JNDI) Service
diff --git a/docs/administration-guide/src/main/asciidoc/jvm.adoc b/docs/administration-guide/src/main/asciidoc/jvm.adoc
index 88439d936b1..911393318ce 100644
--- a/docs/administration-guide/src/main/asciidoc/jvm.adoc
+++ b/docs/administration-guide/src/main/asciidoc/jvm.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Administering the Virtual Machine for the Java Platform
-next=threadpools.html
-prev=domains.html
+next=threadpools.adoc
+prev=domains.adoc
~~~~~~
= Administering the Virtual Machine for the Java Platform
diff --git a/docs/administration-guide/src/main/asciidoc/lifecycle-modules.adoc b/docs/administration-guide/src/main/asciidoc/lifecycle-modules.adoc
index 1624509731f..869c7aa0528 100644
--- a/docs/administration-guide/src/main/asciidoc/lifecycle-modules.adoc
+++ b/docs/administration-guide/src/main/asciidoc/lifecycle-modules.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Administering Life Cycle Modules
-next=batch.html
-prev=monitoring.html
+next=batch.adoc
+prev=monitoring.adoc
~~~~~~
= Administering Life Cycle Modules
diff --git a/docs/administration-guide/src/main/asciidoc/loe.adoc b/docs/administration-guide/src/main/asciidoc/loe.adoc
index d53fcec6175..f75de462433 100644
--- a/docs/administration-guide/src/main/asciidoc/loe.adoc
+++ b/docs/administration-guide/src/main/asciidoc/loe.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=List of Examples
-next=lof.html
-prev=toc.html
+next=lof.adoc
+prev=toc.adoc
~~~~~~
= List of Examples
@@ -117,30 +115,23 @@ Domain]
* link:webapps.html#gjjzu[6-6 httpd.conf File for Load Balancing]
* link:webapps.html#gjjzf[6-7 workers.properties File for Load Balancing]
* link:webapps.html#gjpnc[6-8 http-ssl.conf File for mod_jk Security]
-* link:logging.html#gkmal[7-1 Changing the Name and Location of a
-Cluster's Log File]
-* link:logging.html#gkmgz[7-2 Setting the java.util.logging.config.file
-System Property]
-* link:logging.html#gjiti[7-3 Listing Logger Levels for Modules]
-* link:logging.html#gkkot[7-4 Listing Log Levels for an Instance]
-* link:logging.html#ghmfi[7-5 Changing the Global Log Level for All
-Module Loggers]
-* link:logging.html#ghmev[7-6 Setting the Log Level for a Module Logger]
-* link:logging.html#gjkat[7-7 Setting Log Levels for Multiple Loggers]
-* link:logging.html#sthref23[7-8 Setting the Log File Format using
-set-log-file-format]
-* link:logging.html#sthref24[7-9 Setting the Log File Format using
-set-log-attributes]
-* link:logging.html#sthref25[7-10 Excluding Fields in Log Records]
-* link:logging.html#sthref26[7-11 Setting Multiline Mode]
-* link:logging.html#gkmay[7-12 Changing the Rotation Size]
-* link:logging.html#gkmbc[7-13 Changing the Rotation Interval]
-* link:logging.html#gkmaq[7-14 Changing the Limit Number of Retained
-Files]
-* link:logging.html#gkmav[7-15 Rotating Log Files Manually]
-* link:logging.html#ghphb[7-16 Adding a New Log Handler]
-* link:logging.html#gklap[7-17 Creating a ZIP Archive]
-* link:logging.html#sthref27[7-18 Listing Loggers]
+* xref:logging.adoc#example-7-1[7-1 Changing the Name and Location of a Cluster's Log File]
+* xref:logging.adoc#example-7-2[7-2 Listing Logger Levels for DAS]
+* xref:logging.adoc#example-7-3[7-3 Listing Logger Levels for an Instance]
+* xref:logging.adoc#example-7-4[7-4 Changing the Logger Log Level for a Cluster]
+* xref:logging.adoc#example-7-5[7-5 Setting Log Levels for Multiple Loggers]
+* xref:logging.adoc#example-7-6[7-6 Changing the Handler Log Level]
+* xref:logging.adoc#example-7-7[7-7 Setting the Log File Format using set-log-file-format]
+* xref:logging.adoc#example-7-8[7-8 Setting the Log File Format using set-log-attributes]
+* xref:logging.adoc#example-7-9[7-9 Excluding Fields in the ODLLogFormatter]
+* xref:logging.adoc#example-7-10[7-10 Excluding Fields in the GlassFishLogHandler]
+* xref:logging.adoc#example-7-11[7-11 Disabling the Multiline Mode in the Log File]
+* xref:logging.adoc#example-7-12[7-12 Changing the Rotation Size]
+* xref:logging.adoc#example-7-13[7-13 Changing the Rotation Interval]
+* xref:logging.adoc#example-7-14[7-14 Changing the Limit Number of Archived Log Files]
+* xref:logging.adoc#example-7-15[7-15 Rotating Log Files Manually]
+* xref:logging.adoc#example-7-16[7-16 Collecting and Downloading Log Files as a ZIP File]
+* xref:logging.adoc#example-7-17[7-17 Listing Loggers]
* link:monitoring.html#gixri[8-1 Enabling the Monitoring Service
Dynamically]
* link:monitoring.html#gixre[8-2 Enabling Monitoring for Modules
diff --git a/docs/administration-guide/src/main/asciidoc/lof.adoc b/docs/administration-guide/src/main/asciidoc/lof.adoc
index 7d69f977358..09bb24d724a 100644
--- a/docs/administration-guide/src/main/asciidoc/lof.adoc
+++ b/docs/administration-guide/src/main/asciidoc/lof.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=List of Figures
-next=lot.html
-prev=loe.html
+next=lot.adoc
+prev=loe.adoc
~~~~~~
= List of Figures
diff --git a/docs/administration-guide/src/main/asciidoc/logging.adoc b/docs/administration-guide/src/main/asciidoc/logging.adoc
index 99ca1610ab4..dd8cf0722af 100644
--- a/docs/administration-guide/src/main/asciidoc/logging.adoc
+++ b/docs/administration-guide/src/main/asciidoc/logging.adoc
@@ -1,5 +1,3 @@
-type=page
-status=published
title=Administering the Logging Service
next=monitoring.html
prev=webapps.html
@@ -7,9 +5,6 @@ prev=webapps.html
= Administering the Logging Service
-[[GSADG00010]][[abluj]]
-
-
[[administering-the-logging-service]]
== 7 Administering the Logging Service
@@ -18,71 +13,169 @@ to view log information in the {productName} 7 environment.
The following topics are addressed here:
-* link:#abluk[About Logging]
-* link:#gklmn[Configuring the Logging Service]
-* link:#gkobx[Viewing Log Records]
-* link:#CEGGHGIJ[Listing Loggers]
-
-Instructions for accomplishing these tasks and editing logging service
-properties in the Administration Console are available from the
-Administration Console online help.
+* xref:#about-logging[About Logging]
+* xref:#defaults[Default Configuration]
+* xref:#configuring[Configuring the Logging Service]
+* xref:#asadmin[Using Asadmin]
-[[abluk]][[GSADG00554]][[about-logging]]
+[[about-logging]]
=== About Logging
-Logging is the process by which {productName}
-captures information about events that occur, such as configuration
-errors, security failures, or server malfunction. This data is recorded
-in log files and is usually the first source of information when
-problems occur. Analyzing the log files can help you to follow events
-that occur in the server runtime and determine the overall health of the
-server.
+Logging is the process by which Java Virtual Machine
+captures information about events that occur, such as important method calls,
+reaching states, or even configuration errors, security failures, or server malfunction.
-Although application components can use the Apache Commons Logging
-Library to record messages, the platform standard JSR 47 Logging API is
-recommended for better log configuration. For more information about JSR 47,
-see `http://jcp.org/en/jsr/detail?id=47`.
+This data is recorded in log files and is usually the first source
+of information when problems occur.
+Analyzing the log files can help you to follow events that occur
+in the server runtime and determine the overall health of the server.
-The following topics are addressed here:
+Although application components can use other logging frameworks as
+`https://www.slf4j.org/[SLF4J]` or `https://logging.apache.org/log4j/2.x/[LOG4J2]`,
+we recommend to use the
+`https://docs.oracle.com/en/java/javase/17/docs/api/java.logging/java/util/logging/package-summary.html[Java Util Logging Framework]`
+or even better it's latest facade
+`https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/System.Logger.html[System.Logger]`.
-* link:#ablul[Log Files]
-* link:#gkres[Logger Namespaces]
-* link:#gkjft[Logging Targets]
-* link:#gkkit[Logging Properties]
+[[log-manager]]
+==== Log Manager
-[[ablul]][[GSADG00719]][[log-files]]
+Log Manager is a service responsible for the logging system.
+The service is initialized on JVM startup.
+After it's first usage it cannot be changed until the JVM is restarted,
+but it can be reconfigured.
+{productName} now comes with customized log manager.
-==== Log Files
+[[level]]
+==== Level
-{productName} log records are captured in the
-server log file, which captures information about the operation of a server instance
-running in the domain. Each instance, managed server
-instance (that is, each cluster member), and the domain administration
-server (DAS) has an individual server log file.
+Level is the key feature of the logging system. Every JUL <> has an internal
+integer value representing severity.
+Levels are set to
+
+* <> as the severity level of the record.
+* <> as the minimal severity level processed by the logger. Log record with lower severity is ignored.
+* <> as the minimal severity level processed by the handler. Log record with lower severity is ignored.
+
+There are following predefined levels; however the real usage depends on developers:
+
+* ALL - Special level used by loggers and handlers to declare that they accept all levels.
+* SEVERE - Used for serious errors.
+* WARNING - Used for log records providing an information about some hazards which
+can be handled by the application or they can even lead to a severe state.
+* INFO - Used to log some important information useful even for the user.
+* CONFIG - Used for providing an information related to a configuration.
+* FINE - Level for tracing. Used for providing an information about internal behavior
+of the java application, but still not so detailed.
+* FINER - Level for tracing. More detailed information, for example usages
+of `Logger.entering` and `Logger.exiting` methods.
+* FINEST - Level for tracing. Usually very verbose messages slowing down the system
+but providing a complete information what is going on.
+* OFF - Special level used by loggers and handlers to declare that they ignore all levels.
+
+Some projects define custom levels, but at this time it is rather rare.
+
+[[log-record]]
+==== Log Record
+
+Log Record is an object created by a <> or it's caller and sent
+to the hierarchy of loggers and handlers which will process it.
+Every time you use the Logger object to log a message with a level passing
+configured level filters, one LogRecord instance is created and processed.
+
+[[logger]]
+==== Logger
+
+Logger is a facade of the logging system. It is transparent so it can be
+initialized as a constant. Logger name is usually same as the full name of
+the class which created it, but specialized loggers can be used too.
+
+Loggers are organized in a tree, so the log record is usually processed by
+the logger which accepted or created it, then passed to the parent logger (parent package),
+it's parent, etc. unless it is configured to not to do so.
+
+The logger log level specifies a severity level to filter what is important for the user.
+There are several special loggers:
+
+* root logger - uses an empty string as a name.
+* system root logger - uses an empty string as a name too, but is not accessible outside JDK, which uses it internally.
+* global logger - uses `global` as it's name. It is not recommended to use it.
+
+
+==== Handler
+
+Handler is responsible for handling the record so it can print the record
+to the standard output, file, e-mail, network, etc.
+Handler have also it's own level set. This level serves as a filter of
+incomming log records - usually it is not desired to send detailed messages
+to an e-mail, for example.
+
+==== Formatter
+
+Formatter is responsible for formatting of the log record to a String
+object. It is a usual attribute of the handler, but not all handlers use
+formatters, for example some handlers may just serialize the log record,
+call the logging system of the operating system or call a web service.
+
+==== Configuration
+
+JUL is usually configured by the `logging.properties` file unless you would use different
+log manager or you use the JVM option `java.util.logging.config.file` to override it.
+
+
+[[defaults]]
+
+=== Default Configuration
+
+[[logging-properties]]
+
+==== The Configuration File
+
+The DAS as well as each configuration, instance, and cluster has its own `logging properties` file.
+By default in an {productName} domain, logging properties files are created in the following locations:
+
+[width="100%",cols="18%,82%",options="header",]
+|===
+|Target |Default Location of Logging Properties File
+|DAS |domain-dir``/config/logging.properties``
+
+|A configuration |domain-dir``/config/``config-name``/logging.properties``,
+where config-name represents the name of a configuration that is shared
+by one or more instances or clusters.
+
+|An instance
+|domain-dir``/config/``instance-name``-config/logging.properties``, where
+instance-name represents the name of the instance.
+
+|A cluster
+|domain-dir``/config/``cluster-name``-config/logging.properties``, where
+cluster-name represents the name of the cluster.
+|===
-The following topics are addressed here:
-* link:#gkmep[Log File Names and Locations]
-* link:#gkmex[Log Records]
-* link:#gkmdz[Log Rotation]
+For information about configuring logging properties, see
+xref:#configuring[Configuring the Logging Service].
-[[gkmep]][[GSADG00644]][[log-file-names-and-locations]]
+==== The Server Log File
-===== Log File Names and Locations
+By default {productName} log records are captured in the `server.log` file which
+can be found in the `logs` directory under the instance's directory.
+Each instance, managed server instance (that is, each cluster member),
+and the domain administration server (DAS) has an individual server log file.
-In an {productName} domain, log files have the
-following name and location by default:
+This file will contain also logs of deployed applications if they use
+Java Util Logging, System.Logger or any other facade mapped to this logging
+system in the backend.
-[width="100%",cols="27%,73%",options="header",]
+[width="100%",cols="40%,60%",options="header",]
|===
-|Instance |Default Log File Name and Location
+|Instance |Default Location
|DAS |domain-dir``/logs/server.log``
|Each server instance |instance-dir``/logs/server.log``
|Cluster instance |instance-dir``/logs/server.log``
|===
-
For example, in a domain hosted on a given machine that includes a
cluster with two managed servers (`ClusterServer1` and `ClusterServer1`)
and a standalone instance (`StandaloneServer`), the log files might be
@@ -111,289 +204,465 @@ as-install-parent directory
server.log
----
-You can change the default name or location of a log file by modifying
-the logging properties file for the corresponding instance, described in
-link:#gkmak[To Change the Name and Location of the Log File].
+The `server.log` file uses the xref:#ODLFormatter[ODL] log format by default and is
+rolled to a new file after it's size exceeds 100 Megabytes. If something
+in server's JVM prints to the standard output stream or standard
+error stream, it is redirected to the `server.log` file.
-[[gkmex]][[GSADG00645]][[log-records]]
+You can change the default name, location, formatting or management of a log
+file by modifying the `logging properties` file for the corresponding instance,
+however we don't recommend to change the location of the file as it may affect
+availability of some services.
-===== Log Records
+==== The Access Log File
-{productName} writes log records in either the
-Oracle Diagnostics Logging (ODL) format or the Uniform Log Formatter
-(ULF) format. The default format is ODL. For information about changing
-the format, see link:#CEGDJEBG[Setting the Log File Format].
+The `access.log` file serves to log all requests made to the HTTP service or
+virtual server. This feature is disabled by default, but you can enable it by
+using the asadmin set command, using Admininistration Console or the Admin REST API.
-A custom formatter can also be used by specifying the fully qualified
-name of a class that extends the `java.util.logging.Formatter` class.
-The custom formatter class can be packaged in a JAR file and placed in
-the domain-dir``/lib/ext`` directory, or implemented as a Hundred-Kilobyte
-Kernel (HK2) service and the JAR containing the formatter implementation
-placed in the as-install``/modules`` directory.
+This logging feature is not persisted in logging.properties but in domain.xml, because
+it doesn't use Java Util Logging framework but an internal implementation instead.
-Log records formatted in the ODL format are displayed as follows:
+----
+asadmin> get 'server.http-service.*'
+server.http-service.virtual-server.__asadmin.access-log=${com.sun.aas.instanceRoot}/logs/access
+server.http-service.virtual-server.__asadmin.access-logging-enabled=inherit
+...
+server.http-service.virtual-server.server.access-log=${com.sun.aas.instanceRoot}/logs/access
+server.http-service.virtual-server.server.access-logging-enabled=inherit
+server.http-service.access-log.buffer-size-bytes=32768
+server.http-service.access-log.format=%client.name% %auth-user-name% %datetime% %request% %status% %response.length%
+server.http-service.access-log.max-history-files=-1
+server.http-service.access-log.rotation-enabled=true
+server.http-service.access-log.rotation-interval-in-minutes=1440
+server.http-service.access-log.rotation-policy=time
+server.http-service.access-log.rotation-suffix=yyyy-MM-dd
+server.http-service.access-log.write-interval-seconds=300
+server.http-service.access-logging-enabled=false
+----
+
+==== Standard Output Stream
+
+When you start the server with the `--verbose` argument, the server prints log
+records to the standard output too.
+The output is limited to just INFO levels and higher and uses the standard error stream,
+but this can be switched to standard output stream too.
+Log records are formatted to the xref:#UniformFormatter[Uniform Log Format] by default.
+
+==== Logger Levels
+
+The `logging.properties` contains many loggers used by the {productName} to make changes easier.
+Most of loggers use the INFO level by default.
+
+[[configuring]]
+
+=== Configuring the Logging Service
+
+You can either directly edit the `logging.properties` file or use the asadmin command,
+Administration Console or REST API.
+On DAS, changes in the file have immediate effect with some small latency before they get applied.
+For instances managed by nodes it is a bit more complicated and it depends
+on the synchronization of the configuration with DAS.
+
+[[configuring-warning]]
+[WARNING]
+====
+If you edit `logging.properties` manually on an instance managed by the node, it will be
+overwritten on the next synchronization with DAS.
+====
+
+
+[[loggers]]
+
+==== Loggers
+
+Changing the logger level is quite easy and it is a preferred way how to filter log records
+by their importance.
+
+So for example if you want to get all records handled by the logging
+system, you comment out all logger level settings except the root logger and set it's level
+to `FINEST`.
-[source]
----
-[yyyy-mm-ddThh:mm:ss.SSS-Z][ProductName-Version][Log Level]
-[Message ID][LoggerName][Key Value Pairs][[Message]]
-----
-
-* `[` and `]` mark the beginning and end of fields in the record. Some
-fields may be empty.
-* yyyy-mm-dd`T`hh:mm:ss.SSSS-Z represents the date and time that the
-record was created. For example: `2013-04-12T08:08:30.154-0700`
-* ProductName-Version represents the current version of {productName}. For example: `glassfish`
-* Log Level represents the log level. You can set any of the following
-values: `EMERGENCY`, `ALERT`, `SEVERE`, `WARNING`, `INFO`, `CONFIG`,
-`FINE`, `FINER`, and `FINEST`. The default is `INFO`.
-* Message ID consists of a module code that indicates the origin of the
-message and the message number. For example: `AS-WEB-GLUE-00172`
-* LoggerName represents a hierarchical logger namespace that identifies
-the source of the log module. For example: `jakarta.enterprise.web`
-* Key Value Pairs represents pairs of key names and values. For example:
-`timeMillis: 1365779310154`
-* Message represents the text of the log message. For multiline
-messages, `[[` marks the end of the first line, and `]]` marks the end
-of the message. Multiline messages start on a new line after the message
-header and are indented.
-
-The following is an example of a log record formatted in the ODL format:
+.level=FINEST
+----
-[source]
+[[handlers]]
+
+==== Handlers
+
+You can use all JUL features, but some of {productName} features depend on some settings
+like the existence of the configured xref:#GlassFishLogHandler[GlassFishLogHandler]
+and it's `server.log` file.
+Also be careful when changing it's configuration as it may affect the performance.
+
+[[GlassFishLogHandler]]
+===== GlassFishLogHandler
+
+The `org.glassfish.main.jul.handler.GlassFishLogHandler` is used to handle persist log records
+into the `server.log` file. It is optimized for the best performance so logging would not
+reduce the performance of the server instance and applications deployed to it.
+
+Example:
----
-[2021-04-12T08:08:30.154-0700] [glassfish 7.0] [INFO] [AS-WEB-GLUE-00172] [jakarta.enterprise.web] [tid: _ThreadID=217 _ThreadName=admin-listener(21)]
-[timeMillis: 1365779310154] [levelValue: 800] [[
- Loading application [payroll] at [/payroll]]]
+org.glassfish.main.jul.handler.GlassFishLogHandler.buffer.capacity=10000
+org.glassfish.main.jul.handler.GlassFishLogHandler.buffer.timeoutInSeconds=0
+org.glassfish.main.jul.handler.GlassFishLogHandler.enabled=true
+org.glassfish.main.jul.handler.GlassFishLogHandler.encoding=UTF-8
+org.glassfish.main.jul.handler.GlassFishLogHandler.file=${com.sun.aas.instanceRoot}/logs/server.log
+org.glassfish.main.jul.handler.GlassFishLogHandler.flushFrequency=1
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter=org.glassfish.main.jul.formatter.ODLLogFormatter
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter.excludedFields=
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter.multiline=true
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter.printSource=false
+org.glassfish.main.jul.handler.GlassFishLogHandler.level=ALL
+org.glassfish.main.jul.handler.GlassFishLogHandler.redirectStandardStreams=true
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.compress=false
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.maxArchiveFiles=0
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.limit.megabytes=100
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.limit.minutes=0
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.rollOnDateChange=false
----
-Log records formatted in the ULF format are displayed as follows:
+[[basic-settings]]
+====== Basic Settings
+
+* `enabled` - `false` means that the handler will stay configured in the logging system,
+but it will ignore incoming records. Default is `true`.
+* `encoding` - file's character encoding. Default is `UTF-8`.
+* `file` - the output file; you can use also system options - default is `${com.sun.aas.instanceRoot}/logs/server.log`
+* `flushFrequency` - count of records to be handled in a single batch. Default is 1.
+* `formatter` - a formatter class to be used for formatting log records as strings.
+Default value is xref:#ODLFormatter[`org.glassfish.main.jul.formatter.ODLLogFormatter`]
+* `formatter.*` - can be used for custom settings of the formatter.
+This works only for xref:#ODLFormatter[ODLLogFormatter], xref:#UniformFormatter[UniformLogFormatter]
+and xref:#OneLineFormatter[OneLineFormatter].
+* `level` - Level used to filter log records. Less important log records will be ignored.
+Default is `ALL`.
+* `redirectStandardStreams` - if `true`, which is default, everything printed
+to the standard output stream and standard error stream is processed by the handler
+as an INFO resp. ERROR log record. While using these streams is not recommended in
+Jakarta EE applications, it should be rather rare.
+
+====== Receive Buffer
+
+The `GlassFishLogHandler` has a receive buffer for incomming log records to optimize throughput.
+If the buffer is full and a logger tries to add another record, logger's thread is blocked.
+Then if the timeout is set to 0, the thread is blocked until there's free capacity available
+- if the handler cannot process records, it may be blocked forever.
+But if you set the timeout to a positive value, and the thread is blocked for longer time,
+the whole buffer is reset and added is just an error record describing what happened.
+
+Despite this situation should not occur in standard situation, it may happen ie. when
+the file system stops working or is extremely slow.
+
+* `buffer.capacity` - count of records in the receive buffer, default is 10000 log records.
+* `buffer.timeoutInSeconds` - maximal time for waiting. Default is 0 which means forever.
+The buffer is reset after timeout, which means that all unprocessible log records are lost.
+
+[[log-file-rotation]]
+====== Log File Rotation
+
+The `GlassFishLogHandler` can roll the output log file under following conditions:
+
+* if user forced him to do so, see xref:#setting-log-file-rotation[Forced Rotation of the server.log File] for more
+* if the size of the file exceeded given limit
+* if the date changed
+* if the specified number of minutes have passed since the file was opened
+
+The last two conditions are exclusive, the date change has higher priority.
+
+The xref:#basic-settings[`flushFrequency`] parameter affects how many log records will be formatted
+into the log file before the file is rolled out even after the file size exceeded it's configured
+limit.
+
+The rotation means that the log file is renamed, so the new file name gets
+a current timestamp as a suffix.
+If there already is a file with the same name, the implementation tries to add another suffix
+with a counter until it finds a name which doesn't exist yet.
-[source]
----
-[#|yyyy-mm-ddThh:mm:ss.SSS-Z|Log Level|ProductName-Version|LoggerName|Key Value Pairs|Message|#]
-----
-
-* `[#` and `#]` mark the beginning and end of the record.
-* The vertical bar (`|`) separates the fields of the record.
-* yyyy-mm-dd`T`hh:mm:ss.SSSS-Z represents the date and time that the
-record was created. For example: `2013-04-18T09:27:44.315-0700`
-* Log Level represents the log level. You can set any of the following
-values: `EMERGENCY`, `ALERT`, `SEVERE`, `WARNING`, `INFO`, `CONFIG`,
-`FINE`, `FINER`, and `FINEST`. The default is `INFO`.
-* ProductName-Version represents the current version of {productName}. For example: `glassfish`
-* LoggerName represents a hierarchical logger namespace that identifies
-the source of the log module. For example: `jakarta.enterprise.web.core`
-* Key Value Pairs represents pairs of key names and values and can
-include a message ID. For example: `_MessageID=AS-WEB-CORE-00306`.
-+
-Message IDs are included for all {productName}
-`EMERGENCY`, `ALERT`, `SEVERE`, and `WARNING` messages, and for many
-`INFO` messages.
-* Message represents the text of the log message. Multiline messages
-start on a new line after the message header and are indented.
+drwxrwxr-x 14 admin admin 4096 čec 29 21:21 ../
+-rw-rw-r-- 1 admin admin 2521 srp 3 18:18 server.log
+-rw-rw-r-- 1 admin admin 191391 čec 29 21:21 server.log_2022-07-29T21-21-54
+-rw-rw-r-- 1 admin admin 24920 srp 3 18:18 server.log_2022-08-03T18-18-38
+----
-The following is an example of a log record formatted in the ULF format:
+You can configure the logging service to change the default settings for
+log file rotation, as explained in xref:#setting-log-file-rotation[Setting Log File Rotation].
-[source]
+
+This is a list of related configuration properties:
+
+* `rotation.compress` - compress the rotated file using GZIP algorithm provided by JDK. Default is false.
+* `rotation.maxArchiveFiles` - maximal count of archived log files (excludes the active one).
+Default is 0, which means unlimited.
+* `rotation.limit.megabytes` - size of the file initiating rotation of the file.
+Default is 100 Megabytes. The final file will be slightly larger.
+* `rotation.limit.minutes` - number of minutes since the last rotation. Default is 0 (unlimited, disabled).
+* `rotation.rollOnDateChange` - if set to `true` rolls the file at midnight. Default is `false`.
+
+[[SimpleLogHandler]]
+===== SimpleLogHandler
+
+The `org.glassfish.main.jul.handler.SimpleLogHandler` has similar targets as the
+`https://docs.oracle.com/en/java/javase/17/docs/api/java.logging/java/util/logging/ConsoleHandler.html[`ConsoleHandler`]`,
+with few differences:
+
+* can be configured to use STDOUT instead of STDERR
+* uses xref:#OneLineFormatter[OneLineFormatter] by default
+
+The handler configuration properties:
+
+* `encoding` - output character encoding. Default is null which means it will use the system default.
+* `formatter` - a formatter class to be used for formatting log records as strings.
+Default value is xref:#OneLineFormatter[`org.glassfish.main.jul.formatter.OneLineFormatter`]
+* `formatter.*` - can be used for custom settings of the formatter.
+This works only for xref:#ODLFormatter[ODLLogFormatter], xref:#UniformFormatter[UniformLogFormatter]
+and xref:#OneLineFormatter[OneLineFormatter].
+* `level` - Level used to filter log records. Less important log records will be ignored.
+Uses `INFO` as a default.
+* `useErrorStream` - if `false`, uses STDOUT instead of STDERR. Default is `true`.
+
+Configuration example:
----
-[#|2013-04-18T09:27:44.315-0700|INFO|glassfish 7.0|jakarta.enterprise.web.core|
-_ThreadID=15;_ThreadName=RunLevelControllerThread-1366302462682;_TimeMillis=1366302464315;_LevelValue=800;_MessageID=AS-WEB-CORE-00306;|
- Setting JAAS app name glassfish-web|#]
+org.glassfish.main.jul.handler.SimpleLogHandler.formatter=org.glassfish.main.jul.formatter.OneLineFormatter
+org.glassfish.main.jul.handler.SimpleLogHandler.formatter.printSource=false
+org.glassfish.main.jul.handler.SimpleLogHandler.level=INFO
+org.glassfish.main.jul.handler.SimpleLogHandler.useErrorStream=true
----
-The Administration Console presents log records in a more readable
-display. For information about viewing log records using the
-Administration Console, see link:#gkobx[Viewing Log Records].
+[[SyslogHandler]]
+===== SyslogHandler
-[[gkmdz]][[GSADG00646]][[log-rotation]]
+The `org.glassfish.main.jul.handler.SyslogHandler` is a special handler which is able to send
+log records to the Unix Syslog facility. The prerequisity is that the Syslog service must
+listen on the configured network endpoint.
+See `https://en.wikipedia.org/wiki/Syslog[Syslog on Wikipedia.org]` for more.
-===== Log Rotation
+The handler configuration properties:
-By default, when a log file grows to 2 MB, {productName} renames (rotates) the file to incorporate a timestamp and
-creates a new log file. The log file is renamed as `server.log_`date,
-where date is the date and time that the file was rotated.
+* `buffer.capacity` - count of records in the receive buffer. Default is 5000 log records.
+* `buffer.timeoutInSeconds` - maximal time for waiting. Default is 300.
+The buffer is reset after timeout, which means that all unprocessible log records are lost.
+* `enabled` - `false` means that the handler will stay configured in the logging system,
+but it will ignore incoming records. Default is `true`.
+* `encoding` - output character encoding used to send data to the Syslog service.
+Default is `UTF-8`.
+* `formatter` - a formatter class to be used for formatting log records as strings.
+Default value is xref:#SimpleFormatter[`java.util.logging.SimpleFormatter`]
+* `host` - a host name or IP address used of the UDP endpoint.
+Default is an autodetected name of the local host.
+* `level` - Level used to filter log records. Less important log records will be ignored.
+The default level is `WARNING`.
+* `port` - a port of the Syslog UDP listener. Default is 514.
-You can configure the logging service to change the default settings for
-log file rotation, as explained in link:#gklni[Setting Log File
-Rotation].
-[[gkres]][[GSADG00720]][[logger-namespaces]]
+Configuration example:
+----
+org.glassfish.main.jul.handler.SyslogHandler.enabled=true
+org.glassfish.main.jul.handler.SyslogHandler.encoding=UTF-8
+org.glassfish.main.jul.handler.SyslogHandler.formatter=java.util.logging.SimpleFormatter
+org.glassfish.main.jul.handler.SyslogHandler.host=
+org.glassfish.main.jul.handler.SyslogHandler.level=SEVERE
+org.glassfish.main.jul.handler.SyslogHandler.port=514
+----
+
-==== Logger Namespaces
+[[Formatters]]
+==== Formatters
-{productName} provides a logger for each of its
-modules. The following list is an example of the logger namespaces in a
-server instance as they appear when using the `list-log-levels`
-subcommand.
+[[excluded-fields]]
+===== Excluded Fields
+
+Some of formatters support exclusion of some of fields. Currently is possible to exclude following fields:
+
+* `tid` - Thread id and name
+* `levelValue` - Integer value of the log level.
+
+[[ODLFormatter]]
+===== ODLLogFormatter
+
+The `org.glassfish.main.jul.formatter.ODLLogFormatter` logs records in
+the Oracle Diagnostic Loggging Format (ODL).
-[source]
----
-java.util.logging.ConsoleHandler
-jakarta.enterprise.resource.corba
-jakarta.enterprise.resource.javamail
-jakarta.enterprise.resource.jdo
-jakarta.enterprise.resource.jms
-jakarta.enterprise.resource.jta
-jakarta.enterprise.resource.resourceadapter
-jakarta.enterprise.resource.sqltrace
-jakarta.enterprise.resource.webcontainer.jsf.application
-jakarta.enterprise.resource.webcontainer.jsf.config
-jakarta.enterprise.resource.webcontainer.jsf.context
-jakarta.enterprise.resource.webcontainer.jsf.facelets
-jakarta.enterprise.resource.webcontainer.jsf.lifecycle
-jakarta.enterprise.resource.webcontainer.jsf.managedbean
-jakarta.enterprise.resource.webcontainer.jsf.renderkit
-jakarta.enterprise.resource.webcontainer.jsf.resource
-jakarta.enterprise.resource.webcontainer.jsf.taglib
-jakarta.enterprise.resource.webcontainer.jsf.timing
-jakarta.enterprise.system.container.cmp
-jakarta.enterprise.system.container.ejb
-jakarta.enterprise.system.container.ejb.mdb
-jakarta.enterprise.system.container.web
-jakarta.enterprise.system.core.classloading
-jakarta.enterprise.system.core.config
-jakarta.enterprise.system.core.naming
-jakarta.enterprise.system.core.security
-jakarta.enterprise.system.core.selfmanagement
-jakarta.enterprise.system.core.transaction
-jakarta.enterprise.system
-jakarta.enterprise.system.tools.admin
-jakarta.enterprise.system.tools.backup
-jakarta.enterprise.system.tools.deployment
-jakarta.enterprise.system.util
-jakarta.enterprise.system.webservices.registry
-jakarta.enterprise.system.webservices.rpc
-jakarta.enterprise.system.webservices.saaj
-javax
-org.apache.catalina
-org.apache.coyote
-org.glassfish.wasp
-org.jvnet.hk2.osgiadapter
-----
-
-For information about how to display logger namespaces and log levels,
-see link:#gjirr[To List Log Levels]. For information about how to
-display a list of loggers and logger details, see link:#CEGGICGF[To List
-Loggers].
-
-[[gkjft]][[GSADG00721]][[logging-targets]]
-
-==== Logging Targets
-
-Each instance in an {productName} domain has a
-dedicated log file, and each instance and cluster has its own logging
-properties file. To configure logging for an instance or a cluster,
-{productName} allows you target specific log
-files or logging properties files when you do the following:
+[2022-08-01T19:43:29.952291+02:00] [GlassFish 7.0] [INFO] [] [com.sun.enterprise.server.logging.LogManagerService] [tid: _ThreadID=1 _ThreadName=main] [levelValue: 800] [[
+Using property file: /app/appservers/glassfish7/glassfish/domains/domain1/config/logging.properties]]
-* Set global or module-specific log levels
-* Rotate log files or compress them into a ZIP archive
-* Change logging property attributes
-* List log levels or log attributes
+[2022-08-01T19:43:29.986871+02:00] [GlassFish 7.0] [INFO] [NCLS-LOGGING-00009] [com.sun.enterprise.server.logging.LogManagerService] [tid: _ThreadID=1 _ThreadName=main] [levelValue: 800] [[
+Running GlassFish Version: Eclipse GlassFish 7.0.0 (build master-b827-g71a6150 2022-08-01T11:18:51+0200)]]
+----
-The following subcommands optionally accept a target specification. A
-target can be a configuration name, server name, cluster name, or
-instance name, and is specified as either an operand or as a value
-passed using the `--target` option. If no target is specified when using
-any of these subcommands, the default target is the DAS.
+The formatter has following properties:
-[width="100%",cols="27%,47%,26%",options="header",]
-|===
-|Subcommand |Description |Target Specification
-|link:reference-manual/collect-log-files.html#GSRFM00007[`collect-log-files`] |Collects all available log files
-into a ZIP archive. |`--target``=`target-name
+* `excludedFields` - comma separated list of fields which should not be printed. None by default.
+See xref:#excluded-fields[Excluded Fields]
+* `fieldSeparator` - String separating fields. Space by default.
+* `multiline` - if set to `true` (default), the end of line character is inserted before the log message.
+* `printSequenceNumber` - if set to `true`, logs the sequence number of each log record. Default is `false`.
+* `printSource` - if set to `true`, logs the class and method which created the log record. Default is `false`.
+* `timestampFormat` - see the `https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/format/DateTimeFormatter.html[DateTimeFormatter]` documentation.
+Default is `https://en.wikipedia.org/wiki/ISO_8601[ISO-8601]` timestamp with microseconds and time zone.
-|link:reference-manual/list-log-attributes.html#GSRFM00182[`list-log-attributes`] |Lists logging attributes in
-the logging properties file. |target-name operand
-|link:reference-manual/list-log-levels.html#GSRFM00183[`list-log-levels`] |Lists the loggers in the logging
-properties file and their log levels. |target-name operand
+[[UniformFormatter]]
+===== UniformLogFormatter
-|link:reference-manual/rotate-log.html#GSRFM00224[`rotate-log`] |Rotates the log file by renaming it and
-creating a new log file to store new messages. |`--target``=`target-name
+The `org.glassfish.main.jul.formatter.UniformLogFormatter` logs records in
+the Uniform Loggging Format.
-|link:reference-manual/set-log-attributes.html#GSRFM00227[`set-log-attributes`] |Sets the specified logging
-attributes in the logging properties file. |`--target``=`target-name
+----
+[#|2022-08-02T18:16:29.677628+02:00|INFO|GlassFish 7.0|com.sun.enterprise.server.logging.LogManagerService|_ThreadID=1;_ThreadName=main;_LevelValue=800;|
+Using property file: /app/appservers/glassfish7/glassfish/domains/domain1/config/logging.properties|#]
-|link:reference-manual/set-log-file-format.html#GSRFM879[`set-log-file-format`] |Sets the log file formatter.
-|`--target``=`target-name
+[#|2022-08-02T18:16:29.755356+02:00|INFO|GlassFish 7.0|com.sun.enterprise.server.logging.LogManagerService|_ThreadID=1;_ThreadName=main;_LevelValue=800;_MessageID=NCLS-LOGGING-00009;|
+Running GlassFish Version: Eclipse GlassFish 7.0.0 (build master-b827-g71a6150 2022-08-01T11:18:51+0200)|#]
+----
-|link:reference-manual/set-log-levels.html#GSRFM00228[`set-log-levels`] |Sets the log level for one or more
-loggers listed in the logging properties file. |`--target``=`target-name
-|===
+The formatter has following properties:
+
+* `excludedFields` - comma separated list of fields which should not be printed. None by default.
+See xref:#excluded-fields[Excluded Fields]
+* `fieldSeparator` - String separating fields. Space by default.
+* `multiline` - if set to `true` (default), the end of line character is inserted before the log message.
+* `printSequenceNumber` - if set to `true`, logs the sequence number of each log record. Default is `false`.
+* `printSource` - if set to `true`, logs the class and method which created the log record. Default is `false`.
+* `recordMarker.begin` - the prefix of the log record, default is `[#|`.
+* `recordMarker.end` - the suffix of the log record, default is `|#]`.
+* `timestampFormat` - see the `https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/format/DateTimeFormatter.html[DateTimeFormatter]` documentation.
+Default is `https://en.wikipedia.org/wiki/ISO_8601[ISO-8601]` timestamp with microseconds and time zone.
+
+[[OneLineFormatter]]
+===== OneLineFormatter
+The `org.glassfish.main.jul.formatter.OneLineFormatter` logs records in the following simple format:
-[[gkkit]][[GSADG00722]][[logging-properties]]
+----
+22:50:43.174228 INFO main com.sun.enterprise.server.logging.LogManagerService Using property file: /app/appservers/glassfish7/glassfish/domains/domain1/config/logging.properties
+22:50:43.266648 INFO main com.sun.enterprise.server.logging.LogManagerService Running GlassFish Version: Eclipse GlassFish 7.0.0 (build master-b827-g71a6150 2022-08-01T11:18:51+0200)
+----
-==== Logging Properties
+* `printSource` - if set to `true` (default), logs the class and method which created the log record
+while when set to `false` it prefers the logger name.
+* `size.level` - number of characters taken by the level column. Default is 7.
+* `size.thread` - number of characters taken by the thread column. Default is 20.
+* `size.class` - number of characters taken by the class name column. Default is 60.
+* `timestampFormat` - see the `https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/time/format/DateTimeFormatter.html[DateTimeFormatter]` documentation.
+Default is `https://en.wikipedia.org/wiki/ISO_8601[ISO-8601]` time with microseconds (not date, no timezone).
-The DAS as well as each configuration, instance, and cluster has its own
-set of logging properties that are maintained in individual
-configuration files. A logging properties file is named
-`logging.properies` and includes the following information:
-* Log file name and location
-* Logger names and levels
-* Properties for custom handlers
-* Log rotation and logger format properties
+[[SimpleFormatter]]
+===== SimpleFormatter
-By default in an {productName} domain, logging
-properties files are created in the following locations:
+The full name is `java.util.logging.SimpleFormatter`. It is a default formatter provided by the JDK,
+simple but very flexible. It's most important property is `format`. Read the
+`https://docs.oracle.com/en/java/javase/17/docs/api/java.logging/java/util/logging/SimpleFormatter.html[documentation of the SimpleFormatter class]`
+for more.
-[width="100%",cols="18%,82%",options="header",]
+[[asadmin]]
+=== Using Asadmin
+
+Each instance in an {productName} domain has a dedicated `server.log` file,
+and each instance and cluster has its own `logging.properties` file.
+To configure logging for an instance or a cluster,
+{productName} allows you target specific log
+files or logging properties files when you do the following:
+
+* Set log levels
+* Rotate `server.log` files or compress them into a ZIP archive
+* Change logging property attributes
+* List log levels or log attributes
+
+The following subcommands optionally accept a target specification.
+A target can be a configuration name, server name, cluster name, or instance name,
+and is specified as either an operand or as a value
+passed using the `--target` option.
+If no target is specified when using any of these subcommands, the default target is the DAS.
+
+[width="100%",cols="27%,47%,26%",options="header",]
|===
-|Target |Default Location of Logging Properties File
-|DAS |domain-dir``/config```/logging.properties`
+|Subcommand |Description |Target Specification
+|link:reference-manual/collect-log-files.html[`collect-log-files`]
+|Collects all available log files into a ZIP archive.
+|``--target=``target-name
-|A configuration |domain-dir`/config/`config-name`/logging.properties`,
-where config-name represents the name of a configuration that is shared
-by one or more instances or clusters.
+|link:reference-manual/list-log-attributes.html[`list-log-attributes`]
+|Lists logging attributes in the logging properties file.
+|target-name operand
-|An instance
-|domain-dir``/config```/`instance-name`-config/logging.properties`, where
-instance-name represents the name of the instance.
+|link:reference-manual/list-log-levels.html[`list-log-levels`]
+|Lists the loggers in the logging properties file and their log levels.
+|target-name operand
-|A cluster
-|domain-dir`/config/`cluster-name`-config/logging.properties`, where
-cluster-name represents the name of the cluster.
+|link:reference-manual/rotate-log.html[`rotate-log`]
+|Rotates the log file by renaming it and creating a new log file to store new messages.
+|``--target=``target-name
+
+|link:reference-manual/set-log-attributes.html[`set-log-attributes`]
+|Sets the specified logging attributes in the logging properties file.
+|``--target=``target-name
+
+|link:reference-manual/set-log-file-format.html[`set-log-file-format`]
+|Sets the log file formatter.
+|``--target=``target-name
+
+|link:reference-manual/set-log-levels.html[`set-log-levels`]
+|Sets the log level for one or more loggers listed in the logging properties file.
+|``--target=``target-name
|===
-For information about configuring logging properties, see
-link:#gklmn[Configuring the Logging Service].
+This section contains the following examples:
-[[gklmn]][[GSADG00555]][[configuring-the-logging-service]]
+* <>
+* <>
+* <>
+* <>
-=== Configuring the Logging Service
+[[to-change-the-location-of-the-logging-properties-file]]
-This section contains the following topics:
+==== To Change the Location of the logging.properties File
-* link:#gklmx[Changing the Name and Location of Logging Service Files]
-* link:#gklml[Setting Log Levels]
-* link:#CEGDJEBG[Setting the Log File Format]
-* link:#gklni[Setting Log File Rotation]
-* link:#gklnk[Adding a Custom Logging Handler]
+You can set the name and location of the logging properties file by
+setting the `java.util.logging.config.file` system property.
-[[gklmx]][[GSADG00723]][[changing-the-name-and-location-of-logging-service-files]]
+[WARNING]
+====
+You have to ensure that the output log file is always used by a single instance.
+In the default logging.properties it is ensured by using the ${com.sun.aas.instanceRoot}
+which always resolves to the instance's root directory. Example:
+----
+org.glassfish.main.jul.handler.GlassFishLogHandler.file=${com.sun.aas.instanceRoot}/logs/server.log
+----
+====
-==== Changing the Name and Location of Logging Service Files
+1. Set the `java.util.logging.config.file` system property.
++
+[source]
+----
+asadmin create-jvm-options --target=server-config -Djava.util.logging.config.file=/logging.properties
+----
+Alternatively, you can use the Administration Console to set this system property.
-This section explains how to change the name and location of the
-following logging service files:
+2. To apply your change, restart all instances using this configuration. In our case it would be the DAS:
++
+[source]
+----
+asadmin restart-domain
+----
-* Log file
-* Logging properties file
+[[to-change-logfile-location]]
-[[gkmak]][[GSADG00375]][[to-change-the-name-and-location-of-the-log-file]]
+==== To Change the Location of the Log File
-===== To Change the Name and Location of the Log File
+Even in complex domain you can always find the right `logging.properties` file and
+update it manually. But probably safer is to use an asadmin command to do that.
-To change the name and location of the log file, first use the
-`list-log-attributes` subcommand to obtain the current log attribute
-setting for the log file name and location. Then use the
-`set-log-attributes` subcommand to specify the new name or location. The
-default target for these two subcommands is the DAS. However, you can
+To change the name and location of the log file, first use the `list-log-attributes` command
+to obtain the current log attribute setting for the log file name and location.
+Then use the `set-log-attributes` command to specify the new name or location.
+The default target for these two commands is the DAS. However, you can
optionally specify one of the following targets:
* Configuration name — to target all instances or clusters that share a specific configuration name.
@@ -401,157 +670,117 @@ optionally specify one of the following targets:
* Instance name — to target only a specific instance.
* Cluster name — to target only a specific cluster.
-1. Ensure that the target server or cluster is running.
-Remote subcommands require a running server.
+//-
+
+1. Ensure that the DAS is running. Remote commands require a running server.
2. Use the link:reference-manual/list-log-attributes.html#GSRFM00182[`list-log-attributes`]
-subcommand in remote mode to obtain the current log attribute settings.
+command in remote mode to obtain the current log attribute settings.
The name and location of the log file is set with the
-`com.sun.enterprise.server.logging.GFFileHandler.file` attribute of the
-logging properties file.
+`org.glassfish.main.jul.handler.GlassFishLogHandler.file` attribute of the
+`logging properties` file.
Optionally you can target a configuration, server, instance, or cluster.
If you do not specify a target, the log attribute settings for the DAS are displayed.
3. Use the link:reference-manual/set-log-attributes.html#GSRFM00227[`set-log-attributes`]
-subcommand in remote mode to define a custom name or location of the log file.
+command in remote mode to define a custom name or location of the log file.
If you do not specify a target, the log file for the DAS is targeted by default.
If you target a cluster, the name of the cluster log file for
each member instance can be changed (the server log file name cannot).
-[[GSADG00174]][[gkmal]]
+[[example-7-1]]
Example 7-1 Changing the Name and Location of a Cluster's Log File
This example changes the name of the cluster log file for `Cluster1` to
`cluster1.log`. `Cluster1` has two server instances: `ClusterServer1` and `ClusterServer2`.
-[source]
-----
-asadmin> list-log-attributes Cluster1
-com.sun.enterprise.server.logging.GFFileHandler.alarms
-com.sun.enterprise.server.logging.GFFileHandler.file
-<${com.sun.aas.instanceRoot}/logs/server.log>
-com.sun.enterprise.server.logging.GFFileHandler.flushFrequency <1>
-.
-.
-.
-log4j.logger.org.hibernate.validator.util.Version
+[source,text]
+----
+asadmin list-log-attributes Cluster1
+handlers
+org.glassfish.main.jul.handler.GlassFishLogHandler.buffer.capacity \<10000>
+org.glassfish.main.jul.handler.GlassFishLogHandler.buffer.timeoutInSeconds \<0>
+org.glassfish.main.jul.handler.GlassFishLogHandler.enabled
+org.glassfish.main.jul.handler.GlassFishLogHandler.encoding
+org.glassfish.main.jul.handler.GlassFishLogHandler.file <${com.sun.aas.instanceRoot}/logs/server.log>
+org.glassfish.main.jul.handler.GlassFishLogHandler.flushFrequency \<1>
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter.excludedFields <>
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter.multiline
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter.printSource
+org.glassfish.main.jul.handler.GlassFishLogHandler.redirectStandardStreams
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.compress
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.limit.megabytes \<100>
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.limit.minutes \<0>
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.maxArchiveFiles \<0>
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.rollOnDateChange
+org.glassfish.main.jul.handler.SimpleLogHandler.formatter
+org.glassfish.main.jul.handler.SimpleLogHandler.formatter.excludedFields <>
+org.glassfish.main.jul.handler.SimpleLogHandler.formatter.printSource
+org.glassfish.main.jul.handler.SimpleLogHandler.useErrorStream
+org.glassfish.main.jul.handler.SyslogHandler.buffer.capacity \<5000>
+org.glassfish.main.jul.handler.SyslogHandler.buffer.timeoutInSeconds \<300>
+org.glassfish.main.jul.handler.SyslogHandler.enabled
+org.glassfish.main.jul.handler.SyslogHandler.encoding
+org.glassfish.main.jul.handler.SyslogHandler.formatter
+org.glassfish.main.jul.handler.SyslogHandler.host <>
+org.glassfish.main.jul.handler.SyslogHandler.port \<514>
Command list-log-attributes executed successfully.
-asadmin> set-log-attributes --target Cluster1
-com.sun.enterprise.server.logging.GFFileHandler.file=
-${com.sun.aas.instanceRoot}/logs/cluster1.log
-com.sun.enterprise.server.logging.GFFileHandler.file
-logging attribute set with value ${com.sun.aas.instanceRoot}/logs/cluster1.log
-These logging attributes are set for Cluster1.
-ClusterServer1 :
-com.sun.enterprise.server.logging.GFFileHandler.file
-logging attribute set with value ${com.sun.aas.instanceRoot}/logs/cluster1.log
-These logging attributes are set for Cluster1.
-
-ClusterServer2 :
-com.sun.enterprise.server.logging.GFFileHandler.file
-logging attribute set with value ${com.sun.aas.instanceRoot}/logs/cluster1.log
-These logging attributes are set for Cluster1.
-Command set-log-attributes executed successfully.
-----
-
-[[GSADG864]]
-
-See Also
-
-You can view the full syntax and options of these subcommands by typing
-`asadmin help list-log-levels` and `asadmin help set-log-attributes` at
-the command line.
+asadmin set-log-attributes --target Cluster1 org.glassfish.main.jul.handler.GlassFishLogHandler.file=\${com.sun.aas.instanceRoot}/logs/cluster1.log
-[[gkmcz]][[GSADG00376]][[to-change-the-name-and-location-of-the-logging-properties-file]]
+org.glassfish.main.jul.handler.GlassFishLogHandler.file logging attribute value set to ${com.sun.aas.instanceRoot}/logs/cluster1.log.
+The logging attributes are saved successfully for cluster-config.
-===== To Change the Name and Location of the Logging Properties File
-
-You can set the name and location of the logging properties file by
-setting the `java.util.logging.config.file` system property. By setting
-this system property, you can have a single logging properties file that
-is used by all instances running on the same host.
-
-[NOTE]
-====
-Setting the `java.util.logging.config.file` system property causes all
-other {productName} logging properties files on
-the host to be overridden.
-====
+Command set-log-attributes executed successfully.
+asadmin list-log-attributes ClusterServer1
+...
+org.glassfish.main.jul.handler.GlassFishLogHandler.file <${com.sun.aas.instanceRoot}/logs/cluster1.log>
+...
-1. Set the `java.util.logging.config.file` system property.
-For example, you can use the following `java` command:
-+
-[source]
-----
-java -Djava.util.logging.config.file=properties_file
+asadmin list-log-attributes ClusterServer2
+...
+org.glassfish.main.jul.handler.GlassFishLogHandler.file <${com.sun.aas.instanceRoot}/logs/cluster1.log>
+...
----
-Alternatively, you can use the Administration Console to set this system property.
-
-2. To apply your change, restart {productName}.
-[[GSADG00175]][[gkmgz]]
-Example 7-2 Setting the `java.util.logging.config.file` System Property
+See Also
-The following example changes the location of the logging properties
-file to `/space/mylogging/logging.properties`:
-[source]
-----
-java -Djava.util.logging.config.file=/space/mylogging/logging.properties
-----
+You can view the full syntax and options of these subcommands by typing
+`asadmin help list-log-attributes` and `asadmin help set-log-attributes` at the command line.
-[[gklml]][[GSADG00724]][[setting-log-levels]]
+[[setting-log-levels]]
==== Setting Log Levels
-The log level determines the granularity of the message that is logged,
-from error only (`EMERGENCY`) to detailed debug (`FINEST`). The
-following values apply: `EMERGENCY`, `ALERT`, `SEVERE`, `WARNING`,
-`INFO`, `CONFIG`, `FINE`, `FINER`, and `FINEST`. These log levels are
-hierarchically inclusive, which means that if you set a particular log
-level, such as INFO, the messages that have log levels above that level
-(`EMERGENCY`, `ALERT`, `SEVERE`, and `WARNING`,) are also included. If
-you set the log level to the lowest level, `FINEST`, your output
-includes all the messages in the file. The default setting is `INFO`.
-
-You can list current log levels of all loggers specified in the
-`logging properties` file. In some cases, loggers that have not been
-created by the respective containers will also appear in the list.
-
-You can set log levels that are global or logger-specific. When you set
-a global log level, the log level goes into effect for all loggers. If
-you set the log level for a specific logger that is different from the
-global log level, the logger-specific setting takes precedence. In
-addition, when setting log levels, you can target a configuration,
-server, instance, or cluster.
+The log level determines the granularity of the message as it is
+described in the chapter <>.
-Because setting log levels is a dynamic operation, you do not need to
-restart {productName} for changes to take effect.
+When setting log levels, you can target a configuration,
+server, instance, or cluster.
-Setting either global or logger-specific log levels is done by using the
-`set-log-levels` subcommand. Listing log levels is done by using the
-`list-log-levels` subcommand.
+Setting log levels is done by using the `set-log-levels` subcommand.
+Listing log levels is done by using the `list-log-levels` subcommand.
The following topics are addressed here:
-* link:#gjirr[To List Log Levels]
-* link:#ghmep[To Set the Global Log Level]
-* link:#ghmdu[To Set Module Log Levels]
+* <>
+* <>
+* <>
-[[gjirr]][[GSADG00377]][[to-list-log-levels]]
+[[to-list-log-levels]]
-===== To List Log Levels
+===== To List Logger Levels
-{productName} provides the means to list all
-loggers and their log levels. Listing the loggers provides a convenient
-means to view current loggers and log levels either prior to or after
-making log level changes.
+{productName} provides the means to list all loggers and their log levels.
+Listing the loggers provides a convenient means to view current loggers
+and log levels either prior to or after making log level changes.
Use the `list-log-levels` subcommand in remote mode to list the modules
-and their current log levels. The default target for this subcommand is
-the DAS. However, you can optionally specify one of the following
-targets:
+and their current log levels.
+The default target for this subcommand is the DAS.
+However, you can optionally specify one of the following targets:
* Configuration name — to target all instances or clusters that share a specific configuration name.
* Server name — to target a specific server.
@@ -562,252 +791,223 @@ targets:
2. List the existing module loggers and log levels by using the
link:reference-manual/list-log-levels.html#GSRFM00183[`list-log-levels`] subcommand.
-[[GSADG00176]][[gjiti]]
-Example 7-3 Listing Logger Levels for Modules
+[[example-7-2]]
+Example 7-2 Listing Logger Levels for DAS
-This example shows a partial list of the existing loggers and their log
-levels in the DAS.
+This example shows a partial list of the existing loggers and their log levels in the DAS.
[source]
----
-asadmin> list-log-levels
-jakarta.enterprise.system.container.cmp
-jakarta.enterprise.system.tools.admin
-java.util.logging.ConsoleHandler
-jakarta.enterprise.system.container.web
-jakarta.enterprise.system.util
-jakarta.enterprise.resource.webcontainer.jsf.timing
-javax
-jakarta.enterprise.resource.corba
+asadmin list-log-levels
+MBeans
+com.sun.enterprise.glassfish.bootstrap
+com.sun.enterprise.glassfish
+com.sun.enterprise.security
+com.sun.webui
+jakarta.enterprise.admin.rest.client
+jakarta.enterprise.admin.rest.connector
+jakarta.enterprise.admin.rest
+jakarta.enterprise.bootstrap
+jakarta.enterprise.cluster.gms.admin
+jakarta.enterprise.cluster.gms.bootstrap
+jakarta.enterprise.cluster.gms
+jakarta.enterprise.concurrent
+jakarta.enterprise.config.api
...
Command list-log-levels executed successfully.
----
-[[GSADG00177]][[gkkot]]
-Example 7-4 Listing Log Levels for an Instance
+[[example-7-3]]
+Example 7-3 Listing Logger Levels for an Instance
-This example shows a partial list of the loggers and log levels for the
-instance `MyServer2`.
+This example shows a partial list of the loggers and log levels for the instance `MyServer2`.
[source]
----
-asadmin> list-log-levels MyServer2
-java.util.logging.ConsoleHandler
-jakarta.enterprise.resource.corba
-jakarta.enterprise.resource.javamail
-jakarta.enterprise.resource.jdo
-jakarta.enterprise.resource.jms
-jakarta.enterprise.resource.jta
-jakarta.enterprise.resource.resourceadapter
-jakarta.enterprise.resource.sqltrace
+asadmin list-log-levels MyServer2
+MBeans
+com.sun.enterprise.glassfish.bootstrap
+com.sun.enterprise.glassfish
+com.sun.enterprise.security
+com.sun.webui
+cz.acme.level
+jakarta.enterprise.admin.rest.client
+jakarta.enterprise.admin.rest.connector
+jakarta.enterprise.admin.rest
+jakarta.enterprise.bootstrap
+jakarta.enterprise.cluster.gms.admin
+jakarta.enterprise.cluster.gms.bootstrap
+jakarta.enterprise.cluster.gms
+jakarta.enterprise.concurrent
+jakarta.enterprise.config.api
...
Command list-log-levels executed successfully.
----
-[[GSADG865]]
-
See Also
You can view the full syntax and options of the subcommand by typing
`asadmin help list-log-levels` at the command line.
-[[ghmep]][[GSADG00378]][[to-set-the-global-log-level]]
+[[to-set-the-logger-log-level]]
-===== To Set the Global Log Level
+===== To Set the Logger Log Level
-The global log level specifies the events that are logged across all
-loggers. The default level for messages output to the console is `INFO`
-(which also includes `EMERGENCY`, `ALERT`, `SEVERE`, and `WARNING`
-messages).
+You will probably need to set logger levels most often.
+Let's imagine that you would need to set the most verbose logging of an application
+using the `org.acme` package (and logger names).
-Use the `set-log-levels` subcommand in remote mode to set the global log
-level. The default target for this subcommand is the DAS. However, you
-can optionally specify one of the following targets using the `--target`
-option:
+Then you can edit the `logging.properties` file directly, what can be quite
+more complicated it you use more than one instance, see the xref:configuring-warning[warning].
-* Configuration name — to target all instances or clusters that share a specific configuration name.
-* Server name — to target a specific server.
-* Instance name — to target a specific instance.
-* Cluster name — to target a specific cluster.
-
-1. Ensure that the target server or cluster is running.
-2. Set the global log level by using the
-link:reference-manual/set-log-levels.html#GSRFM00228[`set-log-levels`] subcommand, specifying the log level
-of the `java.util.logging.ConsoleHandler` logger.
-The `ConsoleHandler` has a separate log level setting that limits the
-messages that are displayed. For example:
-+
+Safer is to use the `set-log-levels` subcommand:
+[[example-7-4]]
+Example 7-5 Changing the Logger Log Level for a Cluster
[source]
----
-java.util.logging.ConsoleHandler
+asadmin set-log-levels --target Cluster1 org.acme=ALL
+org.acme package set with log level ALL.These logging levels are set for Cluster1.
+Command set-log-levels executed successfully.
----
-[[GSADG00178]][[ghmfi]]
-Example 7-5 Changing the Global Log Level for All Module Loggers
+[[example-7-5]]
+Example 7-5 Setting Log Levels for Multiple Loggers
-By setting the log level of the `ConsoleHandler`, you set the global log
-level for all loggers. This example sets the global log level in the DAS
-to `INFO`:
+The following example sets the log level for security and web container
+loggers in the DAS.
[source]
----
-asadmin> set-log-levels java.util.logging.ConsoleHandler=INFO
-java.util.logging.ConsoleHandler package set with log level INFO.
-These logging levels are set for server.
-
+asadmin set-log-levels jakarta.enterprise.system.core.security=FINE\
+:jakarta.enterprise.system.container.web=WARNING
+jakarta.enterprise.system.core.security package set with log level FINE.jakarta.enterprise.system.container.web package set with log level WARNING.These logging levels are set for server.
Command set-log-levels executed successfully.
----
-[[GSADG866]]
-
See Also
You can view the full syntax and options of the subcommand by typing
`asadmin help set-log-levels` at the command line.
-[[ghmdu]][[GSADG00379]][[to-set-module-log-levels]]
-
-===== To Set Module Log Levels
-
-A module log level specifies the events that are logged for a particular
-logger. The default level for messages output to the console is `INFO`
-(which also includes `EMERGENCY`, `ALERT`, `SEVERE`, and `WARNING`
-messages). The global log level is overridden by a module-specific log level.
-
-By default, the module log level is set to `FINE`. The lines for the
-loggers in the logging properties file might look like this (the modules
-are indicated in bold):
-[source]
-----
-jakarta.enterprise.system.tools.level=FINE
-jakarta.enterprise.system.container.ejb.level=FINE
-jakarta.enterprise.system.core.security.level=FINE
-jakarta.enterprise.system.tools.admin.level=FINE
-jakarta.enterprise.level=FINE
-jakarta.enterprise.system.container.web.level=FINE
-----
+[[to-set-the-handler-log-level]]
-Because setting log levels is a dynamic operation, you do not need to
-restart {productName} for changes to take effect.
+===== To Set the Handler Log Level
-1. Ensure that the target server or cluster is running. Remote subcommands require a running server.
+The handler log level specifies a severity level filter to prevent overloading
+of the handler. Default value is usually given by handler's implementation
+and reflect targets and expected throughput of the handler.
+For example, you would not want to send all `FINEST` LogRecords by e-mail,
+but you would like to see them in a local log file.
-2. List the existing module loggers and their log levels by using the
-link:reference-manual/list-log-levels.html#GSRFM00183[`list-log-levels`] subcommand.
+Because JUL uses the same property syntax for <> levels as
+for <> levels you can use both `set-log-levels` and `set-log-attributes`
+subcommands to get the same result (with a bit different syntax).
-3. Set the log level for a module by using the
-link:reference-manual/set-log-levels.html#GSRFM00228[`set-log-levels`] subcommand.
-Your choices are `EMERGENCY`, `ALERT`, `SEVERE`, `WARNING`, `INFO`,
-`CONFIG`, `FINE`, `FINER`, and `FINEST`.
+Both commands in remote mode.
+The default target for this subcommand is the DAS.
+However, you can optionally specify one of the following targets using the `--target` option:
-[[GSADG00179]][[ghmev]]
-Example 7-6 Setting the Log Level for a Module Logger
+* Configuration name — to target all instances or clusters that share a specific configuration name.
+* Server name — to target a specific server.
+* Instance name — to target a specific instance.
+* Cluster name — to target a specific cluster.
-This example sets the log level for the web container logger to WARNING
-on the target instance `ManagedServer1`:
+//-
+1. Ensure that the DAS is running.
+2. Set the log level by using the
+link:reference-manual/set-log-attributes.html#GSRFM00228[`set-log-attributes`] subcommand,
+specifying the log level of the `org.glassfish.main.jul.handler.GlassFishLogHandler` handler.
+For example:
++
[source]
----
-asadmin> set-log-levels --target ManagedServer1
-jakarta.enterprise.system.container.web=WARNING
-jakarta.enterprise.system.container.web package set with log level WARNING.
-These logging levels are set for ManagedServer1.
-ManagedServer1 :
-jakarta.enterprise.system.container.web package set with log level WARNING.
-These logging levels are set for ManagedServer1.
-
-Command set-log-levels executed successfully.
+org.glassfish.main.jul.handler.GlassFishLogHandler
----
-[[GSADG00180]][[gjkat]]
-Example 7-7 Setting Log Levels for Multiple Loggers
-
-The following example sets the log level for security and web container
-loggers in the DAS.
+[[example-7-6]]
+Example 7-6 Changing the Handler Log Level
+This example sets the log level for `GlassFishLogHandler` in the DAS to `INFO`:
[source]
----
-asadmin> set-log-levels jakarta.enterprise.system.core.security=FINE:
-jakarta.enterprise.system.container.web=WARNING
-jakarta.enterprise.system.container.web package set with log level WARNING.
-jakarta.enterprise.system.core.security package set with log level FINE.
-These logging levels are set for server.
+asadmin set-log-attributes org.glassfish.main.jul.handler.GlassFishLogHandler.level=INFO
-Command set-log-levels executed successfully.
-----
+org.glassfish.main.jul.handler.GlassFishLogHandler.level logging attribute value set to INFO.
+The logging attributes are saved successfully for server.
-[[GSADG867]]
+Command set-log-attributes executed successfully.
+----
See Also
You can view the full syntax and options of the subcommand by typing
-`asadmin help set-log-levels` at the command line.
+`asadmin help set-log-attributes` at the command line.
+
-[[CEGDJEBG]][[GSADG1062]][[setting-the-log-file-format]]
+[[setting-the-log-file-format]]
==== Setting the Log File Format
-You can set the format for log records in log files. The following
-topics are addressed here:
+You can set the format for log records in log files.
+The following topics are addressed here:
-* link:#CEGFFJDG[To Set the Log File Format]
-* link:#CEGGBJCC[To Exclude Fields in Log Records]
-* link:#CEGBBEAH[To Set Multiline Mode]
+* <>
+* <>
+* <>
-[[CEGFFJDG]][[GSADG1063]][[to-set-the-log-file-format]]
+[[to-set-the-log-file-format]]
===== To Set the Log File Format
Use the `set-log-file-format` subcommand in remote mode to set the
-formatter used by {productName} to format log
-records in log files. You can also use the `set-log-attributes`
-subcommand. Log formats for all server instances in a cluster will be
-the same. For information about log formats, see link:#gkmex[Log
-Records].
-
+formatter used by {productName} to format log records in log files.
+This command is limited to the `GlassFishLogHandler` settings.
+You can also use the `set-log-attributes` subcommand which is more flexible.
+Log formats for all server instances in a cluster will be the same.
+For information about log formats, see <>.
[NOTE]
====
-Changing the log format forces log rotation to avoid mixed format in the
-same file.
+Changing the log format forces log rotation to avoid mixed format in the same file.
====
-
-1. Ensure that the target server or cluster is running. Remote commands require a running server.
+1. Ensure that the DAS is running. Remote commands require a running server.
2. Set the formatter by using the
link:reference-manual/redeploy.html#GSRFM00217[`set-log-file-format`] subcommand.
-3. To apply your change, restart {productName}.
+3. To apply your change, restart affected instances or clusters with the synchronization enabled.
-[[GSADG1064]][[sthref23]]
-Example 7-8 Setting the Log File Format using `set-log-file-format`
+[[example-7-7]]
+Example 7-7 Setting the Log File Format using `set-log-file-format`
-This example sets the log file format to `ULF` for standalone instance
+This example sets the log file format to `OneLineFormatter` for standalone instance
`ManagedServer1` using the `set-log-file-format` subcommand.
[source]
----
-asadmin> set-log-file-format --target ManagedServer1 ulf
-The log file formatter is set to com.sun.enterprise.server.logging.UniformLogFormatter for instance ManagedServer1.
+asadmin set-log-file-format --target ManagedServer1 org.glassfish.main.jul.formatter.OneLineFormatter
+The log file formatter is set to org.glassfish.main.jul.formatter.OneLineFormatter for instance server.
Command set-log-file-format executed successfully.
----
-[[GSADG1065]][[sthref24]]
-Example 7-9 Setting the Log File Format using `set-log-attributes`
+[[example-7-8]]
+Example 7-8 Setting the Log File Format using `set-log-attributes`
This example sets the log file format to `ULF` for standalone instance
`ManagedServer1` using the `set-log-attributes` subcommand.
[source]
----
-asadmin> set-log-attributes --target ManagedServer1 com.sun.enterprise.server.logging.GFFileHandler.formatter=ulf
-com.sun.enterprise.server.logging.GFFileHandler.formatter logging attribute value set to ulf.
+asadmin set-log-attributes --target ManagedServer1 \
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter=org.glassfish.main.jul.formatter.OneLineFormatter
+
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter logging attribute value set to org.glassfish.main.jul.formatter.OneLineFormatter.
The logging attributes are saved successfully for ManagedServer1-config.
+
Command set-log-attributes executed successfully.
----
-[[GSADG1066]]
-
See Also
You can view the full syntax and options of the `set-log-file-format`
@@ -816,116 +1016,126 @@ line. You can view the full syntax and options of the
`set-log-attributes` subcommand by typing
`asadmin help set-log-attributes` at the command line.
-[[CEGGBJCC]][[GSADG1067]][[to-exclude-fields-in-log-records]]
+[[to-exclude-fields-in-log-records]]
-===== To Exclude Fields in Log Records
+===== To Exclude Fields in Logs
Use the `set-log-attributes` subcommand in remote mode to exclude
specific name-value fields from log records. If the `excludeFields`
-attribute is not specified, all name-value fields are included. The
-following fields can be excluded:
+attribute is not specified, all name-value fields are included.
+The following fields can be excluded:
* `tid`
-* `userId`
-* `ecid`
-* `timeMillis`
* `levelVal`
-1. Ensure that the target server or cluster is running. Remote commands require a running server.
+//-
+
+1. Ensure that the DAS is running. Remote commands require a running server.
2. Exclude fields by using the link:reference-manual/set-log-attributes.html#GSRFM00227[`set-log-attributes`]
-subcommand, specifying the following attribute and the fields to exclude:
-+
+subcommand, specifying the attribute and the fields to exclude.
+
+3. To apply your change, restart {productName}.
+
+[[example-7-9]]
+Example 7-9 Excluding Fields in the ODLLogFormatter
+
+This example excludes the `tid` (thread ID and name) and `levelValue` (numerical value of the <>)
+name-value fields in log records for standalone instance `ManagedServer1`:
+
[source]
----
-com.sun.enterprise.server.logging.GFFileHandler.excludeFields=fields
+asadmin set-log-attributes --target ManagedServer1 \
+org.glassfish.main.jul.formatter.ODLLogFormatter.excludedFields=tid,levelValue
+
+org.glassfish.main.jul.formatter.ODLLogFormatter.excludedFields logging attribute value set to tid,levelValue.
+The logging attributes are saved successfully for ManagedServer1-config.
+
+Command set-log-attributes executed successfully.
----
-where `fields` is a comma-separated list of the name-value fields to
-exclude from the log file.
-3. To apply your change, restart {productName}.
+[NOTE]
+====
+If there's the same attribute of the handler's `formatter` property, it has higher priority.
+====
-[[GSADG1068]][[sthref25]]
-Example 7-10 Excluding Fields in Log Records
+[[example-7-10]]
+Example 7-10 Excluding Fields in the GlassFishLogHandler
-This example excludes the `userId` and `levelVal` name-value fields in
-log records for standalone instance `ManagedServer1`:
+This example excludes the `tid` (thread ID and name) and `levelValue` (numerical value of the <>)
+name-value fields in log records for standalone instance `ManagedServer1`:
[source]
----
-asadmin> set-log-attributes --target ManagedServer1
-com.sun.enterprise.server.logging.GFFileHandler.excludeFields=userId,levelVal
-com.sun.enterprise.server.logging.GFFileHandler.excludeFields logging attribute value set to userId,levelVal.
+asadmin set-log-attributes --target ManagedServer1 \
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter.excludedFields=tid,levelValue
+
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter.excludedFields logging attribute value set to tid,levelValue.
The logging attributes are saved successfully for ManagedServer1-config.
Command set-log-attributes executed successfully.
----
-[[GSADG1069]]
-
See Also
You can view the full syntax and options of the subcommand by typing
`asadmin help set-log-attributes` at the command line.
-[[CEGBBEAH]][[GSADG1070]][[to-set-multiline-mode]]
+[[to-disable-multiline-mode]]
-===== To Set Multiline Mode
+===== To Disable Multiline Mode
-Use the `set-log-attributes` command in remote mode to set multiline
-mode. When multiline mode is enabled (the default), the body of a log
+Use the `set-log-attributes` command in remote mode to disable the multiline mode.
+When multiline mode is enabled (the default), the body of a log
message starts on a new line after the message header and is indented.
-1. Ensure that the target server or cluster is running. Remote commands require a running server.
+1. Ensure that the DAS is running. Remote commands require a running server.
2. Set multiline mode by using the
-link:reference-manual/set-log-attributes.html#GSRFM00227[`set-log-attributes`] subcommand, specifying the
-following attribute and its value (`true` or `false`):
-+
-[source]
-----
-com.sun.enterprise.server.logging.GFFileHandler.multiLineMode=value
-----
+link:reference-manual/set-log-attributes.html#GSRFM00227[`set-log-attributes`] subcommand,
+specifying the formatter attribute and its value (`true` or `false`):
-3. To apply your change, restart {productName}.
+3. To apply your change, restart the instance.
-[[GSADG1071]][[sthref26]]
-Example 7-11 Setting Multiline Mode
+[[example-7-11]]
+Example 7-11 Disabling the Multiline Mode in the log file
-Multiline mode is enabled by default. The following example disables
-multiline mode in log files for standalone instance `ManagedServer1`:
+Multiline mode is enabled by default.
+The following example disables multiline mode in log files
+for standalone instance `ManagedServer1`:
[source]
----
-asadmin> set-log-attributes --target ManagedServer1
-com.sun.enterprise.server.logging.GFFileHandler.multiLineMode=false
-com.sun.enterprise.server.logging.GFFileHandler.multiLineMode logging attribute value set to false.
+asadmin set-log-attributes --target ManagedServer1 \
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter.multiline=false
+
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter.multiline logging attribute value set to false.
The logging attributes are saved successfully for ManagedServer1-config.
Command set-log-attributes executed successfully.
----
-[[GSADG1072]]
-
See Also
You can view the full syntax and options of the subcommand by typing
`asadmin help set-log-attributes` at the command line.
-[[gklni]][[GSADG00725]][[setting-log-file-rotation]]
+[[setting-log-file-rotation]]
==== Setting Log File Rotation
-As explained in link:#ablul[Log Files], {productName} by default rotates log files when they reach 2 MB in size.
-However, you can change the default rotation settings. For example, you
-can change the file size at which the server rotates the log file or you
-can configure a server to rotate log files based on a time interval. In
-addition to changing when rotation occurs, you can also:
+As explained in <>, {productName} by default rotates
+the `server.log` file when it's size exceeds 100 MB.
+However, you can change the default rotation settings.
+For example, you can change the file size limit at which the server
+rotates the log file or you can configure a server to rotate log files based
+on a time interval.
+In addition to changing when rotation occurs, you can also:
* Specify the maximum number of rotated files that can accumulate.
-By default, {productName} does not limit the
-number of rotated log files that are retained. However, you can set a
-limit. After the number of log files reaches this limit, subsequent file
+By default, {productName} does not limit the number of rotated log files that are retained.
+However, you can set a limit.
+After the number of log files reaches this limit, subsequent file
rotations delete the oldest rotated log file.
* Rotate the log file manually.
@@ -936,34 +1146,35 @@ Changing the default log rotation settings is done using the
using the `rotate-log` subcommand, as explained in the following
sections:
-* link:#gkmbh[To Change the Rotation File Size]
-* link:#gkman[To Change the File Rotation Interval]
-* link:#gkmai[To Change the Limit Number of Retained Files]
-* link:#gkmau[To Rotate Log Files Manually]
+* <>
+* <>
+* <>
+* <>
-[[gkmbh]][[GSADG00380]][[to-change-the-rotation-file-size]]
+[[to-change-the-rotation-file-size]]
===== To Change the Rotation File Size
Use the `set-log-attributes` subcommand in remote mode to change the log
-rotation file size. The default target of this subcommand is the DAS.
-Optionally, you can target a configuration, server, instance, or
-cluster. The minimum size that can be set is 500 KB.
+rotation file size.
+The default target of this subcommand is the DAS.
+Optionally, you can target a configuration, server, instance, or cluster.
-1. Ensure that the target server or cluster is running.
+1. Ensure that the DAS is running.
2. Change the rotation file size limit by using the
link:reference-manual/set-log-attributes.html#GSRFM00227[`set-log-attributes`] subcommand,
-specifying the following attribute and the desired limit in bytes:
+specifying the attribute and the desired limit in megabytes:
+
[source]
----
-com.sun.enterprise.server.logging.GFFileHandler.rotationLimitInBytes=bytes
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.limit.megabytes=1000
----
-3. To apply your change, restart {productName}.
+3. Changes will be applied automatically after saving the change
+to the instance's `logging.properties` file.
-[[GSADG00181]][[gkmay]]
+[[example-7-12]]
Example 7-12 Changing the Rotation Size
The following example sets the log file rotation size to 1 MB for the
@@ -971,36 +1182,31 @@ standalone instance `ManagedServer1`:
[source]
----
-asadmin> set-log-attributes --target ManagedServer1
-com.sun.enterprise.server.logging.GFFileHandler.rotationLimitInBytes=1000000
-com.sun.enterprise.server.logging.GFFileHandler.rotationLimitInBytes
-logging attribute set with value 1000000.
-These logging attributes are set for ManagedServer1.
-ManagedServer1 :
-com.sun.enterprise.server.logging.GFFileHandler.rotationLimitInBytes
-logging attribute set with value 1000000.
-These logging attributes are set for ManagedServer1.
+asadmin set-log-attributes --target ManagedServer1 \
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.limit.megabytes=1000
+
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.limit.megabytes logging attribute value set to 1000.
+The logging attributes are saved successfully for ManagedServer1-config.
Command set-log-attributes executed successfully.
----
-[[GSADG868]]
-
See Also
You can view the full syntax and options of the subcommand by typing
`asadmin help set-log-attributes` at the command line.
-[[gkman]][[GSADG00381]][[to-change-the-file-rotation-interval]]
+[[to-change-the-file-rotation-interval]]
===== To Change the File Rotation Interval
Use the `set-log-attributes` subcommand in remote mode to change the log
-file rotation time limit interval. The default target of this subcommand
-is the DAS. Optionally, you can target a configuration, server,
-instance, or cluster. The default value is `0`.
+file rotation time limit interval.
+The default target of this subcommand is the DAS.
+Optionally, you can target a configuration, server, instance, or cluster.
+The default value is `0`.
-1. Ensure that the target server or cluster is running.
+1. Ensure that the DAS is running.
2. Change the rotation time limit by using the
link:reference-manual/set-log-attributes.html#GSRFM00227[`set-log-attributes`] subcommand,
@@ -1008,280 +1214,167 @@ specifying the following attribute and the desired limit in minutes:
+
[source]
----
-com.sun.enterprise.server.logging.GFFileHandler.rotationTimelimitInMinutes=minutes
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.limit.minutes=minutes
----
-3. To apply your change, restart {productName}.
+3. Changes will be applied automatically after saving the change
+to the instance's `logging.properties` file.
-[[GSADG00182]][[gkmbc]]
+[[example-7-13]]
Example 7-13 Changing the Rotation Interval
The following example sets the log file rotation time limit for the
-cluster `Cluster1`, which has the instances `ClusterServer1` and
-`ClusterServer2`.
+cluster `Cluster1`, and all it's instances.
[source]
----
-asadmin> set-log-attributes --target Cluster1
-com.sun.enterprise.server.logging.GFFileHandler.rotationTimelimitInMinutes=10
-com.sun.enterprise.server.logging.GFFileHandler.rotationTimelimitInMinutes
-logging attribute set with value 10.
-These logging attributes are set for Cluster1.
-ClusterServer1 :
-com.sun.enterprise.server.logging.GFFileHandler.rotationTimelimitInMinutes
-logging attribute set with value 10.
-These logging attributes are set for Cluster1.
-
-ClusterServer2 :
-com.sun.enterprise.server.logging.GFFileHandler.rotationTimelimitInMinutes
-logging attribute set with value 10.
-These logging attributes are set for Cluster1.
+asadmin set-log-attributes --target Cluster1 \
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.limit.minutes=60
+
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.limit.minutes logging attribute value set to 60.
+The logging attributes are saved successfully for cluster-config.
Command set-log-attributes executed successfully.
----
-[[GSADG869]]
-
See Also
You can view the full syntax and options of the subcommand by typing
`asadmin help set-log-attributes` at the command line.
-[[gkmai]][[GSADG00382]][[to-change-the-limit-number-of-retained-files]]
+[[to-change-the-limit-number-of-archive-log-files]]
-===== To Change the Limit Number of Retained Files
+===== To Change the Limit Number of Archive Log Files
-Use the `set-log-attributes` subcommand in remote mode to change the
-limit on the number of log files that the server creates to store old
-log messages. The default target of this subcommand is the DAS.
-Optionally, you can target a configuration, server, instance, or
-cluster. The default limit value is `0`, which results in no limit
-placed on the number of rotated log files that are retained.
+Use the `set-log-attributes` subcommand in remote mode to change the limit
+on the number of log files that the server creates to store old log messages.
+The default target of this subcommand is the DAS.
+Optionally, you can target a configuration, server, instance, or cluster.
+The default limit value is `0`, which results in no limit placed on the number
+of rotated log files that are retained.
-1. Ensure that the target server or cluster is running.
+1. Ensure that the DAS is running.
2. Change the limit number of retained log files by using the
link:reference-manual/set-log-attributes.html#GSRFM00227[`set-log-attributes`] subcommand,
specifying the following attribute and the desired file limit number:
+
[source]
----
-com.sun.enterprise.server.logging.GFFileHandler.maxHistoryFiles=minutes
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.maxArchiveFiles=number
----
-+
-The behavior of the `com.sun.enterprise.server.logging.GFFileHandler.maxHistoryFiles`
-attribute is as follows:
-+
-* If the property is not set, {productName} keeps
- a maximum of 10 rotated log files.
-* If the property is set to an invalid number or null, {productName} keeps a maximum of 10 rotated log files.
-* If the property is set to 0, {productName}
- retains all rotated log files (that is, sets no maximum).
-3. To apply your change, restart {productName}.
+3. Changes will be applied automatically after saving the change
+to the instance's effective `logging.properties` file.
-[[GSADG00183]][[gkmaq]]
-Example 7-14 Changing the Limit Number of Retained Files
+[[example-7-14]]
+Example 7-14 Changing the Limit Number of Archived Log Files
The following example sets the log limit number of retained log files
for the DAS to `10`.
[source]
----
-asadmin> set-log-attributes
-com.sun.enterprise.server.logging.GFFileHandler.maxHistoryFiles=10
-com.sun.enterprise.server.logging.GFFileHandler.maxHistoryFiles
-logging attribute set with value 10.
-These logging attributes are set for server.
+asadmin set-log-attributes \
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.maxArchiveFiles=10
+
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.maxArchiveFiles logging attribute value set to 10.
+The logging attributes are saved successfully for server.
+
Command set-log-attributes executed successfully.
----
-[[GSADG870]]
-
See Also
You can view the full syntax and options of the subcommand by typing
`asadmin help set-log-attributes` at the command line.
-[[gkmau]][[GSADG00383]][[to-rotate-log-files-manually]]
+[[to-rotate-log-files-manually]]
===== To Rotate Log Files Manually
-You can rotate log files manually by using the `rotate-log` subcommand
-in remote mode. The default target of this subcommand is the DAS.
-Optionally, you can target a configuration, server, instance, or
-cluster. When you use this subcommand, the target log file is
-immediately moved to a new time-stamped file and a new log file is
-created.
+You can rotate log files manually by using the `rotate-log` subcommand in remote mode.
+The default target of this subcommand is the DAS.
+Optionally, you can target a configuration, server, instance, or cluster.
+When you use this subcommand, the target log file is immediately moved
+to a new time-stamped file and a new log file is created.
Because log rotation is a dynamic operation, you do not need to restart
{productName} for changes to take effect.
1. Ensure that the target server or cluster is running.
-2. Rotate log files by using the link:reference-manual/rotate-log.html#GSRFM00224[`rotate-log`]
-subcommand.
+2. Rotate log files by using
+the link:reference-manual/rotate-log.html#GSRFM00224[`rotate-log`] subcommand.
-[[GSADG00184]][[gkmav]]
+[[example-7-15]]
Example 7-15 Rotating Log Files Manually
The following example rotates the `server.log` file for `ManagedServer2`
-to `server.log_`yyyy-mm-dd`T`hh-mm-ss, where yyyy-mm-dd`T`hh-mm-ss
-represents the time when the file is rotated, and creates a new
-`server.log` file in the default location.
+to ``server.log_yyyy-mm-dd`T`hh-mm-ss``, where ``yyyy-mm-dd`T`hh-mm-ss``
+represents the time when the file is rotated, and creates a new `server.log` file.
[source]
----
-asadmin> rotate-log --target ManagedServer2
+asadmin rotate-log --target ManagedServer2
+Rotated log on instance named 'ManagedServer2'.
Command rotate-log executed successfully.
----
-[[GSADG871]]
-
See Also
You can view the full syntax and options of the subcommand by typing
`asadmin help rotate-log` at the command line.
-[[gklnk]][[GSADG00726]][[adding-a-custom-logging-handler]]
-
-==== Adding a Custom Logging Handler
-
-By default, {productName} log records are
-captured in a server log file using the format described in
-link:#gkmex[Log Records]. However, you may find that you want to log
-messages to a different location, such as a database or a remote server,
-or log messages from specific loggers to your own file. This can be done
-by implementing a custom log handler. This section explains how to add a
-custom log handler to the {productName} logging
-service.
-
-[[ghmen]][[GSADG00384]][[to-add-a-custom-log-handler]]
-
-===== To Add a Custom Log Handler
-A comma-separated list of log handlers is installed during startup of
-the Java Virtual Machine (JVM) host. The default log handler that is
-provided in the `logging.properties` file, `ConsoleHandler`, is
-configured as follows:
-
-[source]
-----
-handlers=java.util.logging.ConsoleHandler
-----
-
-In {productName}, the best approach to developing
-a custom handler is to define a Hundred-Kilobyte Kernel (HK2) component
-that implements the handler contract. {productName} registers this handler automatically
-because it is an HK2 component. There is no task required of the administrator.
-
-
-[NOTE]
-====
-The custom handler class should be packaged in an OSGi module and the
-JAR file placed in the as-install``/modules`` directory.
-====
-
-
-To configure a custom handler that is not developed as an HK2 component,
-add the new handler to the `logging.properties` file after the developer
-has put the custom handler JAR file into the domain-dir``/lib/ext`` directory.
-
-[[GSADG872]]
-
-Before You Begin
-
-If you set a handler by setting the handlers attribute in the logging
-properties file, the class that extends `java.util.logging.Handler` must
-be in the server classpath.
-
-1. Ensure that the target server or cluster is running.
-+
-Remote subcommands require a running server.
-2. Use the link:reference-manual/set-log-attributes.html#GSRFM00227[`set-log-attributes`] subcommand to add the
-handler to the `handlers` attribute.
-+
-The default target of this subcommand is the DAS. Optionally you can
-target a configuration, server, instance, or cluster.
-3. To apply your changes, restart {productName}.
-+
-See link:domains.html#ginqj[To Restart a Domain].
-
-[[GSADG00185]][[ghphb]]
-Example 7-16 Adding a New Log Handler
-
-This example adds the custom logger `com.example.logging.MyHandler` to
-the logging properties file of the DAS.
-
-[source]
-----
-asadmin> set-log-attributes
-handlers=java.util.logging.ConsoleHandler,com.example.logging.MyHandler
-handlers logging attribute set with value
-java.util.logging.ConsoleHandler,com.example.logging.MyHandler.
-These logging attributes are set for server.
-Command set-log-attributes executed successfully.
-----
-
-[[GSADG873]]
-
-See Also
-
-You can view the full syntax and options of the subcommand by typing
-`asadmin help set-log-attributes` at the command line.
-
-[[gkobx]][[GSADG00556]][[viewing-log-records]]
+[[viewing-log-records]]
=== Viewing Log Records
The recommended means for general viewing of logging information is to
-use the Log Viewer in the Administration Console. The Log Viewer
-simplifies reading, searching, and filtering log file contents. For
-instructions, see the Administration Console online help.
+use the Log Viewer in the Administration Console.
+The Log Viewer simplifies reading, searching, and filtering log file contents.
+For instructions, see the Administration Console online help.
{productName} also allows you to collect log
files into a ZIP archive, which provides the means to obtain and view
-log files for an instance or cluster even when it is not currently
-running. The following section explains how to collect all available log
-files for an instance or cluster and compile them into a single ZIP
-archive, which is done by using the `collect-log-files` subcommand.
+log files for an instance or cluster even when it is not currently running.
+The following section explains how to collect all available log
+files for an instance or cluster and compile them into a single ZIP archive,
+which is done by using the `collect-log-files` subcommand.
-[[gklbi]][[GSADG00385]][[to-collect-log-files-into-a-zip-archive]]
+[[to-collect-log-files-into-a-zip-archive]]
==== To Collect Log Files into a ZIP Archive
Use the `collect-log-files` subcommand in remote mode to collect log
-files into a ZIP archive. The default target of this subcommand is the
-DAS. Optionally you can target a configuration, server, instance, or
-cluster.
+files into a ZIP archive. The default target of this subcommand is the DAS.
+Optionally you can target a configuration, server, instance, or cluster.
-1. Ensure that the target server or cluster is running.
-+
-Remote subcommands require a running server.
-2. Use the link:reference-manual/collect-log-files.html#GSRFM00007[`collect-log-files`] subcommand to create
-the ZIP archive.
+1. Ensure that the target server or cluster is running. Remote subcommands require a running server.
+2. Use the link:reference-manual/collect-log-files.html#GSRFM00007[`collect-log-files`] subcommand
+to create the ZIP archive.
+
The default location in which the ZIP archive is created is the
-domain-dir`/collected-logs` directory. The `collect-log-files`
-subcommand allows you to specify a nondefault directory in which the ZIP
-archive is to be created by using the `--retrieve` option set to `true`,
+domain-dir``/collected-logs`` directory.
+The `collect-log-files` subcommand allows you to specify a nondefault directory
+in which the ZIP archive is to be created by using the `--retrieve` option set to `true`,
followed by the directory name.
+
The name of the ZIP file contains the timestamp, as follows:
+
-`log_`yyyy-mm-dd_hh-min-sec`.zip`
+``log_yyyy-mm-dd_hh-min-sec.zip``
-[[GSADG00186]][[gklap]]
-Example 7-17 Creating a ZIP Archive
+[[example-7-16]]
+Example 7-16 Collecting and Downloading Log Files as a ZIP File
-This example shows collecting the log files for the cluster `MyCluster`
-and compiling them into a ZIP archive in the `/space/output` directory.
+This example shows collecting the log files for the cluster `Cluster1`
+and compiling them into a ZIP archive in the `/tmp/space/output` directory.
[source]
----
-asadmin> collect-log-files --target MyCluster
---retrieve true /space/output
+asadmin collect-log-files --target Cluster1 --retrieve true /tmp/space/output
Log files are downloaded for ClusterServer1.
Log files are downloaded for ClusterServer2.
- Created Zip file under /space/output/log_2011-02-10_13-35-25.zip.
+Created Zip file under /tmp/space/output/log_2022-08-06_14-57-53.zip.
Command collect-log-files executed successfully.
----
@@ -1302,57 +1395,58 @@ as-install-parent/
server.log
----
-[[GSADG874]]
-
See Also
You can view the full syntax and options of the subcommand by typing
`asadmin help collect-log-files` at the command line.
-[[CEGGHGIJ]][[GSADG1073]][[listing-loggers]]
+[[listing-loggers]]
=== Listing Loggers
You can list and view information about all public loggers in your
distribution of {productName}.
-[[CEGGICGF]][[GSADG1074]][[to-list-loggers]]
+[[to-list-loggers]]
==== To List Loggers
Use the `list-loggers` subcommand in remote mode to list the logger
-name, subsystem, and description of loggers in your distribution of
-{productName}. Internal loggers are not listed.
+name, subsystem, and description of subsystem loggers in your distribution of
+{productName}. Class name based loggers are not listed.
-1. Ensure that the target server or cluster is running. Remote commands require a running server.
-2. List loggers by using the link:reference-manual/redeploy.html#GSRFM00217[`list-loggers`]
-subcommand.
+1. Ensure that the DAS is running. Remote commands require a running server.
+2. List loggers by using
+the link:reference-manual/list-loggers.html#list-loggers[`list-loggers`] subcommand.
-[[GSADG1075]][[sthref27]]
-Example 7-18 Listing Loggers
+[[example-7-17]]
+Example 7-17 Listing Loggers
-This example lists the logger name, subsystem, and description for each
-logger. Some lines of output are omitted from this example for
-readability.
+This example lists the logger name, subsystem, and description for each logger.
+Some lines of output are omitted from this example for readability.
[source]
----
-asadmin> list-loggers
-Logger Name Subsystem Logger Description
+asadmin list-loggers
+Logger Name Subsystem Logger Description
...
-jakarta.enterprise.monitoring Monitoring Monitoring Logger
-jakarta.enterprise.system.core.ee AS-CORE Jakarta EE Core Kernel
-jakarta.enterprise.system.jmx JMX JMX System Logger
-jakarta.enterprise.system.tools.admin ADMIN Administration Services
+jakarta.enterprise.system.core CORE Core Kernel
+jakarta.enterprise.system.core.ee AS-CORE Jakarta EE Core Kernel
+jakarta.enterprise.system.core.security SECURITY Core Security
+jakarta.enterprise.system.core.security.web SECURITY Core-ee Security Logger
+jakarta.enterprise.system.jmx JMX JMX System Logger
+jakarta.enterprise.system.security.ssl SECURITY - SSL Security - SSL
...
Command list-loggers executed successfully.
----
-[[GSADG1076]]
-
See Also
You can also view the full syntax and options of the subcommand by
typing `asadmin help list-loggers` at the command line.
+As an alternative you can take a look into the `default-logging.properties` file
+which should contain all useful basic loggers set to a default level. The same
+cofiguration is distributed in the new domain1's `logging.properties` file, so
+you can print all actual logger names and levels as we described in <>.
diff --git a/docs/administration-guide/src/main/asciidoc/lot.adoc b/docs/administration-guide/src/main/asciidoc/lot.adoc
index 75ac2c6c3a7..3b0742ff65b 100644
--- a/docs/administration-guide/src/main/asciidoc/lot.adoc
+++ b/docs/administration-guide/src/main/asciidoc/lot.adoc
@@ -1,8 +1,5 @@
-type=page
-status=published
title=List of Tables
-next=title.html
-prev=lof.html
+prev=lof.adoc
~~~~~~
= List of Tables
diff --git a/docs/administration-guide/src/main/asciidoc/monitoring.adoc b/docs/administration-guide/src/main/asciidoc/monitoring.adoc
index 380f3dccb94..b46c307d789 100644
--- a/docs/administration-guide/src/main/asciidoc/monitoring.adoc
+++ b/docs/administration-guide/src/main/asciidoc/monitoring.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Administering the Monitoring Service
-next=lifecycle-modules.html
-prev=logging.html
+next=lifecycle-modules.adoc
+prev=logging.adoc
~~~~~~
= Administering the Monitoring Service
diff --git a/docs/administration-guide/src/main/asciidoc/overview.adoc b/docs/administration-guide/src/main/asciidoc/overview.adoc
index 1e65ed692e2..43e860a9e87 100644
--- a/docs/administration-guide/src/main/asciidoc/overview.adoc
+++ b/docs/administration-guide/src/main/asciidoc/overview.adoc
@@ -145,7 +145,7 @@ Logging::
By default, logging is enabled, so basic logging works without
additional configuration. However, you might want to change log
levels, property values, or the location of log files. See
- link:logging.html#abluj[Administering the Logging Service].
+ xref:logging.adoc#administering-the-logging-service[Administering the Logging Service].
Monitoring::
By default, the monitoring service is enabled. However, monitoring for
the individual modules is not enabled, so your first monitoring task
@@ -319,11 +319,10 @@ read.
Do not modify or delete the `domain.xml.bak` file and do not use this file for any other purpose.
====
-The `logging.properties` file is used to configure logging levels for
-individual modules. The default `logging.properties` file is located in
-the same directory as the `domain.xml` file. For further information on
-the `logging.properties` file, see link:logging.html#gkkit[Logging
-Properties].
+The `logging.properties` file is used to configure the Java Util Logging system.
+The default `logging.properties` file is located in the same directory as the `domain.xml` file.
+For further information on the `logging.properties` file,
+see xref:logging.adoc#logging-properties[Logging Properties].
The `asenv.conf` file is located in the as-install``/config`` directory.
Its purpose is to store the {productName} environment variables, such
diff --git a/docs/administration-guide/src/main/asciidoc/part-appendixes.adoc b/docs/administration-guide/src/main/asciidoc/part-appendixes.adoc
index 7d1cdc7f7d0..6e8971fdd17 100644
--- a/docs/administration-guide/src/main/asciidoc/part-appendixes.adoc
+++ b/docs/administration-guide/src/main/asciidoc/part-appendixes.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Appendixes
-next=asadmin-subcommands.html
-prev=transactions.html
+next=asadmin-subcommands.adoc
+prev=transactions.adoc
~~~~~~
= Appendixes
diff --git a/docs/administration-guide/src/main/asciidoc/preface.adoc b/docs/administration-guide/src/main/asciidoc/preface.adoc
index 695c7708232..357c9178b53 100644
--- a/docs/administration-guide/src/main/asciidoc/preface.adoc
+++ b/docs/administration-guide/src/main/asciidoc/preface.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Preface
-next=overview.html
-prev=title.html
+next=overview.adoc
+prev=title.adoc
~~~~~~
= Preface
diff --git a/docs/administration-guide/src/main/asciidoc/title.adoc b/docs/administration-guide/src/main/asciidoc/title.adoc
index a8c35bd9c75..576fa748704 100644
--- a/docs/administration-guide/src/main/asciidoc/title.adoc
+++ b/docs/administration-guide/src/main/asciidoc/title.adoc
@@ -1,8 +1,5 @@
-type=page
-status=published
title={productName} Administration Guide, Release 7
-next=preface.html
-prev=lot.html
+next=preface.adoc
~~~~~~
@@ -14,7 +11,7 @@ prev=lot.html
Administration Guide
-Release 7
+Release 7, {status}
Contributed 2018 - 2022
diff --git a/docs/administration-guide/src/main/asciidoc/transactions.adoc b/docs/administration-guide/src/main/asciidoc/transactions.adoc
index f667878b9a7..0c01623b73d 100644
--- a/docs/administration-guide/src/main/asciidoc/transactions.adoc
+++ b/docs/administration-guide/src/main/asciidoc/transactions.adoc
@@ -673,7 +673,7 @@ directory. For example:
asadmin> create-system-properties --target server TX-LOG-DIR=/inst1/logs
----
For information about setting `log-root` and other general logging
-settings, see link:logging.html#abluj[Administering the Logging Service].
+settings, see link:logging.html#administering-the-logging-service[Administering the Logging Service].
* Turn off transaction logging by setting the
`disable-distributed-transaction-logging` property to `true` and the
`automatic-recovery` attribute to `false`. Do this only if performance
diff --git a/docs/administration-guide/src/main/asciidoc/webapps.adoc b/docs/administration-guide/src/main/asciidoc/webapps.adoc
index 93d0d7303e7..a6d2e50c8b0 100644
--- a/docs/administration-guide/src/main/asciidoc/webapps.adoc
+++ b/docs/administration-guide/src/main/asciidoc/webapps.adoc
@@ -1,8 +1,6 @@
-type=page
-status=published
title=Administering Web Applications
-next=logging.html
-prev=threadpools.html
+next=logging.adoc
+prev=threadpools.adoc
~~~~~~
= Administering Web Applications
diff --git a/docs/application-development-guide/src/main/asciidoc/debugging-apps.adoc b/docs/application-development-guide/src/main/asciidoc/debugging-apps.adoc
index 0ad1c7023e7..73ba4e60b4c 100644
--- a/docs/application-development-guide/src/main/asciidoc/debugging-apps.adoc
+++ b/docs/application-development-guide/src/main/asciidoc/debugging-apps.adoc
@@ -58,21 +58,20 @@ jdb -connect com.sun.jdi.SocketAttach:port=9009
For more information about the `jdb` debugger, see the following links:
* Java Platform Debugger Architecture - The Java Debugger:
-`http://java.sun.com/javase/technologies/core/toolsapis/jpda/`
+`https://docs.oracle.com/en/java/javase/17/docs/specs/jpda/architecture.html`
+`https://docs.oracle.com/en/java/javase/17/docs/specs/jpda/jpda.html`
* Java Platform Debugger Architecture - Connecting with JDB:
-`http://java.sun.com/javase/technologies/core/toolsapis/jpda/`
+`https://docs.oracle.com/en/java/javase/17/docs/specs/man/jdb.html`
{productName} debugging is based on the JPDA. For more information,
see link:#beafe[JPDA Options].
-You can attach to the {productName} using any JPDA compliant
-debugger, including that of http://www.netbeans.org[NetBeans]
-(`http://www.netbeans.org`), Java Studio Enterprise, JBuilder, Eclipse,
-and so on.
+You can attach to the {productName} using any JPDA compliant debugger.
You can enable debugging even when the {productName} is started
-without the `--debug` option. This is useful if you start the {productName} from the Windows Start Menu, or if you want to make sure that
-debugging is always turned on.
+without the `--debug` option.
+This is useful if you start the {productName} from the Windows Start Menu,
+or if you want to make sure that debugging is always turned on.
[[fvyit]][[GSDVG00049]][[to-set-the-server-to-automatically-start-up-in-debug-mode]]
diff --git a/docs/application-development-guide/src/main/asciidoc/setting-up-dev-env.adoc b/docs/application-development-guide/src/main/asciidoc/setting-up-dev-env.adoc
index d9fdd8a694a..461e34e027c 100644
--- a/docs/application-development-guide/src/main/asciidoc/setting-up-dev-env.adoc
+++ b/docs/application-development-guide/src/main/asciidoc/setting-up-dev-env.adoc
@@ -39,7 +39,7 @@ The following components are included in the full installation.
* JDK
* {productName} core
-** Java Platform, Standard Edition (Java SE) 11
+** Java Platform, Standard Edition (Java SE) 11 or newer
** Jakarta EE 10 compliant application server
** Administration Console
** `asadmin` utility
@@ -70,7 +70,8 @@ in {productName} Administration Guide.
=== High Availability Features
High availability features such as load balancing and session failover
-are discussed in detail in the link:ha-administration-guide.html#GSHAG[{productName} High Availability Administration Guide]. This book describes the
+are discussed in detail in the link:ha-administration-guide.html#GSHAG[{productName}
+High Availability Administration Guide]. This book describes the
following features in the following sections:
* For information about HTTP session persistence, see
@@ -145,17 +146,16 @@ to download the Migration Tool, see
[[beaaw]][[GSDVG00338]][[the-netbeans-ide]]
-==== The NetBeans IDE
+==== Code Editors
-The NetBeans IDE allows you to create, assemble, and debug code from a
-single, easy-to-use interface. The GlassFish edition of the {productName} is bundled with the NetBeans 6.1 IDE. To download the NetBeans
-IDE, see `http://www.netbeans.org`. This site also provides
-documentation on how to use the NetBeans IDE with the bundled GlassFish
-edition of the {productName}.
+There is several advanced editors with an integration with GlassFish or
+generic Jakarta EE servers. Sometimes you have to install additional
+extensions, sometimes all you need is just some configuration.
-You can also use the {productName} with the Java Studio Enterprise
-software, which is built on the NetBeans IDE. For more information, see
-`http://developers.sun.com/jsenterprise/`.
+* `https://www.jetbrains.com/idea/[IntelliJ IDEA]`
+* `https://www.eclipse.org/downloads/packages/[Eclipse IDE]`
+* `https://netbeans.apache.org[Apache NetBeans]`
+* `https://code.visualstudio.com[Microsoft Visual Studio Code]`
[[beabb]][[GSDVG00340]][[debugging-tools]]
diff --git a/docs/deployment-planning-guide/src/main/asciidoc/checklist.adoc b/docs/deployment-planning-guide/src/main/asciidoc/checklist.adoc
index 4f4b04f1ae4..e2a5224c99f 100644
--- a/docs/deployment-planning-guide/src/main/asciidoc/checklist.adoc
+++ b/docs/deployment-planning-guide/src/main/asciidoc/checklist.adoc
@@ -85,13 +85,11 @@ a|
|{productName} Configuration
a|
-* Logging: Enable access log rotation.
+* Enable access log rotation.
* Choose the right logging level. WARNING is usually appropriate.
* Configure Jakarta EE containers using the Administration Console.
* Configure HTTP listeners using the Administration Console.
* Configure ORB threadpool using the Administration Console.
-* If using Type2 drivers or calls involving native code, ensure that
- mtmalloc.so is specified in the LD_LIBRARY_PATH.
* Ensure that the appropriate persistence scope and frequency are used
and they are not overridden underneath in the individual Web/EJB modules.
* Ensure that only critical methods in the SFSB are checkpointed.
@@ -102,36 +100,24 @@ For more information on configuration, see the link:administration-guide.html#GS
|Load balancer Configuration
a|
-* Make sure the Web Server is installed.
-* Make sure the load balancer plug-in into the Web Server is installed.
-* Make sure patch checks is disabled.
-* Lower the value of the `KeepAliveQuery` parameter. The lower the
- value, the lower the latency is on lightly loaded systems. The higher
- the value, the higher the throughput is on highly loaded systems.
+* Make sure the load balancer have network access to the Server.
+* See documentation of your load balancer and verify that the configuration
+ of the load balancer is correct.
-|Java Virtual Machine Configuration
-a|
-* Initially set the minimum and maximum heap sizes to be the same, and
- at least one GB for each instance.
-* See http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html[
- Java Hotspot VM Options]
-(`http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html`)
- for more information.
-* When running multiple instances of {productName}, consider creating
- a processor set and bind {productName} to it. This helps in cases
- where the CMS collector is used to sweep the old generation.
-
-|Configuring time-outs in the load balancer
+|Configuring usual attributes of load balancing algorithm
a|
+* Endpoint - Address or host and port used for checks generating minimal
+ possible load.
* Response-time-out-in-seconds - How long the load balancer waits before
declaring a {productName} instance unhealthy. Set this value based on
the response time of the application. If set too high, the Web Server
- and load balancer plug-in wait a long time before marking a {productName} instance as unhealthy. If set too low and {productName}'s
+ and load balancer plug-in wait a long time before marking a {productName}
+ instance as unhealthy. If set too low and {productName}'s
response time crosses this threshold, the instance will be incorrectly
marked as unhealthy.
* Interval-in-seconds - Time in seconds after which unhealthy instances
- are checked to find out if they have returned to a healthy state. Too
- low a value generates extra traffic from the load balancer plug-in to
+ are checked to find out if they have returned to a healthy state.
+ Too low a value generates extra traffic from the load balancer plug-in to
{productName} instances and too high a value delays the routing of
requests to the instance that has turned healthy.
* Timeout-in-seconds - Duration for a response to be obtained for a
@@ -151,15 +137,13 @@ a|
in the backup store). Default value is 60 minutes. Adjust this value
based on the need for SFSB failover.
-|Tune VM Garbage Collection (GC)
-a| Garbage collection pauses of four seconds or more can cause intermittent
-problems in persisting session state. To avoid this problem, tune the VM
-heap. In cases where even a single failure to persist data is
-unacceptable or when the system is not fully loaded, use the CMS
-collector or the throughput collector.
-
-These can be enabled by adding: +
-`-XX:+UseConcMarkSweepGC`
-
-This option may decrease throughput.
+|Java Virtual Machine Configuration
+a|
+* Initially set the minimum and maximum heap sizes to be the same, and
+ at least one GB for each instance.
+* See http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html[
+ Java Hotspot VM Options] for more information.
+* When running multiple instances of {productName}, consider creating
+ a processor set and bind {productName} to it. This helps in cases
+ where the CMS collector is used to sweep the old generation.
|===
diff --git a/docs/embedded-server-guide/src/main/asciidoc/embedded-server-guide.adoc b/docs/embedded-server-guide/src/main/asciidoc/embedded-server-guide.adoc
index 679f1f584eb..f701d75ed4d 100644
--- a/docs/embedded-server-guide/src/main/asciidoc/embedded-server-guide.adoc
+++ b/docs/embedded-server-guide/src/main/asciidoc/embedded-server-guide.adoc
@@ -1854,7 +1854,7 @@ directory before running the `mvn clean verify` command.
To change log levels in Embedded {productName}, you can follow the
steps in this section or you can use the Embedded Server API as shown in
link:#gjlfm[Example 1-11]. For more information about {productName}
-logging, see "link:administration-guide/logging.html#GSADG00010[Administering the Logging Service]" in
+logging, see "link:administration-guide/logging.html#administering-the-logging-service[Administering the Logging Service]" in
{productName} Administration Guide.
You can change log levels in Embedded {productName} in either of the
@@ -1943,9 +1943,9 @@ supports only these features of nonembedded {productName}:
** Java Servlet API
-** JavaServer Pages (JSP) technology
+** Java Server Pages (JSP) technology
-** JavaServer Faces technology
+** Java Server Faces technology
* JDBC-technology connection pooling
* Java Persistence API
* Java Transaction API
diff --git a/docs/error-messages-reference/src/main/asciidoc/error-messages.adoc b/docs/error-messages-reference/src/main/asciidoc/error-messages.adoc
index 38535ac7edd..daeabc5b922 100644
--- a/docs/error-messages-reference/src/main/asciidoc/error-messages.adoc
+++ b/docs/error-messages-reference/src/main/asciidoc/error-messages.adoc
@@ -20,7 +20,7 @@ and troubleshooting information.
Error messages can also be viewed in the Administration Console Log
Viewer. For more information about logging, see
-”link:administration-guide/logging.html#GSADG00010[Administering the Logging Service”] in {productName} Administration Guide.
+”link:administration-guide/logging.html#administering-the-logging-service[Administering the Logging Service”] in {productName} Administration Guide.
For additional troubleshooting information, see the
link:troubleshooting-guide.html#GSTSG[{productName} Troubleshooting Guide].
diff --git a/docs/parent/pom.xml b/docs/parent/pom.xml
index cbf7074f28d..e7d5d76b746 100644
--- a/docs/parent/pom.xml
+++ b/docs/parent/pom.xml
@@ -38,9 +38,9 @@
9.3.2.0
DRAFT
+ Eclipse GlassFish
${project.artifactId}.pdf
3
- Eclipse GlassFish
${project.build.directory}/book
diff --git a/docs/performance-tuning-guide/src/main/asciidoc/tuning-glassfish.adoc b/docs/performance-tuning-guide/src/main/asciidoc/tuning-glassfish.adoc
index 7424ea757cb..16754caa651 100644
--- a/docs/performance-tuning-guide/src/main/asciidoc/tuning-glassfish.adoc
+++ b/docs/performance-tuning-guide/src/main/asciidoc/tuning-glassfish.adoc
@@ -164,9 +164,9 @@ performance.
Set the log level for the server and its subsystems in the {productName} Administration Console. Navigate to the
Configurations>configuration-name>Logger Settings page, and follow the
instructions in the online help. Alternatively, you can configure
-logging by following the instructions in "link:administration-guide/logging.html#GSADG00010[Administering
-the Logging Service]" in {productName}
-Administration Guide.
+logging by following the instructions in
+"link:administration-guide/logging.html#administering-the-logging-service[Administering the Logging Service]"
+in {productName} Administration Guide.
[[abedw]][[GSPTG00058]][[web-container-settings]]
diff --git a/docs/pom.xml b/docs/pom.xml
index df0fb1a807b..c35b72d8152 100644
--- a/docs/pom.xml
+++ b/docs/pom.xml
@@ -98,7 +98,7 @@
org.glassfish.doc
glassfish-doc-maven-plugin
- 1.2
+ 1.3
org.codehaus.mojo
diff --git a/docs/reference-manual/src/main/asciidoc/collect-log-files.adoc b/docs/reference-manual/src/main/asciidoc/collect-log-files.adoc
index bce18ecee1c..72c1df0b78c 100644
--- a/docs/reference-manual/src/main/asciidoc/collect-log-files.adoc
+++ b/docs/reference-manual/src/main/asciidoc/collect-log-files.adoc
@@ -163,6 +163,6 @@ link:rotate-log.html#rotate-log-1[`rotate-log`(1)],
link:set-log-attributes.html#set-log-attributes-1[`set-log-attributes`(1)],
link:set-log-levels.html#set-log-levels-1[`set-log-levels`(1)]
-"link:administration-guide/logging.html#GSADG00010[Administering the Logging Service]" in {productName} Administration Guide
+"link:administration-guide/logging.html#administering-the-logging-service[Administering the Logging Service]" in {productName} Administration Guide
diff --git a/docs/reference-manual/src/main/asciidoc/instance.adoc b/docs/reference-manual/src/main/asciidoc/instance.adoc
index ebfb624d102..2a667599ff6 100644
--- a/docs/reference-manual/src/main/asciidoc/instance.adoc
+++ b/docs/reference-manual/src/main/asciidoc/instance.adoc
@@ -11,8 +11,8 @@ prev=dotted-names.html
== instance
-An instance in {productName} has its own Jakarta EE configuration, Java
-EE resources, application deployment areas, and server configuration
+An instance in {productName} has its own Jakarta EE configuration,
+Jakarta EE resources, application deployment areas, and server configuration
settings
[[sthref2403]]
@@ -20,8 +20,8 @@ settings
=== Description
{productName} creates one server instance, called `server` at the
-time of installation. You can delete the server instance and create a
-new instance with a different name.
+time of installation. You can delete the server instance and create
+a new instance with a different name.
For many users, one server instance meets their needs. However,
depending upon your environment, you might want to create additional
diff --git a/docs/reference-manual/src/main/asciidoc/list-log-attributes.adoc b/docs/reference-manual/src/main/asciidoc/list-log-attributes.adoc
index d177c0cea21..9a07efb3c2a 100644
--- a/docs/reference-manual/src/main/asciidoc/list-log-attributes.adoc
+++ b/docs/reference-manual/src/main/asciidoc/list-log-attributes.adoc
@@ -69,27 +69,34 @@ This example lists all loggers attributes for the default domain.
[source,subs="none"]
----
asadmin> list-log-attributes
-com.sun.enterprise.server.logging.GFFileHandler.alarms
-com.sun.enterprise.server.logging.GFFileHandler.file \
-<${com.sun.aas.instanceRoot}/logs/server.log>
-com.sun.enterprise.server.logging.GFFileHandler.flushFrequency <1>
-com.sun.enterprise.server.logging.GFFileHandler.formatter \
-
-com.sun.enterprise.server.logging.GFFileHandler.logtoConsole
-com.sun.enterprise.server.logging.GFFileHandler.maxHistoryFiles <0>
-com.sun.enterprise.server.logging.GFFileHandler.retainErrorsStasticsForHours <0>
-com.sun.enterprise.server.logging.GFFileHandler.rotationLimitInBytes <2000000>
-com.sun.enterprise.server.logging.GFFileHandler.rotationTimelimitInMinutes <0>
-com.sun.enterprise.server.logging.SyslogHandler.useSystemLogging
-handlers
-java.util.logging.ConsoleHandler.formatter \
-
-java.util.logging.FileHandler.count <1>
-java.util.logging.FileHandler.formatter
-java.util.logging.FileHandler.limit <50000>
-java.util.logging.FileHandler.pattern <%h/java%u.log>
-log4j.logger.org.hibernate.validator.util.Version
-
+handlers
+org.glassfish.main.jul.handler.GlassFishLogHandler.buffer.capacity <10000>
+org.glassfish.main.jul.handler.GlassFishLogHandler.buffer.timeoutInSeconds <0>
+org.glassfish.main.jul.handler.GlassFishLogHandler.enabled
+org.glassfish.main.jul.handler.GlassFishLogHandler.encoding
+org.glassfish.main.jul.handler.GlassFishLogHandler.file <${com.sun.aas.instanceRoot}/logs/server.log>
+org.glassfish.main.jul.handler.GlassFishLogHandler.flushFrequency <1>
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter.excludedFields <>
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter.multiline
+org.glassfish.main.jul.handler.GlassFishLogHandler.formatter.printSource
+org.glassfish.main.jul.handler.GlassFishLogHandler.redirectStandardStreams
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.compress
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.limit.megabytes <100>
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.limit.minutes <0>
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.maxArchiveFiles <0>
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.rollOnDateChange
+org.glassfish.main.jul.handler.SimpleLogHandler.formatter
+org.glassfish.main.jul.handler.SimpleLogHandler.formatter.excludedFields <>
+org.glassfish.main.jul.handler.SimpleLogHandler.formatter.printSource
+org.glassfish.main.jul.handler.SimpleLogHandler.useErrorStream
+org.glassfish.main.jul.handler.SyslogHandler.buffer.capacity <5000>
+org.glassfish.main.jul.handler.SyslogHandler.buffer.timeoutInSeconds <300>
+org.glassfish.main.jul.handler.SyslogHandler.enabled
+org.glassfish.main.jul.handler.SyslogHandler.encoding
+org.glassfish.main.jul.handler.SyslogHandler.formatter
+org.glassfish.main.jul.handler.SyslogHandler.host <>
+org.glassfish.main.jul.handler.SyslogHandler.port <514>
Command list-log-attributes executed successfully.
----
@@ -114,6 +121,6 @@ link:rotate-log.html#rotate-log-1[`rotate-log`(1)],
link:set-log-attributes.html#set-log-attributes-1[`set-log-attributes`(1)],
link:set-log-levels.html#set-log-levels-1[`set-log-levels`(1)]
-"link:administration-guide/logging.html#GSADG00010[Administering the Logging Service]" in {productName} Administration Guide
+"link:administration-guide/logging.html#administering-the-logging-service[Administering the Logging Service]" in {productName} Administration Guide
diff --git a/docs/reference-manual/src/main/asciidoc/list-log-levels.adoc b/docs/reference-manual/src/main/asciidoc/list-log-levels.adoc
index 044191dc2f5..21953ce4045 100644
--- a/docs/reference-manual/src/main/asciidoc/list-log-levels.adoc
+++ b/docs/reference-manual/src/main/asciidoc/list-log-levels.adoc
@@ -74,50 +74,58 @@ levels are set.
[source]
----
asadmin> list-log-levels
-java.util.logging.ConsoleHandler
-jakarta.enterprise.resource.corba
-jakarta.enterprise.resource.javamail
-jakarta.enterprise.resource.jdo
-jakarta.enterprise.resource.jms
-jakarta.enterprise.resource.jta
-jakarta.enterprise.resource.resourceadapter
-jakarta.enterprise.resource.sqltrace
-jakarta.enterprise.resource.webcontainer.jsf.application
-jakarta.enterprise.resource.webcontainer.jsf.config
-jakarta.enterprise.resource.webcontainer.jsf.context
-jakarta.enterprise.resource.webcontainer.jsf.facelets
-jakarta.enterprise.resource.webcontainer.jsf.lifecycle
-jakarta.enterprise.resource.webcontainer.jsf.managedbean
-jakarta.enterprise.resource.webcontainer.jsf.renderkit
-jakarta.enterprise.resource.webcontainer.jsf.resource
-jakarta.enterprise.resource.webcontainer.jsf.taglib
-jakarta.enterprise.resource.webcontainer.jsf.timing
-jakarta.enterprise.system.container.cmp
-jakarta.enterprise.system.container.ejb
-jakarta.enterprise.system.container.ejb.mdb
-jakarta.enterprise.system.container.web
-jakarta.enterprise.system.core.classloading
-jakarta.enterprise.system.core.config
-jakarta.enterprise.system.core
-jakarta.enterprise.system.core.naming
-jakarta.enterprise.system.core.security
-jakarta.enterprise.system.core.selfmanagement
-jakarta.enterprise.system.core.transaction
-jakarta.enterprise.system
-jakarta.enterprise.system.tools.admin
-jakarta.enterprise.system.tools.backup
-jakarta.enterprise.system.tools.deployment
-jakarta.enterprise.system.util
-jakarta.enterprise.system.webservices.registry
-jakarta.enterprise.system.webservices.rpc
-jakarta.enterprise.system.webservices.saaj
-javax
-javax.org.glassfish.persistence
+MBeans
+com.sun.enterprise.glassfish.bootstrap
+com.sun.enterprise.glassfish
+com.sun.enterprise.security
+com.sun.webui
+jakarta.enterprise.admin.rest.client
+jakarta.enterprise.admin.rest.connector
+jakarta.enterprise.admin.rest
+jakarta.enterprise.bootstrap
+jakarta.enterprise.cluster.gms.admin
+jakarta.enterprise.cluster.gms.bootstrap
+jakarta.enterprise.cluster.gms
+jakarta.enterprise.concurrent
+jakarta.enterprise.config.api
+jakarta.enterprise.connector.work
+jakarta.enterprise.ejb.container
+jakarta.enterprise.inject
+jakarta.enterprise.inject.spi
+jakarta.enterprise.launcher
+jakarta.enterprise.logging
+jakarta.enterprise.monitoring
+jakarta.enterprise.osgi.container
+jakarta.enterprise.resource.corba
+jakarta.enterprise.resource.javamail
+jakarta.enterprise.resource.jdo
+jakarta.enterprise.resource.jms.injection
+jakarta.enterprise.resource.jms
+jakarta.enterprise.resource.jta
+jakarta.enterprise.resource.resourceadapter
+...
+jakarta.ws.rs.client
org.apache.catalina
org.apache.coyote
-org.glassfish.wasp
+org.apache.jasper
+org.eclipse.krazo
+org.eclipse.persistence.session
org.glassfish.admingui
-org.jvnet.hk2.osgiadapter
+org.glassfish.grizzly.http2
+org.glassfish.grizzly
+org.glassfish.jersey
+org.glassfish.jersey.message.internal.TracingLogger
+org.glassfish
+org.glassfish.main.jul.handler.GlassFishLogHandler
+org.glassfish.main.jul.handler.SimpleLogHandler
+org.glassfish.main
+org.glassfish.naming
+org.glassfish.persistence
+org.glassfish.security
+org.hibernate.validator.internal.util.Version
+org.jvnet.hk2
+org.jvnet.hk2.osgiadapter
+sun
Command list-log-levels executed successfully.
----
@@ -142,6 +150,6 @@ link:rotate-log.html#rotate-log-1[`rotate-log`(1)],
link:set-log-attributes.html#set-log-attributes-1[`set-log-attributes`(1)],
link:set-log-levels.html#set-log-levels-1[`set-log-levels`(1)]
-"link:administration-guide/logging.html#GSADG00010[Administering the Logging Service]" in {productName} Administration Guide
+"link:administration-guide/logging.html#administering-the-logging-service[Administering the Logging Service]" in {productName} Administration Guide
diff --git a/docs/reference-manual/src/main/asciidoc/list-loggers.adoc b/docs/reference-manual/src/main/asciidoc/list-loggers.adoc
index f8ec3f96250..e2e83cdefdf 100644
--- a/docs/reference-manual/src/main/asciidoc/list-loggers.adoc
+++ b/docs/reference-manual/src/main/asciidoc/list-loggers.adoc
@@ -57,13 +57,16 @@ logger. Some lines of output are omitted from this example for readability.
[source]
----
asadmin> list-loggers
-Logger Name Subsystem Logger Description
-...
-jakarta.enterprise.monitoring Monitoring Monitoring Logger
-jakarta.enterprise.system.core.ee AS-CORE Jakarta EE Core Kernel
-jakarta.enterprise.system.jmx JMX JMX System Logger
-jakarta.enterprise.system.tools.admin ADMIN Administration Services
+Logger Name Subsystem Logger Description
+jakarta.enterprise.admin.rest REST Main REST Logger
+jakarta.enterprise.admin.rest.client REST REST Client Logger
+jakarta.enterprise.admin.rest.connector RSTCN REST Connector Logger
+jakarta.enterprise.bootstrap BOOTSTRAP Main bootstrap logger.
+jakarta.enterprise.cluster.gms CLSTR Group Management Service Adapter Logger
...
+jakarta.mail MAIL Jakarta Mail Logger
+org.glassfish.naming glassfish-naming logger for GlassFish appserver naming
+
Command list-loggers executed successfully.
----
diff --git a/docs/reference-manual/src/main/asciidoc/logging.adoc b/docs/reference-manual/src/main/asciidoc/logging.adoc
index b34b941829b..17660a6f1b6 100644
--- a/docs/reference-manual/src/main/asciidoc/logging.adoc
+++ b/docs/reference-manual/src/main/asciidoc/logging.adoc
@@ -54,6 +54,6 @@ link:set-log-levels.html#set-log-levels-1[`set-log-levels`(1)]
link:asadmin.html#asadmin-1m[`asadmin`(1M)]
-"link:administration-guide/logging.html#GSADG00010[Administering the Logging Service]" in {productName} Administration Guide
+"link:administration-guide/logging.html#administering-the-logging-service[Administering the Logging Service]" in {productName} Administration Guide
diff --git a/docs/reference-manual/src/main/asciidoc/rotate-log.adoc b/docs/reference-manual/src/main/asciidoc/rotate-log.adoc
index 61223b5388b..fc2196dfadc 100644
--- a/docs/reference-manual/src/main/asciidoc/rotate-log.adoc
+++ b/docs/reference-manual/src/main/asciidoc/rotate-log.adoc
@@ -105,6 +105,6 @@ link:list-log-levels.html#list-log-levels-1[`list-log-levels`(1)],
link:set-log-attributes.html#set-log-attributes-1[`set-log-attributes`(1)],
link:set-log-levels.html#set-log-levels-1[`set-log-levels`(1)]
-"link:administration-guide/logging.html#GSADG00010[Administering the Logging Service]" in {productName} Administration Guide
+"link:administration-guide/logging.html#administering-the-logging-service[Administering the Logging Service]" in {productName} Administration Guide
diff --git a/docs/reference-manual/src/main/asciidoc/set-log-attributes.adoc b/docs/reference-manual/src/main/asciidoc/set-log-attributes.adoc
index 772856b2c7d..0305d5a2fbe 100644
--- a/docs/reference-manual/src/main/asciidoc/set-log-attributes.adoc
+++ b/docs/reference-manual/src/main/asciidoc/set-log-attributes.adoc
@@ -29,9 +29,9 @@ attribute-name=attribute-value[:attribute-name=attribute-value]*
=== Description
The `set-log-attributes` subcommand sets logging attributes for one or
-more loggers. The attributes you can set correspond to the attributes
-that are available in the `logging.properties` file for the domain.
-Depending on the attributes you set, a server restart may be necessary.
+more handlers or formatters. The attributes you can set correspond
+to the attributes that are available in the `logging.properties` file
+for the domain.
This subcommand is supported in remote mode only.
@@ -66,49 +66,10 @@ attribute-name::
currently defined attributes.
attribute-value::
The value to apply to the specified attribute. +
- The attribute values that can be specified include the following.
- Refer to "link:administration-guide/logging.html#GSADG00010[Administering the Logging Service]" in
- {productName} Administration Guide for complete
- explanations of each of these values.
-
- `com.sun.enterprise.server.logging.GFFileHandler.alarms`;;
- Default is `false`.
- `com.sun.enterprise.server.logging.GFFileHandler.excludeFields`;;
- Default is an empty string.
- `com.sun.enterprise.server.logging.GFFileHandler.file`;;
- Default is `${com.sun.aas.instanceRoot}/logs/server.log`.
- `com.sun.enterprise.server.logging.GFFileHandler.flushFrequency`;;
- Default is `1`.
- `com.sun.enterprise.server.logging.GFFileHandler.formatter`;;
- Default is `com.sun.enterprise.server.logging.UniformLogFormatter`.
- `com.sun.enterprise.server.logging.GFFileHandler.logtoConsole`;;
- Default is `false`.
- `com.sun.enterprise.server.logging.GFFileHandler.maxHistoryFiles`;;
- Default is `0`.
- `com.sun.enterprise.server.logging.GFFileHandler.multiLineMode`;;
- Default is `true`.
- `com.sun.enterprise.server.logging.GFFileHandler.retainErrorsStasticsForHours`;;
- Default is `0`.
- `com.sun.enterprise.server.logging.GFFileHandler.rotationLimitInBytes`;;
- Default is `2000000`.
- `com.sun.enterprise.server.logging.GFFileHandler.rotationTimelimitInMinutes`;;
- Default is `0`.
- `com.sun.enterprise.server.logging.SyslogHandler.useSystemLogging`;;
- Default is `false`.
- `handlers`;;
- Default is `java.util.logging.ConsoleHandler`.
- `java.util.logging.ConsoleHandler.formatter`;;
- Default is `com.sun.enterprise.server.logging.UniformLogFormatter`.
- `java.util.logging.FileHandler.count`;;
- Default is `1`.
- `java.util.logging.FileHandler.formatter`;;
- Default is `java.util.logging.XMLFormatter`.
- `java.util.logging.FileHandler.limit`;;
- Default is `50000`.
- `java.util.logging.FileHandler.pattern`;;
- Default is `%h/java%u.log`.
- `log4j.logger.org.hibernate.validator.util.Version`;;
- Default is `warn`.
+ Refer to "link:administration-guide/logging.html#administering-the-logging-service[Administering the Logging Service]" in
+ {productName} Administration Guide for complete explanations of supported attribute values.
+ Use link:list-log-attributes.html#list-log-attributes-1[`list-log-attributes`(1)] to get
+ current set of attributes.
[[sthref2045]]
@@ -118,16 +79,16 @@ attribute-value::
==== Example 1 Setting the Maximum Number of Log History Files to Maintain
-This example sets to 8 the maximum number of log history files for the
-server as a whole.
+This example sets to 8 the maximum number of log history files for the server as a whole.
[source]
----
-asadmin> set-log-attributes --target=server \
-com.sun.enterprise.server.logging.GFFileHandler.maxHistoryFiles=8
-com.sun.enterprise.server.logging.GFFileHandler.maxHistoryFiles logging
-attribute set with value 8.
-These logging attributes are set for server.
+asadmin set-log-attributes --target=server \
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.maxArchiveFiles=8
+
+org.glassfish.main.jul.handler.GlassFishLogHandler.rotation.maxArchiveFiles logging attribute value set to 8.
+The logging attributes are saved successfully for server.
+
Command set-log-attributes executed successfully.
----
@@ -144,14 +105,14 @@ Command set-log-attributes executed successfully.
=== See Also
-link:asadmin.html#asadmin-1m[`asadmin`(1M)]
+xref:asadmin.adoc#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-levels.html#set-log-levels-1[`set-log-levels`(1)]
+xref:collect-log-files.adoc#collect-log-files-1[`collect-log-files`(1)],
+xref:list-log-attributes.adoc#list-log-attributes-1[`list-log-attributes`(1)],
+xref:list-log-levels.adoc#list-log-levels-1[`list-log-levels`(1)],
+xref:rotate-log.adoc#rotate-log-1[`rotate-log`(1)],
+xref:set-log-levels.adoc#set-log-levels-1[`set-log-levels`(1)]
-"link:administration-guide/logging.html#GSADG00010[Administering the Logging Service]" in {productName} Administration Guide
+"link:administration-guide/adoc.html#administering-the-logging-service[Administering the Logging Service]" in {productName} Administration Guide
diff --git a/docs/reference-manual/src/main/asciidoc/set-log-file-format.adoc b/docs/reference-manual/src/main/asciidoc/set-log-file-format.adoc
index 59e8e628b9f..771e62c2897 100644
--- a/docs/reference-manual/src/main/asciidoc/set-log-file-format.adoc
+++ b/docs/reference-manual/src/main/asciidoc/set-log-file-format.adoc
@@ -31,16 +31,12 @@ asadmin [asadmin-options] set-log-file-format [--help]
The `set-log-file-format` subcommand sets the formatter to be used for
the server log file for the specified target.
-{productName} provides the ULF (UniformLogFormatter) and ODL (Oracle
-Diagnostics Logging) formatters. A custom formatter can also be used by
-specifying the fully qualified name of a class that extends the
+{productName} provides the ULF (UniformLogFormatter), ODL (Oracle
+Diagnostics Logging) and OneLine (OneLineFormatter) formatters.
+A custom formatter can also be used by specifying the fully
+qualified name of a class that extends the
`java.util.logging.Formatter` class.
-The custom formatter class can be packaged in a JAR file and placed in
-domain``/lib/ext``, or implemented as an HK2 service and the JAR
-containing the formatter implementation installed in
-`glassfish/modules`.
-
This subcommand is supported in remote mode only.
[[sthref2051]]
@@ -64,7 +60,7 @@ asadmin-options::
formatter::
Specifies the fomatter to be used for the server log file.
- Valid values are ULF, ODL, or the fully qualified name of the custom
+ Valid values are ULF, ODL, OneLine or the fully qualified name of the custom
formatter class to be used to render the log files.
The default value is ODL.
@@ -101,6 +97,6 @@ link:asadmin.html#asadmin-1m[`asadmin`(1M)]
link:list-loggers.html#list-loggers-1[`list-loggers`(1)]
-"link:administration-guide/logging.html#GSADG00010[Administering the Logging Service]" in {productName} Administration Guide
+"link:administration-guide/logging.html#administering-the-logging-service[Administering the Logging Service]" in {productName} Administration Guide
diff --git a/docs/reference-manual/src/main/asciidoc/set-log-levels.adoc b/docs/reference-manual/src/main/asciidoc/set-log-levels.adoc
index 06fb354ee3e..f71a6b0af11 100644
--- a/docs/reference-manual/src/main/asciidoc/set-log-levels.adoc
+++ b/docs/reference-manual/src/main/asciidoc/set-log-levels.adoc
@@ -29,8 +29,7 @@ logger-name=logger-level[:logger-name=logger-level]*
=== 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.
+loggers. Changes take effect with some latency for the reconfiguration.
This subcommand is supported in remote mode only.
@@ -116,6 +115,6 @@ 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 {productName} Administration Guide
+"link:administration-guide/logging.html#administering-the-logging-service[Administering the Logging Service]" in {productName} Administration Guide
diff --git a/docs/troubleshooting-guide/src/main/asciidoc/overview.adoc b/docs/troubleshooting-guide/src/main/asciidoc/overview.adoc
index 9a9892e5338..fee1eaf0e44 100644
--- a/docs/troubleshooting-guide/src/main/asciidoc/overview.adoc
+++ b/docs/troubleshooting-guide/src/main/asciidoc/overview.adoc
@@ -57,12 +57,7 @@ is not supported or on a system that in some other way does not meet release req
Also see "link:release-notes/release-notes.html#GSRLN00253[Known Issues]"
in {productName} Release Notes for known issues related to installation.
-{productName} requires JDK release 6. The minimum
-(and certified) version of the JDK that is required for {productName} depends on the operating system:
-
-* For supported operating systems except Mac OS, the minimum required version is 1.6.0_17.
-* For the Mac OS X operating system, the minimum required version is 1.6.0_15.
-
+{productName} requires JDK release 11 or newer.
If necessary, download and install the required JDK software.
On Solaris, Linux, and Windows systems, JDK software is available from the
@@ -263,7 +258,7 @@ module-specific loggers.
For information about using the Administration Console log viewer and
logging functions, see the Administration Console online help. For
information about using the command line for logging functions, see
-"link:administration-guide/logging.html#GSADG00010[Administering the Logging Service]" in {productName} Administration Guide.
+"link:administration-guide/logging.html#administering-the-logging-service[Administering the Logging Service]" in {productName} Administration Guide.
[[ghuvd]][[GSTSG00174]][[monitoring-the-system]]
diff --git a/nucleus/core/logging/src/main/manpages/com/sun/enterprise/server/logging/commands/list-log-attributes.1 b/nucleus/core/logging/src/main/manpages/com/sun/enterprise/server/logging/commands/list-log-attributes.1
index 625a2705e8a..82ca6ccb8e2 100644
--- a/nucleus/core/logging/src/main/manpages/com/sun/enterprise/server/logging/commands/list-log-attributes.1
+++ b/nucleus/core/logging/src/main/manpages/com/sun/enterprise/server/logging/commands/list-log-attributes.1
@@ -36,30 +36,29 @@ EXAMPLES
Example 1, Listing the Logger Attributes for a Domain
This example lists all loggers attributes for the default domain.
- asadmin> list-log-attributes
- com.sun.enterprise.server.logging.GFFileHandler.alarms
- com.sun.enterprise.server.logging.GFFileHandler.file \
- <${com.sun.aas.instanceRoot}/logs/server.log>
- com.sun.enterprise.server.logging.GFFileHandler.flushFrequency <1>
- com.sun.enterprise.server.logging.GFFileHandler.formatter \
-
- com.sun.enterprise.server.logging.GFFileHandler.logtoConsole
- com.sun.enterprise.server.logging.GFFileHandler.maxHistoryFiles <0>
- com.sun.enterprise.server.logging.GFFileHandler.retainErrorsStasticsForHours <0>
- com.sun.enterprise.server.logging.GFFileHandler.rotationLimitInBytes <2000000>
- com.sun.enterprise.server.logging.GFFileHandler.rotationTimelimitInMinutes <0>
- com.sun.enterprise.server.logging.SyslogHandler.useSystemLogging
- handlers
- java.util.logging.ConsoleHandler.formatter \
-
- java.util.logging.FileHandler.count <1>
- java.util.logging.FileHandler.formatter