Translate

Mostrar mensagens com a etiqueta análise de incidentes. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta análise de incidentes. Mostrar todas as mensagens

quinta-feira, 28 de maio de 2026

☕🔥💣 CHECKLIST DEFINITIVO DE RCA PARA O SYSprog PADAWAN

Bellacosa Mainframe apresenta um checklist de RCA para sysprog junior


☕🔥💣 CHECKLIST DEFINITIVO DE RCA PARA O SYSprog PADAWAN

Como Evoluir de Apagador de Incêndios para Caçador de Causas Raiz

A maioria dos Sysprogs juniores aprende primeiro a resolver incidentes.

Poucos aprendem a impedir que eles aconteçam novamente.

O objetivo deste checklist é desenvolver a mentalidade de investigação que transforma um operador técnico em um verdadeiro engenheiro de confiabilidade.


🔍 NÍVEL 1 — FUNDAMENTOS DO INVESTIGADOR

Conhecer a arquitetura do ambiente

☐ Entender o fluxo completo da aplicação

☐ Conhecer as LPARs existentes

☐ Entender Sysplex

☐ Conhecer JES2/JES3

☐ Entender CICS

☐ Entender DB2

☐ Entender MQ

☐ Conhecer Storage Management

☐ Entender WLM

☐ Conhecer SDSF profundamente

Objetivo

Parar de enxergar componentes isolados e começar a enxergar o ecossistema.


📋 NÍVEL 2 — COLETA DE EVIDÊNCIAS

Antes de agir:

☐ Registrar horário exato do incidente

☐ Identificar quem reportou

☐ Verificar impacto

☐ Capturar mensagens de erro

☐ Salvar logs

☐ Salvar SYSLOG

☐ Salvar JESMSGLG

☐ Salvar JESJCL

☐ Salvar JESYSMSG

☐ Registrar alterações recentes

☐ Verificar deploys recentes

Regra de ouro

Nunca altere o ambiente antes de coletar evidências.


🔥 NÍVEL 3 — ANÁLISE JES2

☐ Verificar initiators

☐ Verificar classes

☐ Verificar backlog

☐ Verificar spool

☐ Verificar HOLDs

☐ Verificar jobs looping

☐ Verificar jobs aguardando recursos

☐ Verificar ENQ contention

☐ Verificar mensagens $HASP

Pergunta obrigatória

O problema começou no JES2 ou chegou até ele?


💾 NÍVEL 4 — STORAGE E MEMÓRIA

☐ Verificar CSA

☐ Verificar ECSA

☐ Verificar SQA

☐ Verificar ESQA

☐ Verificar Private Area

☐ Procurar storage leaks

☐ Analisar crescimento anormal

☐ Verificar mensagens IEA e IEF

☐ Consultar RMF

Atenção

Muitos "problemas de sistema" são apenas vazamentos de memória.


⚡ NÍVEL 5 — PERFORMANCE

☐ Verificar CPU

☐ Verificar I/O

☐ Verificar Paging

☐ Verificar DASD

☐ Verificar Coupling Facility

☐ Verificar WLM

☐ Verificar gargalos

☐ Comparar com baseline

☐ Analisar tendências

Objetivo

Entender se a degradação é sintoma ou causa.


🖥️ NÍVEL 6 — RCA EM CICS

☐ Verificar transações lentas

☐ Verificar tasks pendentes

☐ Verificar Short On Storage

☐ Verificar TD Queues

☐ Verificar TS Queues

☐ Verificar DB2 Attach

☐ Verificar MQ Attach

☐ Verificar abends

☐ Verificar dumps

☐ Analisar traces

Nunca conclua

"CICS está lento"

sem descobrir:

"POR QUE está lento?"


🗄️ NÍVEL 7 — RCA EM DB2

☐ Verificar deadlocks

☐ Verificar lock escalation

☐ Verificar SQLCODEs

☐ Verificar buffer pools

☐ Verificar índices

☐ Procurar full table scan

☐ Verificar RUNSTATS

☐ Verificar REORG pendente

☐ Verificar crescimento de tabelas

Regra

Muitos problemas de CICS são, na verdade, problemas de DB2.


📬 NÍVEL 8 — RCA EM MQ

☐ Verificar Queue Depth

☐ Verificar canais

☐ Verificar backlog

☐ Verificar consumidores

☐ Verificar produtores

☐ Verificar DLQ

☐ Verificar mensagens presas

☐ Verificar timeouts

Lembre-se

Fila cheia normalmente é consequência.

Raramente é a causa raiz.


📊 NÍVEL 9 — OBSERVABILIDADE

☐ Utilizar OMEGAMON

☐ Utilizar RMF

☐ Utilizar SMF

☐ Utilizar NetView

☐ Utilizar Sysview

☐ Criar dashboards

☐ Definir baseline

☐ Identificar anomalias

☐ Correlacionar eventos

Meta

Parar de reagir.

Começar a prever.


🔎 NÍVEL 10 — TÉCNICAS DE INVESTIGAÇÃO

Five Whys

☐ Aplicar os 5 Porquês


Timeline Analysis

☐ Construir linha do tempo


Event Correlation

☐ Correlacionar eventos


Impact Analysis

☐ Medir impacto real


Trend Analysis

☐ Procurar recorrência


🤖 NÍVEL 11 — AUTOMAÇÃO E PREVENÇÃO

☐ Automatizar alertas

☐ Automatizar coleta de evidências

☐ Automatizar correções simples

☐ Criar scripts REXX

☐ Criar procedimentos de recuperação

☐ Integrar com SA z/OS

☐ Integrar com NetView

☐ Criar runbooks

Objetivo

Não resolver mais rápido.

Resolver menos vezes.


📚 NÍVEL 12 — CONHECIMENTO HISTÓRICO

☐ Manter base de incidentes

☐ Documentar RCA

☐ Criar Wiki interna

☐ Registrar lições aprendidas

☐ Catalogar soluções

☐ Criar biblioteca de dumps

☐ Registrar padrões recorrentes

Ouro do Sysprog

Experiência documentada vale mais que memória.


🧠 NÍVEL 13 — MENTALIDADE DE MESTRE

Antes de qualquer ação pergunte:

☐ O que aconteceu?

☐ Quando aconteceu?

☐ Quem foi impactado?

☐ O que mudou?

☐ Isso já aconteceu antes?

☐ O que os logs mostram?

☐ O que os dados mostram?

☐ Estou tratando sintoma ou causa?

☐ Como impedir recorrência?

☐ O que aprendi hoje?


🏆 CHECKLIST FINAL DO SYSprog MESTRE

Quando um incidente ocorrer:

❌ Não reinicie imediatamente

❌ Não assuma conclusões

❌ Não culpe usuários

❌ Não culpe desenvolvedores

❌ Não culpe infraestrutura

✅ Colete evidências

✅ Analise dados

✅ Correlacione eventos

✅ Pergunte "por quê?"

✅ Encontre a causa raiz

✅ Elimine a recorrência

✅ Documente a descoberta

✅ Compartilhe conhecimento


☕ Regra Suprema do Bellacosa Mainframe

"O Padawan reinicia o CICS.

O Sysprog investiga o dump.

O Mestre encontra a causa raiz.

O Arquiteto faz o problema desaparecer para sempre." 🚀💣🔥

 

segunda-feira, 20 de outubro de 2025

PADAWAN, O PROBLEMA NÃO ESTÁ ONDE O ABEND ACONTECEU! Executando Root Cause Analysis (RCA) em Ambiente Mainframe

Bellacosa Mainframe e root cause analysis


☕💣🚨 PADAWAN, O PROBLEMA NÃO ESTÁ ONDE O ABEND ACONTECEU!

Executando Root Cause Analysis (RCA) em Ambiente Mainframe

Como Encontrar a Verdadeira Causa do Incidente e Não Apenas o Sintoma

Uma das maiores armadilhas no mundo Mainframe é acreditar que o erro está exatamente onde ele apareceu.

O operador vê um S0C7.

O desenvolvedor vê um SQLCODE -911.

O analista vê um JOB FAILED.

O gerente vê um SLA perdido.

Mas o verdadeiro culpado pode estar escondido horas, dias ou até semanas antes do incidente.

É exatamente para isso que existe a Root Cause Analysis (RCA).


O Que é Root Cause Analysis?

Root Cause Analysis é um processo estruturado utilizado para descobrir:

  • O que aconteceu

  • Por que aconteceu

  • Como aconteceu

  • Como impedir que aconteça novamente

O objetivo NÃO é:

❌ Encontrar culpados

O objetivo é:

✅ Encontrar causas

Existe uma enorme diferença entre:

Sintoma

e

Causa Raiz

Exemplo:

Sintoma:

JOB ABC123 ABEND S0C7

Causa raiz:

Arquivo recebido com campo numérico inválido

Sem RCA você corrige o programa.

Com RCA você corrige o processo.


O Modelo Bellacosa de RCA

Costumo ensinar que a investigação deve seguir 5 perguntas:

1. O que falhou?
2. Onde falhou?
3. Quando começou?
4. O que mudou?
5. Qual evento iniciou a cadeia?

A quinta pergunta normalmente encontra a causa raiz.


Caso Real Simulado

Imagine o seguinte cenário:

Às 03:15 da manhã:

JOB FINPAY01
ABEND S0C7

Sistema financeiro parado.

Pagamento não processado.

Telefone do plantão toca.

Você entra na guerra.


Passo 1 – Não Entre em Pânico

Primeiro erro dos iniciantes:

ABEND → Corrigir programa

Errado.

Primeiro precisamos coletar evidências.


Passo 2 – Capturar Informações Básicas

Anote:

Job Name
Step Name
Programa
Hora
Sistema
Código de retorno

Exemplo:

JOB:
FINPAY01

STEP:
CALCPAY

PROGRAMA:
PAYROLL

ABEND:
S0C7

HORA:
03:15

Agora temos o ponto inicial.


Passo 3 – Analisar JESMSGLG

Abrir:

SDSF
ST
?

Verificar:

JESMSGLG

Perguntas:

  • Houve mensagens antes do abend?

  • Dataset estava disponível?

  • Houve timeout?

  • Houve atraso?

Exemplo:

RECORD READ SUCCESSFULLY

Logo antes do erro:

INVALID DATA DETECTED

Primeira pista encontrada.


Passo 4 – Analisar SYSOUT

Agora olhamos:

SYSOUT
SYSPRINT
SYSUDUMP
CEEDUMP

Dependendo da aplicação.

Encontramos:

FIELD SALARY
VALUE = ABC123

O campo deveria ser numérico.


Passo 5 – Confirmar no Dump

No dump:

OFFSET X'03A2'

Instrução:

PACK

O programa tentou converter:

ABC123

para número.

Resultado:

S0C7

Até aqui temos:

O QUE aconteceu

Mas ainda não temos:

POR QUE aconteceu

Erro Comum da Equipe

Muitas equipes param aqui.

Produzem um relatório:

Causa:
Campo inválido.

Isso NÃO é RCA.

Isso é apenas descrição do sintoma.


Passo 6 – Rastrear a Origem do Dado

Pergunta:

Quem criou esse registro?

Abrimos o fluxo.

FINPAY01
↓
FINLOAD
↓
FTPIN
↓
Arquivo Externo

Agora começamos a enxergar a cadeia de eventos.


Passo 7 – Reconstruir a Linha do Tempo

Uma RCA boa sempre monta uma timeline.

01:00 Arquivo recebido

01:05 FTP concluído

01:10 Processo de carga

03:15 Abende S0C7

Agora investigamos:

O que mudou entre ontem e hoje?

Passo 8 – Procurar Mudanças

A pergunta mais poderosa da RCA:

O que mudou?

90% dos incidentes começam aqui.

Verificamos:

  • Mudança de software

  • Novo fornecedor

  • Nova versão

  • Alteração de layout

  • Mudança de parâmetro

Descobrimos:

Fornecedor alterou layout do arquivo

Ontem:

SALARY PIC 9(8)

Hoje:

SALARY PIC X(8)

E começou a enviar:

ABC123

Finalmente Encontramos a Causa Raiz

Sintoma:

S0C7

Causa imediata:

Campo não numérico

Causa raiz:

Mudança de layout
não comunicada
pelo fornecedor

Agora sim temos RCA.


Técnica dos 5 Porquês

Muito utilizada em bancos e seguradoras.

Pergunte repetidamente:

Por que houve S0C7?

Porque havia valor inválido.

Por que havia valor inválido?

Porque o campo veio alfanumérico.

Por que veio alfanumérico?

Porque o layout mudou.

Por que o layout mudou?

Porque fornecedor implantou nova versão.

Por que ninguém percebeu?

Porque não existia validação de layout.

Causa raiz:

Ausência de validação contratual
do arquivo recebido

Observe:

Não era COBOL.

Não era Mainframe.

Não era operador.

Era falha de processo.


Técnica do Diagrama de Ishikawa

Também chamado:

Fishbone Diagram

Categorias comuns:

Pessoas
Processos
Tecnologia
Dados
Infraestrutura
Mudanças

Exemplo:

S0C7
│
├── Dados
│   └ Campo inválido
│
├── Processo
│   └ Sem validação
│
├── Mudança
│   └ Layout alterado
│
└── Governança
    └ Sem comunicação

Esse modelo é excelente para incidentes complexos.


RCA em Problemas de Performance

Outro exemplo.

Sintoma:

Batch passou de
20 minutos para 4 horas

Investigação:

CPU normal
Memória normal
I/O elevado

Descoberta:

Índice DB2 ficou REORG pendente

Sintoma:

Batch lento

Causa raiz:

Janela de manutenção não executada

Novamente:

A causa raiz não era o batch.


RCA em Problemas de CICS

Sintoma:

AICA

Timeout.

Investigação:

CICS esperando DB2

DB2 esperando:

Lock

Lock causado por:

Batch noturno

Batch preso por:

Dataset indisponível

Causa raiz:

Dataset não montado

O AICA era apenas o último dominó da cadeia.


Estrutura de um Relatório RCA Profissional

INCIDENTE:
Batch FINPAY01 falhou.

IMPACTO:
Pagamento não processado.

SINTOMA:
ABEND S0C7.

CAUSA IMEDIATA:
Campo SALARY inválido.

CAUSA RAIZ:
Fornecedor alterou layout sem aviso.

AÇÃO CORRETIVA:
Correção do layout.

AÇÃO PREVENTIVA:
Validação automática de arquivo.

RESPONSÁVEL:
Equipe de Integração.

PRAZO:
15 dias.

O Segredo dos Grandes Especialistas Mainframe

Os profissionais mais experientes não são aqueles que sabem mais comandos.

São aqueles que conseguem responder:

Por que isso aconteceu?

Porque o verdadeiro trabalho de um especialista não é apagar incêndios.

É descobrir quem acendeu o fósforo.

Quando você domina RCA, deixa de ser apenas alguém que resolve abends e passa a ser alguém que elimina problemas da raiz, reduz incidentes recorrentes e se torna uma das pessoas mais valiosas dentro da operação Mainframe.

E é exatamente nesse momento que você deixa de ser um simples operador de mensagens e passa a pensar como um verdadeiro detetive de sistemas IBM Z. ☕🚀🔎