Mainframe Connector 參考資料

設定 Cloud Logging

Mainframe Connector 可將含有背景資訊的 JSON 格式記錄訊息傳送至 Cloud Logging。內容包括工作名稱、工作 ID、工作日期、步驟名稱,以及 z/OS 提供的其他變數。

這有助於您找出特定工作記錄檔並建立快訊。此外,在 Cloud Run、Google Kubernetes Engine 或 Compute Engine 上部署大型主機連接器時,Cloud Logging 代理程式會收集記錄檔,並顯示在「Logs Explorer」中。

如要設定 Mainframe Connector 以寫入 Cloud Logging,請在啟動工作的 JCL 中設定 LOG_PROJECTLOG_ID 環境變數。例如 LOG_PROJECT=mainframe-connector-projLOG_ID=my-mfc。記錄名稱 LOG_NAME 源自 LOG_PROJECTLOG_ID。在這個範例中,這個值為 projects/mainframe-connector-proj/logs/my-mfc

資源類型一律為「global」,因為記錄是使用者建立的記錄,而非雲端服務的記錄。啟動期間,Mainframe Connector 會顯示訊息,指出是否已設定 Cloud Logging。

啟用載入統計資料

負載統計資料功能會記錄您在 SQL 資料表中使用 Mainframe Connector 執行的每個指令。如要啟用負載統計資料功能,請使用下列指令建立資料表,並將旗標 --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 資料表名稱。

資料集名稱

您可以在 BQSH JCL 程序中使用下列資料集定義 (DD) 檔案。請確認 DD 檔案參照的所有 MVS 資料集都使用固定區塊 (FB) 記錄格式。

DD 名稱 說明
COPYBOOK 包含 COBOL 副本集的 MVS 資料集,該資料集是由 INFILE DD 參照。您可以使用 copybook DD,但有幾項限制。詳情請參閱「COPYBOOK DD 使用限制」。
INFILE 包含 COBOL 資料集的 MVS 資料集,該資料集會上傳至 Cloud Storage。
KEYFILE 包含 Google Cloud IAM 服務帳戶 JSON 金鑰檔案的 MVS 資料集。
OUTFILE 包含 COBOL 資料集的 MVS 資料集,可從 BigQuery 載入。
QUERY 包含 BigQuery 標準 SQL 查詢的 MVS 資料集。QUERY DD 是邏輯記錄大小 (LRECL) 為 80 的 FB 檔案。也就是說,檔案中的每筆記錄長度為 80 個位元組。
STDIN 用於提供殼層指令的串流輸入內容。