Referência do Mainframe Connector

Configurar o Cloud Logging

O conector de mainframe pode enviar mensagens de registro formatadas em JSON que contêm informações de contexto para o Cloud Logging. O contexto inclui nome, ID, data, nome da etapa e outras variáveis fornecidas pelo z/OS.

Isso ajuda a encontrar registros de jobs específicos e a criar alertas. Além disso, ao implantar o conector de mainframe no Cloud Run, no Google Kubernetes Engine ou no Compute Engine, os registros são coletados pelo agente do Cloud Logging e aparecem no Logs Explorer.

Para configurar o Mainframe Connector para gravar no Cloud Logging, defina as variáveis de ambiente LOG_PROJECT e LOG_ID no JCL que inicia o job. Por exemplo, LOG_PROJECT=mainframe-connector-proj e LOG_ID=my-mfc. O nome do registro LOG_NAME é derivado de LOG_PROJECT e LOG_ID. Neste exemplo, será projects/mainframe-connector-proj/logs/my-mfc.

O tipo de recurso é sempre global, porque o registro é criado pelo usuário, e não pelo serviço de nuvem. Durante a inicialização, o Mainframe Connector mostra uma mensagem indicando se o Cloud Logging está configurado.

Ativar as estatísticas de carga

O recurso de estatísticas de carga registra todos os comandos executados usando o Mainframe Connector em uma tabela SQL. Para ativar o recurso de estatísticas de carga, crie uma tabela usando o comando a seguir e adicione a flag --stats_table TABLE_NAME ao comando cp, em que TABLE_NAME é o nome da tabela 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)

Substitua:

  • PROJECT_NAME: o nome do projeto em que você quer executar o comando.
  • DATASET_NAME: o nome do arquivo do conjunto de dados.
  • TABLE_NAME: o nome da tabela SQL em que você quer registrar os detalhes.

Nomes dos conjuntos de dados

É possível usar os seguintes arquivos de definição de conjunto de dados (DD) no seu procedimento de JCL do BQSH. Verifique se todos os conjuntos de dados do MVS referenciados por um arquivo DD usam o formato de registro bloco fixo (FB).

Nome do DD Descrição
CADERNO DE CÓPIAS Um conjunto de dados MVS que contém um copybook COBOL para o conjunto de dados referenciado por um DD INFILE. É possível usar o DD de cópia com algumas restrições. Para mais informações, consulte Restrições de uso do COPYBOOK DD.
INFILE Um conjunto de dados MVS que contém um conjunto de dados COBOL para ser enviado ao Cloud Storage.
KEYFILE Um conjunto de dados do MVS que contém um arquivo-chave JSON da conta de serviço do IAM do Google Cloud.
OUTFILE Um conjunto de dados MVS que contém um conjunto de dados COBOL para ser carregado do BigQuery.
CONSULTA DD Um conjunto de dados MVS que contém uma consulta SQL padrão do BigQuery. O DD QUERY é um arquivo FB com um tamanho de registro lógico (LRECL) de 80. Isso significa que cada registro no arquivo tem 80 bytes.
STDIN Entrada de fluxo usada para fornecer comandos do shell.