Logging is the process by which GlassFish Server captures information about events that occur during server operation, such as configuration errors, security failures, or server malfunction. This data is recorded in a log file, and is usually the first source of information when problems occur. Analyzing the log files can help you to determine the health of the server.
Although application components can use the Apache Commons Logging Library to record messages, the platform standard JSR 047 API is recommended for better log configuration.
The following topics are addressed here:
GlassFish Server log records are captured in the server log. The server log is named server.log by default and is typically located in domain-dir/logs. You can change the default name or location of the server log by using the Administration Console.
In addition to the server log, the domain-dir/logs directory contains the following additional logs:
HTTP service access logs, located in the /access subdirectory
Transaction service logs, located in the /tx subdirectory
When the server log reaches the specified size in bytes, the log is rotated and renamed with a timestamp name to server.log_date, where date is the date and time that the file was rotated. You can also rotate this log manually by following instructions in Rotating the Server Log.
GlassFish Server log records follow a uniform format:
[#|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-ddThh:mm:ss.SSSS-Z specifies the date and time that the record was created. For example: 2006-10-21T13:25:53.852-0400
Log Level specifies the desired log level. You can select any of the following values: SEVERE, WARNING, INFO, CONFIG, FINE, FINER, and FINEST. The default is INFO.
ProductName-Version refers to the current version of the GlassFish Server. For example: glassfish
LoggerName is a hierarchical logger namespace that identifies the source of the log module. For example: javax.enterprise.system.core
Key Value Pairs refers to pairs of key names and values, typically a thread ID. For example: _ThreadID=14;
Message is the text of the log message. For all GlassFish Server SEVERE and WARNING messages and for many INFO messages, the message begins with a message ID that consists of a module code and a numerical value. For example: CORE5004
An example log record might look like this:
[#|2006-10-21T13:25:53.852-0400|INFO|GlassFish10.0|javax.enterprise. system.core|_ThreadID=13;|CORE5004: Resource Deployed: [cr:jms/DurableConnectionFactory].|#]
The Administration Console presents log records in a more readable display.
You can use the list-logger-levels(1) subcommand to list the existing loggers for the modules. Example loggers:
javax.enterprise.system.container.cmp: INFO javax.enterprise.system.tools.admin: INFO javax.enterprise.system.container.web: INFO javax.enterprise.system.util: INFO javax.enterprise.resource.webcontainer.jsf.timing: INFO javax: INFO javax.enterprise.resource.corba: INFO javax.enterprise.system.core.naming: INFO javax.enterprise.system.core.selfmanagement: INFO javax.enterprise.system.container.ejb: INFO javax.enterprise.resource.webcontainer.jsf.config: INFO javax.enterprise.resource.javamail: INFO org.apache.catalina: INFO javax.enterprise.system.core.config: INFO javax.enterprise.system.webservices.rpc: INFO javax.enterprise.system.webservices.registry: INFO javax.enterprise.system.tools.deployment: INFO javax.enterprise.resource.jms: INFO javax.enterprise.system: INFO javax.enterprise.system.webservices.saaj: INFO org.apache.jasper: INFO javax.enterprise.resource.webcontainer.jsf.lifecycle: INFO javax.enterprise.resource.jta: INFO javax.enterprise.resource.jdo: INFO javax.enterprise.resource.resourceadapter: INFO javax.enterprise.system.core.transaction: INFO javax.enterprise.resource.webcontainer.jsf.resource: INFO javax.enterprise.system.core.security: INFO javax.enterprise.resource.webcontainer.jsf.application: INFO javax.enterprise.system.core.classloading: INFO org.apache.coyote: INFO javax.enterprise.resource.webcontainer.jsf.managedbean: INFO javax.enterprise.system.container.ejb.mdb: INFO javax.enterprise.resource.webcontainer.jsf.context: INFO javax.enterprise.resource.webcontainer.jsf.renderkit: INFO javax.enterprise.resource.webcontainer.jsf.facelets: INFO javax.enterprise.resource.webcontainer.jsf.taglib: INFO |