ArgoCD Setup
2904628bef
fix: auditoria de coerência entre aulas
...
Bugs corrigidos:
- aula-15: tracing.js fallback OTel endpoint usava service name errado
(otel-collector vs otel-collector-opentelemetry-collector)
- aula-11/13: manifests k8s com gitea.kube.quest hardcoded → placeholder
Arquivos legado removidos (9):
- aula-10: gitlab-values.yaml, gitlab-registry-storage-secret.yaml,
object-storage-secret.yaml, registry-storage-secret.yaml
- aula-11: gitlab-runner-values.yaml, node-bugado/.gitlab-ci.yml
- aula-13: 3x .gitlab-ci.yml (substituídos por .gitea/workflows/ci.yml)
CLAUDE.md: comandos rápidos agora incluem aula-14 e aula-15
2026-03-14 02:41:35 -03:00
ArgoCD Setup
9b3168b996
aula-15: implementação completa APM (Tempo + OTel + demo app)
...
Componentes:
- tempo-values.yaml: Grafana Tempo monolithic, 256Mi, 10Gi PVC
- otel-collector-values.yaml: recebe OTLP, exporta traces→Tempo,
gera span metrics (RED)→Victoria Metrics via spanmetrics connector
- demo-app/: Node.js com rotas /fast (1 query), /slow (N+1, 51 queries),
/fixed (JOIN), auto-instrumentado com OpenTelemetry
- alerts/latency-alerts.yaml: VMRule com Doherty threshold (p95>400ms)
- setup.sh: instala Tempo, OTel Collector, configura Grafana datasource,
deploy demo app via ConfigMap (sem Docker build necessário)
- cleanup.sh: remove apenas recursos da aula-15, preserva aula-12
Zero hardcoded hostnames. Tudo via .env e placeholders.
2026-03-14 02:30:35 -03:00
ArgoCD Setup
6a8f076d8c
aula-15: APM com Grafana Tempo + OpenTelemetry
...
Nova aula cobrindo Application Performance Monitoring:
- Grafana Tempo como backend de traces (single binary, sem DB)
- OpenTelemetry auto-instrumentação (zero code changes)
- Demo app com N+1 intencional pra demonstração
- Conceito: limiar de Doherty (400ms) e perda silenciosa de UX
- RED method (Rate, Errors, Duration) por rota
- Correlação métrica→trace nativa no Grafana
- Alertas: p95 > 400ms dispara aviso
Filosofia: métricas dizem O QUE está errado, traces dizem POR QUE.
2026-03-14 02:23:56 -03:00