Translate

Mostrar mensagens com a etiqueta operação. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta operação. Mostrar todas as mensagens

sexta-feira, 14 de novembro de 2014

💣🔥 MAINFRAME QUICK TIPS — O OPERADOR LENTO NÃO ABENDA… ELE ATRASA O UNIVERSO 🔥💣

 

Bellacosa Mainframe uma rapida olhada em comandos TSO ISPF

💣🔥 MAINFRAME QUICK TIPS — O OPERADOR LENTO NÃO ABENDA… ELE ATRASA O UNIVERSO 🔥💣

Você pode ter 30 anos de COBOL…

Pode dominar CICS, DB2, tuning de JCL…

Mas se você ainda navega no ISPF como um turista perdido

👉 você está desperdiçando o ativo mais caro do mainframe: tempo de CPU humano.


🧠 A VERDADE QUE NINGUÉM TE CONTA

No mundo do z/OS:

  • milissegundos de máquina são otimizados
  • mas minutos de operador… são ignorados

👉 E é aí que mora o gargalo invisível.


⌨️ ISPF — O TERMINAL É SUA ESPADA

Esses atalhos parecem simples… mas são atalhos cognitivos:

🔹 =3.4 — Dataset List

Não é só navegação.

👉 É acesso direto ao filesystem lógico do mainframe

Profissionais experientes:

  • não “procuram”
  • saltam direto no alvo

🔹 =2 — Edit

Aqui nasce o caos… ou a precisão.

  • editar membro rápido = produtividade
  • editar sem padrão = desastre em produção

🔹 =6 — Command Shell

Isso aqui é o “root shell” do operador.

👉 Quem domina isso, controla o ambiente.


🔹 PF KEYS — A ARMA SECRETA

  • F3 → voltar sem quebrar contexto
  • F7/F8 → navegar sem pensar
  • F12 → cancelar antes do erro virar incidente

💡 Operador bom não usa mouse.
💡 Operador excelente não “pensa” nos comandos.


🛠️ TSO — NÃO É COMANDO… É EXTENSÃO DO CÉREBRO

🔹 LISTDS

Mais que listar:

👉 É inspeção forense de dataset

Use para:

  • entender alocação
  • verificar organização
  • evitar erro antes de acontecer

🔹 ALLOC

Aqui você cria infraestrutura.

  • espaço mal definido → performance ruim
  • DCB errado → job falha

👉 Isso é design em miniatura.


🔹 DELETE

Simples… e perigoso.

👉 No mainframe:

deletar errado não dá “lixeira”
dá incidente


🔹 HELP

Subestimado.

👉 É documentação viva dentro do sistema.


📑 JCL — O DNA DA EXECUÇÃO

Se COBOL é o cérebro…

👉 JCL é o sistema nervoso.


🔹 JOB

Define identidade

  • prioridade
  • classe
  • accounting

🔹 EXEC

Define ação

  • qual programa
  • qual etapa

🔹 DD

Define realidade

  • onde está o dado
  • como será acessado

👉 Erro em DD = erro estrutural


⚠️ BOAS PRÁTICAS — ONDE NASCE A ESTABILIDADE

🔹 RC (RETURN CODE)

Ignorar RC é como ignorar check engine aceso.

  • RC=0 → sucesso
  • RC>0 → alerta
  • RC alto → desastre iminente

🔹 JESMSGLG — O LOG QUE CONTA A VERDADE

👉 Não confie no “rodou”.

Leia:

  • mensagens
  • warnings
  • alocação

🔹 PADRONIZAÇÃO

Dataset bem nomeado:

  • facilita automação
  • reduz erro humano
  • acelera troubleshooting

🔹 DOCUMENTAÇÃO

Mainframe não perdoa amnésia organizacional.

👉 Conhecimento não documentado = risco operacional


🧪 EXEMPLO REAL (CENÁRIO DE GUERRA)

Dois operadores:

🐢 Operador A

  • navega clicando
  • procura dataset
  • lê tudo manualmente

Tempo: 15 minutos


⚡ Operador B

  • usa =3.4 direto
  • filtra com padrão
  • usa PF keys automaticamente

Tempo: 2 minutos


👉 Multiplique isso por 50 operações/dia.

Agora você entendeu o impacto?


🧬 EASTER EGG (NÍVEL HARDCORE)

Esses atalhos foram pensados numa época sem mouse.

👉 Resultado:

  • interfaces ultra eficientes
  • fluxo contínuo
  • zero distração

Hoje chamam isso de:

  • UX otimizada
  • produtividade extrema

👉 O mainframe já fazia isso nos anos 80.


🚀 COMO EVOLUIR (CAMINHO BELLACOSA)

🔹 Fase 1 — Automação mental

  • memorize atalhos
  • elimine hesitação

🔹 Fase 2 — Padrão operacional

  • crie rotinas
  • reduza variabilidade

🔹 Fase 3 — Visão sistêmica

  • entenda impacto de cada ação
  • pense em cadeia

💣 FRASE FINAL

“No mainframe, você não é pago para digitar comandos…
você é pago para não desperdiçar ciclos — nem da máquina, nem da sua mente.”

 

domingo, 16 de fevereiro de 2014

💣🔥 GUIA PRÁTICO — DO TERMINAL À PRODUÇÃO: O OPERADOR QUE DOMINA ISPF, TSO, JCL E JES2 NÃO PEDE AJUDA… ELE RESOLVE 🔥💣

Bellacosa Mainframe em um laboratorio pratico TSO ISPF JCL e JES2 

💣🔥 GUIA PRÁTICO — DO TERMINAL À PRODUÇÃO: O OPERADOR QUE DOMINA ISPF, TSO, JCL E JES2 NÃO PEDE AJUDA… ELE RESOLVE 🔥💣

Se você quer sair do “sei mexer” e entrar no nível “sei operar sob pressão”, este é o seu campo de treinamento.

Aqui não tem teoria solta.

👉 Aqui é lab, erro real, diagnóstico e correção — estilo produção.


🧭 VISÃO DO TREINAMENTO

Você vai simular o ciclo completo:

  1. Navegação e produtividade no ISPF
  2. Manipulação de datasets via TSO
  3. Construção e execução de JCL
  4. Debugging real no JES2

Tudo rodando no ecossistema do z/OS com spool via JES2.


🔬 LAB 1 — ISPF NA VELOCIDADE DE PRODUÇÃO

🎯 Objetivo

Eliminar lentidão operacional.

🧪 Exercício

  1. Acesse:
=3.4
  1. Liste datasets com filtro:
SEU.USERID.*
  1. Use comandos de linha:
  • V → visualizar
  • E → editar
  • B → browse

⚡ Desafio Bellacosa

Sem usar mouse mental:

  • encontre um dataset específico em < 10 segundos
  • navegue entre 3 membros sem perder contexto

💡 Insight

Você não está navegando.

👉 Você está executando operações cognitivas.


🔬 LAB 2 — TSO: CONTROLE DE DADOS

🎯 Objetivo

Dominar datasets sem depender de tela.

🧪 Exercício

🔹 Criar dataset

ALLOC DSN('SEU.USERID.TESTE') NEW SPACE(1,1) TRACKS DIR(5) RECFM(F,B) LRECL(80)

🔹 Listar propriedades

LISTDS 'SEU.USERID.TESTE' ALL

🔹 Deletar

DELETE 'SEU.USERID.TESTE'

⚠️ Erro proposital

Tente alocar sem parâmetros corretos.

👉 Veja o erro
👉 Use HELP ALLOC
👉 Corrija


💡 Insight

TSO não é comando.

👉 É infraestrutura sob demanda


🔬 LAB 3 — JCL: O JOB QUE ORQUESTRA TUDO

🎯 Objetivo

Executar um job funcional.

🧪 Exercício

Crie um membro:

//BELLALAB JOB (ACCT),'TESTE',CLASS=A,MSGCLASS=X
//STEP1 EXEC PGM=IEFBR14
//DD1 DD DSN=SEU.USERID.ARQ.TESTE,
// DISP=(NEW,CATLG,DELETE),
// SPACE=(TRK,(1,1)),
// DCB=(RECFM=FB,LRECL=80)

▶️ Submeter

SUBMIT

🔍 Verificar saída no JES2

  • SDSF → ST
  • veja status
  • abra output

💡 Insight

IEFBR14 não faz nada…

👉 mas prova que seu JCL faz tudo certo


🔬 LAB 4 — DEBUGGING REAL (O LAB MAIS IMPORTANTE)

🎯 Objetivo

Aprender a errar… e corrigir rápido.


🧪 Cenário com erro

//STEP1 EXEC PGM=IEFBR14
//DD1 DD DSN=SEU.USERID.ARQ.TESTE,
// DISP=(NEW,CATLG),
// SPACE=(TRK,(1,1))

👉 Falta parâmetro no DISP.


🔥 Tarefa

  1. Submeta o job
  2. Vá no JES2
  3. Abra:
    • JESMSGLG
    • JESJCL
    • JESYSMSG

🧠 Diagnóstico esperado

  • mensagem de erro de alocação
  • falha no catálogo
  • possível RC ≠ 0

🛠️ Correção

Corrigir para:

DISP=(NEW,CATLG,DELETE)

💡 Insight crítico

Quem lê log… domina o sistema
Quem ignora log… vira incidente


🔬 LAB 5 — ANÁLISE PROFISSIONAL DE JOB

🎯 Objetivo

Interpretar execução como operador sênior.


🧪 Checklist

Após execução:

  • RC = 0?
  • dataset foi criado?
  • houve warning?
  • alocação correta?

🧠 Leitura obrigatória

No spool:

  • JESMSGLG → sistema
  • JESJCL → o que foi interpretado
  • JESYSMSG → execução real

💣 Desafio Bellacosa

Pegue um job com erro e responda:

  • Onde falhou?
  • Por quê?
  • Qual impacto?
  • Como evitar?

🧬 LAB EXTRA — SIMULANDO VIDA REAL

🎯 Cenário

Você recebe:

“Job falhou em produção. Corrigir urgente.”


🔥 Procedimento

  1. Identificar job no JES2
  2. Analisar RC
  3. Ler logs
  4. Identificar dataset envolvido
  5. Corrigir JCL ou dado
  6. Reprocessar

💡 Isso é ouro:

👉 velocidade + precisão = operador de elite


🚀 EVOLUÇÃO (PRÓXIMO NÍVEL)

Depois disso, você deve avançar para:

  • Integração com CICS
  • Acesso a DB2
  • Automação com REXX
  • Monitoramento com SDSF avançado

⚠️ ERROS QUE VOCÊ NÃO PODE MAIS COMETER

  • rodar job sem ler output
  • ignorar RC
  • editar dataset em produção sem critério
  • confiar que “deu certo”

💣 FRASE FINAL

“No mainframe, erro não é exceção…
erro é ferramenta de aprendizado — desde que você saiba ler o sistema.”

quarta-feira, 3 de novembro de 2010

☕🔥 REXX Hardcore no z/OS — automação, controle e poder operacional

 

Bellacosa Mainframe apresenta o REXX

☕🔥 REXX Hardcore no z/OS — automação, controle e poder operacional  

Se você já salvou produção com um exec improvisado, já rasgou SDSF via ADDRESS, ou já ouviu

“isso dá pra automatizar em REXX, né?”
então puxa a cadeira.
Aqui é REXX técnico, sem verniz didático e com cheiro de madrugada.


🕰️ Histórico & Origem — por que o REXX virou arma de produção

O REXX (Restructured Extended Executor) nasce na IBM nos anos 80 com uma missão clara:

  • Substituir JCL “verboso”

  • Padronizar scripts

  • Criar uma linguagem legível, extensível e integrada ao sistema

Ele não foi feito para ser “bonito”.
Foi feito para controlar ambiente.

Verdade histórica:

REXX não é linguagem de apoio — é linguagem de governo operacional.


🧠 Conceito de Ambiente de Processamento

REXX não executa no vácuo.
Ele sempre roda dentro de um ambiente:

  • TSO/E

  • Batch

  • SDSF

  • ISPF

  • CICS (indiretamente)

  • Programas externos

Cada ambiente define:

  • Comandos válidos

  • RC interpretado

  • Recursos disponíveis

  • Permissões RACF

🔥 Easter egg:
O mesmo EXEC pode funcionar em TSO e falhar em Batch sem mudar uma linha.


🧩 Fundamentos da Linguagem — simples na superfície, profunda no núcleo

Sintaxe & Elementos

  • Tipagem dinâmica

  • Strings como cidadão de primeira classe

  • Sem declaração obrigatória

  • Case-insensitive (armadilha clássica)

📌 Exemplo:

parse upper arg parm1 parm2 if parm1 = '' then exit 8

Comentário ácido:
REXX perdoa erro demais — e isso cobra seu preço em produção.


🏗️ Estrutura de um Programa REXX

Todo EXEC sério tem:

  1. Identificação

  2. Validação de ambiente

  3. Tratamento de RC

  4. Controle de erro

  5. Cleanup

📌 Exemplo base:

/* REXX */ signal on error signal on failure signal on syntax address tso "ALLOC FI(IN) DA('DATASET') SHR" ... exit 0

🔥 Veterano sabe:
EXEC sem SIGNAL ON é convite ao caos.


🧮 Estrutura de Dados — tabelas na memória

REXX não tem array clássico.
Tem stem variables.

tab.1 = 'A' tab.2 = 'B' tab.0 = 2

Curiosidade:
Stem mal controlado vira memory leak conceitual.


📂 Acesso a Arquivos & Geração de Relatórios

  • ALLOC / FREE

  • EXECIO DISKR / DISKW

  • Geração de relatórios spoolados

  • Integração com SORT

📌 Exemplo:

"EXECIO * DISKR IN (STEM L.)" do i=1 to L.0 say L.i end

🔥 Easter egg:
EXECIO ignora erro… até você checar o RC.


🔃 Classificação & Manipulação de Dados

  • SORT via IDCAMS

  • SORT via ICETOOL

  • Manipulação em memória (lento)

  • Pipeline híbrido REXX + SORT

Regra de produção:

Se precisa ordenar muito, não é REXX — é SORT.


🗂️ Acesso a Diretório de PDS

REXX + ISPF services:

  • LMDINIT

  • LMMLIST

  • LMCLOSE

📌 Exemplo:

address ispexec "LMINIT DATAID(DID) DATASET('MY.PDS')" "LMMLIST DATAID(DID) OPTION(LIST)"

🔥 Veterano:
ISPF services dão poder… e risco.


🧑‍💻 Interatividade com Usuário (TSO)

  • Pseudo-conversational

  • Command-level

  • SAY / PULL

  • Mensagens controladas

Fofoquice:
Interface feia, mas resolve crise em minutos.


🧪 Modos de Execução REXX

🟢 REXX Linha de Comando (Online)

  • Interativo

  • Debug rápido

  • Dependente de perfil

🟡 REXX Batch Script (Interpretado)

  • Executa via IKJEFT01

  • Dependente de ambiente

  • Mais flexível

🔴 REXX Batch Compilado

  • Performance superior

  • RC previsível

  • Menos tolerante a erro

  • Exige processo de build

🔥 Script vs Compilado:

Interpretado é agilidade.
Compilado é confiabilidade.


🔐 REXX + RACF

REXX não ignora segurança:

  • Herda permissões do usuário

  • Pode consultar via RACROUTE (indireto)

  • Controla acesso via classes

Verdade dura:
EXEC com SPECIAL é bomba com pavio curto.


🗄️ REXX + DB2

  • DSNREXX

  • SQL dinâmico

  • RC + SQLCODE + SQLSTATE

  • Automação de consultas e relatórios

📌 Exemplo:

ADDRESS DSNREXX "EXECSQL SELECT COUNT(*) INTO :CNT FROM SYSIBM.SYSTABLES"

🔥 Easter egg:
SQLCODE ignorado vira incidente invisível.


🔀 ADDRESS — o coração da integração

ADDRESS muda o destino dos comandos:

  • TSO

  • ISPEXEC

  • SDSF

  • CONSOLE

  • DSNREXX

☕🔥 Regra sagrada:

Quem domina ADDRESS domina o sistema.


🔢 Return Code (RC) — o idioma da produção

  • RC ≠ erro sempre

  • RC precisa ser interpretado

  • Padronização é vital

if rc > 4 then exit rc

🔥 Veterano:
RC não tratado é mentira operacional.


📘 Programa do Curso — visão hardcore

Estrutura Geral / Labs

  • Ambiente restritivo

  • Casos reais

  • Incidentes simulados

Instruções REXX

  • IF, DO, SELECT

  • SIGNAL, EXIT

  • PARSE

Funções Internas / Sub-rotinas

  • Modularização

  • Reuso

  • Controle de escopo

Comandos REXX

  • SAY, PULL, TRACE

  • QUEUE / PULL

  • EXECIO

Funções TSO / CONSOLE

  • WTO

  • MODIFY

  • DUMP

  • SDSF

INTERPRET (🔥 perigoso)

  • Execução dinâmica

  • Flexibilidade extrema

  • Risco máximo

Comentário ácido:

INTERPRET é poder absoluto — use sóbrio.


🥚 Easter Eggs & Fofoquices REXX

  • Todo ambiente tem um EXEC “salvador”

  • Sempre existe um REXX sem comentários rodando há anos

  • O melhor REXX é o que não precisa ser explicado

  • Debug começa com TRACE ?R


☕🔥 Conclusão — Manifesto El Jefe REXX

REXX não é:

  • Script simples

  • Linguagem de iniciante

  • Alternativa ao COBOL

REXX é:

  • Cola do z/OS

  • Automação estratégica

  • Ferramenta de sobrevivência em produção

☕🔥 Quem domina REXX,
não programa apenas —
orquestra o mainframe.