SET LOG 命令

控制 z/OS® Debugger 是否将每个执行的命令以及生成的输出写入日志文件,并定义 (或重新定义) 日志文件的名称。

读取语法图跳过可视语法图SETLOGONONFILE文件标识OLDMODOFFKEEP计数;
ON
指定将命令和输出写入日志文件。
FILE fileid
标识所使用的日志文件。 FILE 关键字不能缩写。

在非CICS®中, fileid 是 DD 名称或标准数据集名称。 不能使用分区数据集。

在 CICS中, fileid 是标准数据集名称。 CICS 区域必须具有对日志文件的更新权限。

如果 fileid 的格式为 DD 名称,那么 z/OS Debugger 将检查文件是否已分配。

在全屏幕方式下,日志文件 不应 分配给 3270 终端设备。

OLD
指定新信息将替换指定文件中的任何现有信息。 如果 fileid 指定 DD 名称,那么将忽略此操作数。
MOD
指定在指定文件中的任何现有信息之后追加新信息。 如果 fileid 指定 DD 名称,那么将忽略此操作数。
KEEP count
指定为显示而保留的日志输出行数。 初始设置为 1000; count 不能等于零 (0)。
OFF
指定不将命令和输出写入日志文件。

使用说明

  • 以下列表描述了 z/OS Debugger 如何确定 SET LOG的初始设置:
    • 如果 通过 EQAOPTS LOGDSN 命令指定缺省用户日志文件,那么以下规则适用:
      • 在非CICS 环境中,如果 分配 INSPLOG DD ,那么初始设置为 OFF
      • 在非CICS 环境中,如果确实分配了 INSPLOG DD ,那么初始设置为 ON FILE INSPLOG
      • 在 CICS 环境中,初始设置为 OFF
    • 如果通过 EQAOPTS LOGDSN 命令指定了缺省用户日志文件,那么以下规则适用:
      • 在批处理方式下,如果 分配 INSPLOG DD ,那么初始设置为 OFF
      • 在批处理方式下,如果确实分配了 INSPLOG DD ,那么初始设置为 ON FILE INSPLOG
      • 在全屏幕方式和非CICS 环境中,如果 分配 INSPLOG DD ,那么初始设置为 ON FILE fileid。 通过 EQAOPTS LOGDSN 命令指定 fileid
      • 在全屏幕方式和非CICS 环境中,如果分配 INSPLOG DD ,那么初始设置为 ON FILE INSPLOG
      • 在 CICS 环境中,初始设置为 ON FILE fileid。 通过 EQAOPTS LOGDSN 命令指定 fileid
  • 如果指定了 EQAOPTS LOGDSN 命令,那么可以指定 EQAOPTS LOGDSNALLOC 命令以指示如果日志文件数据集不存在,那么 z/OS Debugger 将创建该命令。 这可用于为新的 z/OS Debugger 用户创建文件。

    对于现有 z/OS Debugger 用户,如果使用 SAVESETS 数据集,那么该文件包含 SET LOG 命令。 如果在将设置保存到 SAVESETS 文件后创建了 EQAOPTS LOGDSN 命令的规范,那么 z/OS Debugger 不会更改已保存的 SET LOG 命令,也不会创建新的日志文件数据集。

    要了解如何指定 EQAOPTS 命令 LOGDSNLOGDSNALLOC,请参阅 EQAOPTS 命令

    当满足以下两个条件时, FILE LOGDSN 用于 SET LOG ON 命令:
    • LOGOFF时,将发出不带 FILE fileidA SET LOG ON
    • ON FILE LOGDSN 已通过 EQAOPTS LOGDSN 命令用作 SET LOG 的初始设置。

    对于 CICS,如果您未登录或未使用缺省用户标识登录,那么 z/OS Debugger 不会创建或使用为 fileid指定的文件。

    对于 Db2® 存储过程,请勿将 z/OS Debugger 设置为创建或使用为 fileid指定的文件。 由于多个用户共享同一个缺省数据集,因此多个用户可以尝试同时写入该数据集。 在此环境中,如果指定了 LOGDSN ,请为 file-name-pattern指定 NULLFILE

  • 保留用于显示的日志输出行始终是最后一行 (即最近的行)。
  • 设置 LOG OFF 不会禁止日志显示。
  • 如果您正在以全屏幕方式进行调试,并且日志文件已分配给终端,请先发出 SET LOG OFF 命令,然后再发出 QUIT 命令。 如果不发出 SET LOG OFF 命令,那么 QUIT 命令将失败。
  • 请确保分配足够大的日志文件来保存调试会话的所有日志输出,因为日志文件在变满后将被截断。 (在截断日志之前,不会发出警告消息。)
  • 对于 远程调试 方式,只能使用 SET LOG ONSET LOG OFF 命令。 SET LOG ON 命令显示说明其在当前位置停止的原因的消息。 SET LOG ON 命令不会将日志内容保存到永久位置。 当 SET LOG 的设置为 OFF时,不会显示与断点相关的消息。 例如,未显示消息 Program is stopped due to line/statement breakpoint at statement 232.

    如果输入 SET AUTOMONITOR ON LOG 命令,那么将忽略 SET LOG ONSET LOG OFF 命令。 将显示所有消息。

示例

  • 指定将命令和输出写入名为 mainprog的日志文件。
    SET LOG ON FILE mainprog;
    另一个使用数据集名称 thing的示例。
    SET LOG ON FILE userid.thing.log
  • 指示保留 500 行日志输出以供显示。
    SET LOG KEEP 500;

请参阅以下主题,以获取与本主题中讨论的材料相关的更多信息。