You can use scripting to configure the size of Java™ virtual machine (JVM) log
files. JVM logs record events or information from a running JVM.
Before you begin
There are two ways to perform this task. This topic demonstrates how to use the AdminConfig
object to modify your server configuration. Alternatively, you can use the configureJavaProcessLogs
Jython script in the AdminServerManagement script library to configure the JVM log settings. The
wsadmin tool automatically loads the script when the tool starts. Use the following syntax to
configure JVM log settings using the configureJavaProcessLogs
script:
AdminServerManagement.configureJavaProcessLogs(nodeName, serverName, processLogRoot, otherAttributeList)
For
additional information and argument definitions, see the documentation for the
AdminServerMananagment script library.
Procedure
-
Start the wsadmin scripting tool.
-
Identify the application server of interest.
Determine the configuration ID of the application server of interest and assign it to the server1
variable, as the following example demonstrates:
Example
output:
server1(cells/mycell/nodes/mynode/servers/server1|server.xml#Server_1)
-
Identify the stream log of interest.
Determine the stream log of interest and assign it to the log variable. The following
example identifies the output stream log:
- Using Jacl:
set log [$AdminConfig showAttribute $s1 outputStreamRedirect]
- Using Jython:
log = AdminConfig.showAttribute(s1, 'outputStreamRedirect')
The following example identifies the error stream log:
- Using Jacl:
set log [$AdminConfig showAttribute $s1 errorStreamRedirect]
- Using Jython:
log = AdminConfig.showAttribute(s1, 'errorStreamRedirect')
Example
output:
(cells/mycell/nodes/mynode/servers/server1|server.xml#StreamRedirect_2)
-
List the current values of the stream log.
Use the following example to display the current values of the stream log of interest:
- Using Jacl:
$AdminConfig show $log
- Using Jython:
AdminConfig.show(log)
Example
output:
{baseHour 24}
{fileName ${SERVER_LOG_ROOT}/SystemOut.log}
{formatWrites true}
{maxNumberOfBackupFiles 1}
{messageFormatKind BASIC}
{rolloverPeriod 24}
{rolloverSize 1}
{rolloverType SIZE}
{suppressStackTrace false}
{suppressWrites false}
-
Modify the rotation policy for the stream log.
The following example sets the rotation log file size to two megabytes:
- Using Jacl:
$AdminConfig modify $log {{rolloverSize 2}}
- Using Jython:
AdminConfig.modify(log, [['rolloverSize', 2]])
The following example sets the rotation policy to manage itself. It is based on the age of the
file with the rollover algorithm loaded at midnight, and the log file rolling over every 12 hours:
- Using Jacl:
$AdminConfig modify $log {{rolloverType TIME}
{rolloverPeriod 12} {baseHour 24}}
- Using Jython:
AdminConfig.modify(log, [['rolloverType', 'TIME'],
['rolloverPeriod', 12], ['baseHour', 24]])
The following example sets the log file to roll over based on both time and size:
- Using
Jacl:
$AdminConfig modify $log {{rolloverType BOTH} {rolloverSize 2}
{rolloverPeriod 12} {baseHour 24}}
- Using
Jython:
AdminConfig.modify(log, [['rolloverType', 'BOTH'], ['rolloverSize', 2],
['rolloverPeriod', 12], ['baseHour', 24]])
-
Save the configuration changes.
Use the following command example to save your configuration
changes:
AdminConfig.save()
-
In a network deployment environment only, synchronize the node.
Use the syncActiveNode or syncNode scripts in the AdminNodeManagement script
library to propagate the configuration changes to node or nodes.