Mainframe Connector 参考文档

设置 Cloud Logging

大型主机连接器可以发送 JSON 格式的日志消息,其中包含 上下文信息传递给 Cloud Logging。上下文包括作业名称、作业 ID、作业日期、步骤名称和 z/OS 提供的其他变量。

这有助于您查找特定作业的日志并创建提醒。此外, 在 Cloud Run 上部署大型主机连接器时 Google Kubernetes Engine (Compute Engine)上收集日志 Cloud Logging 代理,它们会显示在日志浏览器中。

要将大型主机连接器配置为向 Cloud Logging 写入数据,请将 LOG_PROJECTLOG_ID 环境变量 用于启动作业的 JCL。例如:LOG_PROJECT=mainframe-connector-projLOG_ID=my-mfc。日志名称 LOG_NAME 派生自 LOG_PROJECTLOG_ID。在本示例中,它将 为 projects/mainframe-connector-proj/logs/my-mfc

资源类型始终为全球,因为日志是用户创建的,而不是来自云服务的日志。在启动期间,Mainframe Connector 会显示一条消息,指示是否已配置 Cloud Logging。

启用加载统计信息

加载统计信息功能会记录您使用 SQL 表中的大型主机连接器。如需启用加载统计信息功能,请使用以下命令创建表,并将标志 --stats_table TABLE_NAME 添加到 cp 命令中,其中 TABLE_NAME 是 SQL 表的名称。

CREATE TABLE
  `[PROJECT_ID].[DATASET_NAME].[TABLE_NAME]` (
    timestamp TIMESTAMP,
    job_id STRING,
    job_name STRING,
    job_date DATE,
    job_time TIME,
    job_step_name STRING,
    job_type STRING,
    source STRING,
    destination STRING,
    job_json STRING,
    rows_read INT64,
    rows_written INT64,
    rows_affected INT64,
    rows_inserted INT64,
    rows_deleted INT64,
    rows_updated INT64,
    rows_unmodified INT64,
    rows_before_merge INT64,
    rows_loaded INT64,
    bq_job_id STRING,
    bq_job_project STRING,
    bq_job_location STRING,
    statement_type STRING,
    query STRING,
    execution_ms INT64,
    queued_ms INT64,
    bytes_processed INT64,
    slot_ms INT64,
    slot_utilization_rate FLOAT64,
    slot_ms_to_total_bytes_ratio FLOAT64,
    shuffle_bytes FLOAT64,
    shuffle_bytes_to_total_bytes_ratio FLOAT64,
    shuffle_spill_bytes FLOAT64,
    shuffle_spill_bytes_to_shuffle_bytes_ratio FLOAT64,
    shuffle_spill_bytes_to_total_bytes_ratio FLOAT64,
    shuffle_spill_gb FLOAT64,
    bq_stage_count INT64,
    bq_step_count INT64,
    bq_sub_step_count INT64,
    bq_stage_summary STRING)
PARTITION BY job_date
CLUSTER BY job_name, job_id, job_step_name
OPTIONS (
  partition_expiration_days=1000,
  description="Log table for mainframe jobs",
  require_partition_filter=true)

替换以下内容:

  • PROJECT_NAME:您在其中创建项目的项目的名称 您希望执行该命令时
  • DATASET_NAME:数据集文件的名称。
  • TABLE_NAME:要在其中创建 SQL 表的 SQL 表的名称 来记录详细信息

数据集名称

您可以在 BQSH JCL 中使用以下数据集定义 (DD) 文件 过程。确保所有 MVS 数据集 DD 文件引用的是“固定块 (FB)”记录格式。

DD 名称 说明
文案 MVS 数据集,其中包含 所引用数据集的 COBOL 文案 INFILE DD。您可以使用副本簿 DD,但存在一些限制。有关 相关信息,请参阅 COPYBOOK DD 使用限制
INFILE 包含要上传到 Cloud Storage 的 COBOL 数据集的 MVS 数据集。
KEYFILE 包含 Google Cloud IAM 服务账号 JSON 的 MVS 数据集 密钥文件。
输出文件 一个 MVS 数据集,其中包含要从 BigQuery 加载的 COBOL 数据集。
查询 DD 包含 BigQuery 标准 SQL 查询的 MVS 数据集。通过 “QUERY DD”是一个 FB 文件,其逻辑记录大小 (LRECL) 为 80。这意味着 文件中每条记录的长度为 80 个字节。
STDIN 用于提供 shell 命令的流输入。