Mostrar mensagens com a etiqueta z/os. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta z/os. Mostrar todas as mensagens

segunda-feira, 4 de outubro de 2010

SMP/E for z/OS Workshop : LIST & REPORT Commands

 

Bellacosa Mainframe apresenta SMP/E List and Report Commands

SMP/E for z/OS Workshop

ACCEPT Processing – LIST & REPORT Commands

Quando olhar o CSI é tão importante quanto instalar o código

Instalar SYSMOD qualquer um instala.
Agora… saber exatamente o que está instalado, onde, por quê e com qual dependência
👉 isso separa operador de System Programmer.

É aqui que entram os comandos LIST e REPORT.


LIST Command

Abrindo o CSI como quem abre o capô do sistema

O comando LIST é o bisturi do SMP/E.
Ele não interpreta, não deduz, não opina.
Ele mostra os fatos gravados no CSI.

📌 O LIST pode extrair informações de:

  • Global Zone

  • Target Zone

  • Distribution Zone

  • SMPPTS

  • SMPLOG

  • SMPSCDS

💡 Easter egg #1

Se você confia mais na memória do que no LIST,
o CSI vai te humilhar em algum momento.


Boundary: o detalhe que separa sucesso de confusão

Antes de usar LIST, você define o boundary:

  • Global Zone → acesso a SMPPTS

  • Zona com DDDEF do SMPLOG

  • Target Zone associada ao SMPSCDS

  • Ou tudo de uma vez com:

ALLZONES

⚠️ ALLZONES lista tudo que existe, não tudo que você quer ver.

💡 Easter egg #2

ALLZONES às 3 da manhã
é como dar SELECT * em produção.


O que dá pra listar no Global Zone

Com LIST você pode ver:

  • OPTIONS

  • UTILITIES

  • DDDEFs

  • FMIDSETs

  • ZONESETs

  • SYSMOD entries

  • MCS entries do SMPPTS

  • HOLDDATA (++HOLD)

HOLDDATA com lupa

Você pode filtrar por:

  • HOLDERROR

  • HOLDSYSTEM

  • HOLDUSER

E ainda combinar com SYSMOD específico.

📌 Se combinar filtros demais, o SMP/E só lista
entradas que satisfaçam todos.


Filtros avançados (onde mora o poder)

LIST aceita os mesmos refinamentos do APPLY/ACCEPT:

  • SOURCEID

  • EXSRCID

  • FORFMID

  • XZLMOD

  • XZLMODP

  • XREF

👉 Ideal para:

  • Debug de dependência

  • Auditoria

  • Pós-migração

  • Comparação entre ambientes

💡 Easter egg #3

SOURCEID bem usado
vale mais que planilha paralela.


LIST em Target e Distribution Zones

Além do básico, você pode listar:

  • TARGETZONE definition

  • DLIBZONE definition

  • DDDEFs

  • ELEMENT entries:

    • MOD

    • MAC

    • SRC

    • JAR

    • HFS

  • LMOD entries

SYSMOD entries com status

Você pode filtrar por:

  • ERROR

  • SUP (superseded)

  • NOSUP

  • RESTORE

  • NOAPPLY

  • NOACCEPT

  • BYPASS

  • DELETE

📌 SUP e NOSUP são mutuamente exclusivos.

💡 Easter egg #4

SYSMOD em ERROR não é bug
é aviso ignorado.


LIST LOG e BACKUP

  • LIST LOG → conteúdo do SMPLOG

    • Total ou por intervalo de data

  • LIST BACKUP → conteúdo do SMPSCDS

    • Tudo ou por SYSMOD específico

👉 LIST é o comando ideal para auditoria forense do SMP/E.


LIST vs DIALOG QUERY

LIST = dados brutos
QUERY = visão amigável

Quando a coisa aperta…
LIST sempre vence.


REPORT Command

Quando você precisa que o SMP/E pense por você

Se o LIST mostra,
o REPORT analisa.

Ele cruza zonas, dependências, FMIDs, SOURCEIDs e HOLDs
e ainda gera comandos prontos.

📌 REPORT é o SMP/E dizendo:

“relaxa, eu faço a correlação.”


REPORT CROSSZONE

Dependência entre produtos e zonas

Usado para responder:

“Instalei isso aqui… quebrou quem?”

Requisitos:

  • ZONESET obrigatório

  • Pode limitar por:

    • FMID

    • ZONE

O relatório mostra:

  • Dependências cruzadas

  • SYSMODs faltantes

  • Se já foram RECEIVED

  • Quem causou a dependência

👉 E ainda gera comandos SMP/E no SMPPUNCH

NOPUNCH

se você não quiser os comandos.

💡 Easter egg #5

SMPPUNCH esquecido
vira APPLY acidental.


REPORT ERRSYSMODS

Quando o passado volta pra cobrar

Identifica SYSMODs que:

  • Já foram instalados

  • Mas agora estão em ERROR HOLD

Pode analisar:

  • Global Zone

  • Target Zone

  • Distribution Zone

Filtros:

  • Data inicial / final

  • FMID

O relatório mostra:

  • SYSMOD afetado

  • Reason ID

  • Quem resolve

  • ++HOLD completo

💡 Easter egg #6

ERROR HOLD não some
só muda de lugar.


REPORT SOURCEID

Quem veio de onde?

Descobre:

  • Quais SOURCEIDs existem

  • Quais SYSMODs usam cada um

Com ou sem filtro por SYSMOD.

👉 Excelente para:

  • FIXCAT

  • Hardware novo

  • Coexistência

  • Migração de release


REPORT SYSMODS

Comparação entre zonas

Usado para:

  • Validar ambientes

  • Comparar releases

  • Checar desvio de serviço

Parâmetros:

  • INZONE

  • COMPAREDTO

Resultado:

  • O que existe em uma zona

  • E não existe na outra

  • Com comandos prontos para corrigir

💡 Easter egg #7

Ambiente “igual” sem REPORT
é fé, não evidência.


REPORT MISSINGFIX (FIXCAT)

Adeus PSP Bucket manual

Disponível a partir do SMP/E 3.6.

Identifica:

  • APARs faltantes

  • Por categoria FIXCAT

  • Para hardware, software e coexistência

Mostra:

  • FIXCAT

  • APAR

  • PTF corretivo

  • Dependências

  • Problemas de HOLD

📌 Dois blocos:
1️⃣ Missing fixes
2️⃣ Resolving SYSMODs em erro

💡 Easter egg #8

FIXCAT bem usado
economiza fim de semana inteiro.


Bellacosa Summary – em poucas linhas

LIST mostra o que existe
REPORT explica o impacto
SMPPUNCH sugere a correção
Você decide se confia


Checklist Bellacosa – LIST & REPORT

✔ LIST antes de APPLY
✔ REPORT antes de migrar
✔ FIXCAT sempre atualizado
✔ SOURCEID bem definido
✔ SMPPUNCH revisado
✔ LOG nunca ignorado


Conclusão

Quem domina LIST e REPORT:

  • Não instala no escuro

  • Não depende de planilha

  • Não descobre erro em produção

  • Não briga com auditor

💡 Easter egg final

O SMP/E sempre soube a verdade.
Você só precisava perguntar direito.

sábado, 4 de setembro de 2010

SMP/E for z/OS Workshop : ACCEPT Processing

 

Bellacosa Mainframe SMP/E accept processing

SMP/E for z/OS Workshop

ACCEPT Processing

O momento em que o código vira história oficial

Se o APPLY é onde o código começa a rodar,
o ACCEPT é onde ele ganha certidão de nascimento.

Depois do ACCEPT, não tem mais desculpa:

“isso aqui já faz parte do produto”


O papel real do ACCEPT no SMP/E

O ACCEPT command é responsável por:

  • Instalar os elementos dos SYSMODs nas Distribution Libraries (DLIBs)

  • Atualizar a Distribution Zone (DZONE)

  • Definir o nível oficial e permanente do software

📌 Em termos simples:

ZonaPapel
TargetCódigo que roda
DistributionCódigo que define o produto

👉 Nunca se executa código direto das DLIBs
(Se você já viu alguém tentar… você sabe o nível do problema 😬)


Target vs Distribution – a verdade nua e crua

🔹 Target Libraries

  • Load modules executáveis

  • Macros e source (para assembly)

  • Ambiente vivo

  • Pode mudar

🔹 Distribution Libraries

  • Elementos “puros”

  • Backup oficial

  • Base para RESTORE

  • Não deveriam mudar toda hora

💡 Easter egg #1

Quem aceita PTF direto em DLIB de produção sem clone
não gosta de dormir tranquilo.


ACCEPT é parecido com APPLY?

Sim. E isso é proposital.

A IBM fez o ACCEPT ser quase um APPLY com outro destino:

  • Mesmos critérios de seleção

  • Mesmas opções:

    • CHECK

    • BYPASS

    • REDO

    • COMPRESS

  • Mesma lógica de dependência

  • Mesma validação de HOLDDATA

A diferença é onde o SMP/E escreve.


Pré-requisitos para um ACCEPT saudável

Antes de aceitar qualquer coisa, o SMP/E verifica:

✅ SYSMOD foi aplicado?

Por padrão:

  • SIM → pode aceitar

  • NÃO → rejeitado

Se quiser aceitar sem aplicar (caso raro):

BYPASS(APPLYCHECK)

💡 Easter egg #2

BYPASS(APPLYCHECK) é como sudo root
só use se você realmente souber o que está fazendo.


✅ Não existem HOLDs pendentes?

O ACCEPT verifica no Global Zone:

  • SYSTEM HOLD

  • USER HOLD

  • ERROR HOLD

Se existir HOLD:

  • ACCEPT para

  • Você resolve primeiro


Como os HOLDs são resolvidos no ACCEPT

🟡 SYSTEM / USER HOLD

  • Execute a ação descrita no REASON

  • Depois use:

BYPASS(HOLDSYSTEM)

🔴 ERROR HOLD

  • Resolvido automaticamente

  • Quando o APAR/PTF corretivo é instalado

  • Ou um superseding PTF é aceito

📌 Boa prática:

Nunca aceitar PTF com ERROR HOLD ativo.

💡 Easter egg #3

Quem ignora ERROR HOLD
aprende RESTORE na prática.


Seleção de elementos no ACCEPT

(a parte que poucos entendem)

O ACCEPT não copia elemento “no grito”.
Ele garante que nenhum nível seja regredido.

Ele compara:

  • FMID

  • RMID

  • UMID

  • PRE / SUB no ++VER

Regras básicas:

  • Elementos substitutos devem PRE ou SUB

  • UPD (SRC, MAC, ZAP) devem respeitar UMID

  • Se não respeitar:

    • ACCEPT pode até continuar

    • Mas emite warning

    • E você acabou de assumir o risco

💡 Easter egg #4

Warning ignorado hoje
vira incidente amanhã.


O que o ACCEPT faz de verdade (por dentro)

Quando tudo está validado, o SMP/E:

1️⃣ Busca os elementos em:

  • SMPPTS

  • SMPTLIBs

  • LKLIB / TXLIB

2️⃣ Invoca utilitários:

  • IEBCOPY

  • IEBUPDTE

  • LINKEDIT (quando aplicável)

3️⃣ Instala nas DLIBs corretas
(via DISTLIB=)

4️⃣ Atualiza a Distribution Zone:

  • Cria entradas de SYSMOD

  • Atualiza FMID / RMID

  • Remove UMIDs antigos

  • Registra ZAPs e UPDs


Limpeza pós-ACCEPT (o “lixo controlado”)

Por padrão, o ACCEPT:

  • Remove SYSMOD entry do Global Zone

  • Apaga MCS do SMPPTS

  • Deleta SMPTLIBs associados

  • Remove backups (SMPCDS)

Tudo isso acontece porque:

O SYSMOD agora virou baseline

⚠️ Se quiser manter tudo:

NOPURGE

💡 Easter egg #5

Quem usa NOPURGE sem motivo
costuma ficar sem espaço em disco.


Relatórios do ACCEPT

Depois do ACCEPT, sempre revise:

  • Accept Summary Report

  • Element Change Report

  • Utility Output

  • Deleted SYSMOD Report (quando aplicável)

📌 Se você não leu o report:

O ACCEPT não aconteceu de verdade.


ACCEPT em uma frase (Bellacosa style)

RECEIVE traz o pacote
APPLY faz o sistema rodar
ACCEPT transforma mudança em padrão
RESTORE ensina respeito


Checklist Bellacosa – ACCEPT seguro

✔ ACCEPT sempre em DLIB clone
✔ BACKUP antes de produção
✔ Nenhum HOLD pendente
✔ APPLY feito (ou BYPASS consciente)
✔ Relatórios lidos
✔ Espaço em disco conferido


Conclusão

O ACCEPT é o último passo da cadeia SMP/E.
Depois dele:

  • O código vira referência

  • O produto muda de nível

  • O RESTORE passa a depender disso

Quem domina ACCEPT:

  • Entende gestão de software

  • Não só instalação

💡 Easter egg final

System programmer bom instala.
System programmer experiente aceita.
System programmer sábio sabe quando não aceitar.