[AIX Solaris HP-UX Linux Windows][IBM i]

使用脚本限制 JVM 日志文件的增长

可以使用脚本来配置 Java™ 虚拟机 (JVM) 日志文件的大小。JVM 日志对来自正在运行的 JVM 的事件或信息进行记录。

开始之前

有两种方式可用来执行本任务。本主题说明了如何使用 AdminConfig 对象来修改服务器配置。或者,可以使用 AdminServerManagement 脚本库中的 configureJavaProcessLogs Jython 脚本来配置 JVM 日志设置。wsadmin 工具启动时将自动装入该脚本。通过以下语法使用 configureJavaProcessLogs 脚本来配置 JVM 日志设置:
AdminServerManagement.configureJavaProcessLogs(nodeName, serverName, processLogRoot, otherAttributeList)
有关其他信息和自变量定义,请参阅 AdminServerMananagment 脚本库的文档。

过程

  1. 启动 wsadmin 脚本编制工具。
  2. 标识相关的应用程序服务器。

    确定相关应用程序服务器的配置标识并将其指定给 server1 变量,如下例所示:

    • 使用 Jacl:
      set s1 [$AdminConfig getid /Cell:mycell/Node:mynode/Server:server1/]
    • 使用 Jython:
      s1 = AdminConfig.getid('/Cell:mycell/Node:mynode/Server:server1/')
      print s1
      其中:
      表 1. 语法说明. 下表描述 getid 命令的元素。
      元素 描述
      set 是 Jacl 命令
      s1 是变量名
      $ 是使用其值替换变量名的 Jacl 运算符
      AdminConfig 是表示 WebSphere® Application Server 配置的对象
      getid 是 AdminConfig 命令
      Cell 是对象类型
      mycell 是将修改的对象名
      Node 是对象类型
      mynode 是将修改的对象名
      Server 是对象类型
      server1 是将修改的对象名
      print Jython 命令
    示例输出:
    server1(cells/mycell/nodes/mynode/servers/server1|server.xml#Server_1)
  3. 标识相关流日志。
    确定相关的流日志并将其指定给 log 变量。以下示例标识输出流日志:
    • 使用 Jacl:
      set log [$AdminConfig showAttribute $s1 outputStreamRedirect]
    • 使用 Jython:
      log = AdminConfig.showAttribute(s1, 'outputStreamRedirect')
    以下示例识别错误流日志:
    • 使用 Jacl:
      set log [$AdminConfig showAttribute $s1 errorStreamRedirect]
    • 使用 Jython:
      log = AdminConfig.showAttribute(s1, 'errorStreamRedirect')
    示例输出:
    (cells/mycell/nodes/mynode/servers/server1|server.xml#StreamRedirect_2)
  4. 列示流日志的当前值。
    使用以下示例来显示相关流日志的当前值:
    • 使用 Jacl:
      $AdminConfig show $log
    • 使用 Jython:
      AdminConfig.show(log)
    示例输出:
    {baseHour 24}
    {fileName ${SERVER_LOG_ROOT}/SystemOut.log}
    {formatWrites true}
    {maxNumberOfBackupFiles 1}
    {messageFormatKind BASIC}
    {rolloverPeriod 24}
    {rolloverSize 1}
    {rolloverType SIZE}
    {suppressStackTrace false}
    {suppressWrites false}
  5. 修改流日志的旋转策略。
    以下示例将旋转日志文件大小设置为 2 兆字节:
    • 使用 Jacl:
      $AdminConfig modify $log {{rolloverSize 2}}
    • 使用 Jython:
      AdminConfig.modify(log, [['rolloverSize', 2]])
    以下示例设置旋转策略管理自身。它基于在午夜装入的翻转算法的文件时效,并且日志文件每 12 个小时翻转一次:
    • 使用 Jacl:
      $AdminConfig modify $log {{rolloverType TIME} 
      {rolloverPeriod 12} {baseHour 24}}
    • 使用 Jython:
      AdminConfig.modify(log, [['rolloverType', 'TIME'], 
      ['rolloverPeriod', 12], ['baseHour', 24]])
    以下示例根据时间和大小设置日志文件的翻转:
    • 使用 Jacl:
      $AdminConfig modify $log {{rolloverType BOTH} {rolloverSize 2} 
      {rolloverPeriod 12} {baseHour 24}}
    • 使用 Jython:
      AdminConfig.modify(log, [['rolloverType', 'BOTH'], ['rolloverSize', 2], 
      ['rolloverPeriod', 12], ['baseHour', 24]])
  6. 保存配置更改。
    请使用以下命令示例来保存配置更改:
    AdminConfig.save()
  7. 仅在 Network Deployment 环境中使节点同步。
    使用 AdminNodeManagement 脚本库中的 syncActiveNode 或 syncNode 脚本将配置更改传播至一个或多个节点。
    • 使用 syncActiveNodes 脚本将更改传播至单元中的每个节点,如以下示例所示:
      AdminNodeManagement.syncActiveNodes()
    • 使用 syncNode 脚本将更改传播至特定节点,如以下示例所示:
      AdminNodeManagement.syncNode("myNode")

指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=txml_logrotation
文件名:txml_logrotation.html