Mapa da aula
Aula 19 publicada. Mapa, exemplo, EX055.
flowchart TD
N0["19.1 O que monitorar"]
N1["Laboratório — Alerta de taxa de falhas"]
N2["19.2 Ler o alerta"]
N3["19.3 Responder aos alertas"]
N4["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4
N4 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX055"]
Desenho lógico
flowchart LR
N0["19.1 O que monitorar"]
N1["Laboratório — Alerta de taxa de falhas"]
N2["19.2 Ler o alerta"]
N3["19.3 Responder aos alertas"]
N4["Síntese"]
N0 --> N1 --> N2 --> N3 --> N4 --> Q["EX055"]
[19.1 O que monitorar]
|
v
[Laboratório — Alerta de taxa de falhas]
|
v
[19.2 Ler o alerta]
|
v
[19.3 Responder aos alertas]
|
v
[Síntese]
|
v
[Exemplo resolvido] --> [Exercício EX055]
Objetivos de aprendizagem
Você vai (1) escolher métricas para a saúde do TLS e dos certificados; (2) definir limiares de alerta que evitem ruído; (3) responder aos alertas com runbooks.
19.1 O que monitorar
Rosa monta o monitoramento dos serviços de confiança: dias até a expiração de cada certificado, sucessos e falhas das renovações ACME, taxas de falha de handshake TLS no gateway, falhas de verificação de webhooks e disponibilidade do HSM. Cada métrica tem um dono e um runbook. Ela se concentra em sinais que preveem problemas, como as falhas de renovação, em vez de apenas medir as indisponibilidades depois que acontecem. O monitoramento é a forma de a prefeitura saber de um problema antes dos cidadãos. Antes de definir os limiares, ela registra duas semanas de valores de linha de base, para que os alertas reflitam o que é incomum para a prefeitura, e não números copiados de outro lugar. Ela envia os alertas para a escala de plantão, nunca para caixas de entrada pessoais que ficam sem leitura durante as férias.
Laboratório — Alerta de taxa de falhas
"""Flag hours where TLS failure rate exceeds 2% for three consecutive hours (synthetic gateway counts)."""
HOURS = [(1200, 6), (1350, 9), (1500, 41), (1480, 44), (1420, 39), (1300, 12), (1250, 7)] # (handshakes, failures)
def main():
rates = [f / h for h, f in HOURS]
for i, r in enumerate(rates):
print(f"hour {i}: {100 * r:.2f}%")
run = 0
for i, r in enumerate(rates):
run = run + 1 if r > 0.02 else 0
if run == 3:
print(f"ALERT at hour {i} (3 consecutive hours above 2%)")
if __name__ == "__main__":
main()
Execute com python3 lab_monitor.py. Saída verificada:
hour 0: 0.50%
hour 1: 0.67%
hour 2: 2.73%
hour 3: 2.97%
hour 4: 2.75%
hour 5: 0.92%
hour 6: 0.56%
ALERT at hour 4 (3 consecutive hours above 2%)
19.2 Ler o alerta
O laboratório calcula as taxas horárias de falha de TLS no gateway. As horas normais ficam abaixo de um por cento. As horas 2, 3 e 4 sobem para 2,73, 2,97 e 2,75 por cento, e a regra, mais de dois por cento por três horas consecutivas, dispara na hora 4. Exigir três horas evita alertar por um pico breve. Rosa anota o compromisso: uma expiração de certificado voltada aos cidadãos justificaria um alerta mais rápido, então a expiração tem sua própria verificação direta, com trinta e com sete dias de antecedência, em vez de esperar que as falhas subam. Ela também confere que o alerta se encerra quando as taxas voltam para baixo do limiar, para que alertas velhos não se acumulem.
19.3 Responder aos alertas
Cada alerta se liga a um runbook. Para um alerta de taxa de falhas, o runbook manda conferir o resumo do log do gateway do Capítulo 9, identificar o código de motivo e o host dominantes, conferir as mudanças recentes e escalar se um certificado ou uma configuração estiver errado. Rosa pratica o runbook sobre o pico sintético e encontra a causa no log de mudanças do cenário: um envio de configuração removeu uma suíte de cifras de que um terminal de pagamento mais antigo precisava. Ela também registra mensalmente os volumes de alertas e ajusta os limiares que nunca levam a nenhuma ação.
Exemplo resolvido
O monitoramento de Rosa dispara um alerta de taxa de falhas na hora 4, depois de três horas acima de dois por cento, e seu runbook o rastreia até um envio de configuração.
Caso sintético. As contagens e as causas são inventadas.
Erros e limites
Limiares sem linhas de base criam ruído ou deixam passar problemas. Monitorar as falhas, e não apenas as indisponibilidades, captura os problemas silenciosos.
Exercícios
-
EX055 — Sinais monitorados. Liste quatro sinais que Rosa monitora.
Mostrar critérios de avaliação
Rubrica: 3 = quatro entre dias até a expiração, resultados das renovações, taxa de falha de handshake, falhas de webhook, disponibilidade do HSM;; 2 = três;; 1 = um;; 0 = nenhuma. -
EX056 — Hora do alerta. Quando o alerta do laboratório disparou, e por quê?
Mostrar critérios de avaliação
Rubrica: 3 = hora 4, depois de três horas consecutivas acima de dois por cento;; 2 = hora;; 1 = errada;; 0 = nenhuma. -
EX057 — Causa do pico. O que causou o pico sintético?
Mostrar critérios de avaliação
Rubrica: 3 = um envio de configuração removeu uma suíte de cifras de que um terminal de pagamento antigo precisava;; 2 = causa;; 1 = vago;; 0 = nenhuma.
Síntese
Monitorar sinais preditivos com limiares ajustados e runbooks permite que os operadores corrijam os problemas de confiança antes que os cidadãos percebam.