1. O que é o SDSF
O SDSF exibe e gerencia o spool do JES — o espaço em disco onde ficam armazenados os jobs aguardando execução e os outputs gerados. Pelo SDSF você consegue:
- Ver quais jobs estão em fila, executando ou já terminaram
- Ler o output de qualquer job (SYSOUT, relatórios, mensagens de erro)
- Verificar o return code de cada step
- Purgar (apagar) output que não é mais necessário
- Segurar (hold) ou liberar (release) output
🦕 Analogia — SDSF como o gerenciador de impressão
Imagine o SDSF como a fila de impressão do Windows, só que muito mais poderoso. Cada job submetido vai para a fila do JES (como um documento enviado para a impressora). O SDSF deixa você ver o que está na fila, acompanhar o andamento, ler o resultado — e jogar fora quando não precisa mais.
2. Acessando o SDSF
No ISPF Primary Menu, o SDSF costuma estar na opção 10 (ou S em muitos ambientes). Você também pode chegar lá pelo fast path =10 ou =S de qualquer tela.
O menu principal do SDSF lista todos os painéis disponíveis:
3. Painéis principais — ST, H, O, DA, LOG
| Painel | Nome | O que mostra | Uso típico |
|---|---|---|---|
| ST | Status | Todos os jobs — na fila, executando e concluídos | Ver return code de um job já terminado |
| DA | Active | Somente jobs em execução no momento | Monitorar um job longo em tempo real |
| O | Output | Output disponível para impressão | Ver output que não foi "held" |
| H | Held | Output retido (MSGCLASS com H ou HOLD) | O mais usado — ver output de jobs com HOLD |
| LOG | System Log | Log do sistema z/OS (mensagens do operador) | Diagnóstico de problemas de sistema |
O painel ST é o ponto de partida mais comum. Digite ST na command line do SDSF e pressione Enter:
A coluna Status mostra o estado do job:
OUTPUT— job terminou, output disponível para consultaEXECUTING— job em execuçãoWAITING— aguardando recursos ou na fila de entradaABEND— terminou com abend (erro anormal)JCLERROR— erro de JCL antes de executar
4. PREFIX e OWNER — filtrando jobs
Em ambientes de produção o spool tem centenas ou milhares de jobs. Para ver só o que é seu, use os filtros PREFIX e OWNER:
✅ Combine PREFIX e OWNER
Você pode usar os dois filtros juntos. PREFIX LC001* mostra todos os jobs que começam com LC001, independente de quem submeteu. OWNER LC001 mostra todos os jobs do usuário LC001, qualquer que seja o nome. Em muitos sites, o nome do job começa com o userid, então PREFIX e OWNER filtram o mesmo conjunto de jobs.
5. Consultando o output de um job
Para abrir o output de um job, coloque o cursor na linha do job (ou digite S na coluna NP à esquerda do nome) e pressione Enter:
Digite S (ou ?) na coluna à esquerda de qualquer DD para abrir e ler o conteúdo. Use PF7/PF8 para rolar e PF3 para voltar.
6. Ações sobre jobs — purge, hold, release
Na coluna NP (à esquerda do jobname) você digita comandos de ação:
| Comando | O que faz |
|---|---|
P | Purge — apaga o job e todo seu output do spool permanentemente |
A | Release — libera um output retido (held) para impressão |
H | Hold — retém o output para não ser liberado automaticamente |
C | Cancel — cancela um job em execução |
? | Seleciona para exibir (mesmo que Enter) |
⚠️ Purge é irreversível
O comando P (purge) apaga o job e todo o output imediatamente e sem confirmação. Se você ainda precisa do output para análise, certifique-se de tê-lo salvo ou copiado antes de purgar. Em muitos ambientes o purge automático limpa o spool após um período (ex: 3 dias) — o seu site deve ter uma política definida.
7. Lendo o output — JESMSGLG, JESJCL, JESYSMSG
Todo job gera automaticamente três DDs de sistema que são essenciais para diagnóstico:
| DD | O que contém | Quando consultar |
|---|---|---|
| JESMSGLG | Log do JES — alocações, start/end de steps, return codes | Sempre — é o primeiro lugar para ver o RC de cada step |
| JESJCL | O JCL expandido e interpretado pelo JES (com PROCs resolvidas) | Quando há JCLERROR ou para ver como a PROC foi expandida |
| JESYSMSG | Mensagens do sistema durante a execução (alocações, abends) | Quando o job abendou — mostra o código de abend e offset |
Exemplo de JESMSGLG mostrando o return code de cada step:
✅ FIND no output do SDSF
Dentro do output de qualquer DD no SDSF, você pode usar FIND texto na command line para localizar termos — exatamente como no editor. Para encontrar abends rapidamente, faça FIND 'ABEND' ou FIND 'IEF450I' (mensagem de abend de step). PF5 repete a busca.