Skip to content

RUN-OBS-APPLY — Aplicar/actualizar la suite de observabilidad

Thin pointer por diseño. Este runbook NO duplica el procedimiento. El procedimiento autoritativo y completo vive en el repo platform-observability (README raíz + scripts/apply-observability.sh con su cabecera de fases y leyes) y en la ficha SVC-OBSERVABILITY §Runbook — apply. Si este puntero y el procedimiento autoritativo discrepan, manda el procedimiento.

Qué cubre

  • Apply completo / actualización de la suite (ns observability): scripts/apply-observability.sh — OPERATOR-GATED (los workers nunca lo ejecutan; solo el operador, con credenciales Infisical de sesión).
  • Re-runs idempotentes: flag --allow-existing (re-fetch de Infisical y sobrescribe los Secrets existentes; rotación de credenciales = misma vía, ver ficha §Operation).
  • ISM / retención: scripts/ism-apply.sh (política logs-retention-14d
  • template logs-*, re-ejecutable de forma independiente).

Dónde vive el procedimiento autoritativo

Fuente Contenido
platform-observability — README raíz Visión del repo y enlaces a scripts
platform-observability — scripts/apply-observability.sh (cabecera) Fases: preflight → fetch Infisical → 4 Secrets → apply file-by-file (nunca dir-wide, nunca *example*/*.json) → bootstrap seguridad OpenSearch + ISM → WAIT gates → probes + summary
platform-observability — scripts/ism-apply.sh Retención ISM 14d (schema fixes 3.8.0 live-verified)
SVC-OBSERVABILITY §Runbook — apply (F7.2) Pasos del operador (seed Infisical → ejecutar → esperar gates) y precondiciones

Verificación post-apply (resumen)

  1. Pods de ns observability todos Ready (gates WAIT del script).
  2. Argo observability Synced/Healthy.
  3. Probes de contrato público (F7.3): DNS ×2 IPs por host, TLS LE por CN, 403 desde IP no allowlisted, 200/302 desde .89/.87. Desde F-GSP 2026-09-05 el contrato son cinco hostnames (incluye otlp.wetopi.net → otel-collector:4318).

Rollback

Ver ficha SVC-OBSERVABILITY §Rollback plan: revert del certRef delta en el Gateway (fail-safe por R1), delete del app Argo con prune: true, DNS vía tofu (prevent_destroy).