v1.2.0

Diagnóstico de clúster
un solo archivo.

groot es un recolector read-only de logs y contexto de Kubernetes — contrato estable v1.0 con config y archivos versionados. Preflight con validate, collect en un .tar.gz, inspect sin acceso al clúster.

GROOT — Kubernetes log collector
$ groot validate --config groot.yml
$ groot collect --config groot.yml --summary
$ groot inspect ./groot-*.tar.gz
curl -fsSL https://get.groot.hermesrodriguez.com/install.sh | sh

Preflight

groot validate comprueba config, API, RBAC y espacio en disco antes de un collect largo — menos sorpresas en guardia.

Bundle listo para incidentes

Un .tar.gz reproducible con manifest, TSVs de RCA, run_id estable y archive_layout_version — adjunta a tickets o retén para compliance.

Grado operador

Plugin kubectl, completion, perfiles de config, releases firmados; deploy programado en groot-selfhosted; collect on-demand con groot-trigger; catálogo VPS con groot-share (gfs).

Flujo de respuesta a incidentes

De la alerta al archivo offline: valida RBAC antes del collect, empaqueta evidencia en un .tar.gz, inspect sin acceso al clúster.

Flujo de respuesta a incidentes Kubernetes con GROOT: validate, collect, inspect y compartir un archivo

Releases recientes

v1.2.0 2026-10-10

Toolchain
  • Go 1.27.2, golangci-lint v2.14.0, golang.org/x/net v0.60.0
  • Sin cambios de CLI ni de contrato — pull ghcr.io/hrodrig/groot:v1.2.0
  • Pin operador: groot-selfhosted v0.2.15

v1.1.4 2026-09-28

Seguridad
  • grpc v1.83.2, golang.org/x/crypto v0.56.0 (SFTP / crypto/ssh), OpenTelemetry v1.45.0
  • Sin cambios de CLI ni de contrato — pull ghcr.io/hrodrig/groot:v1.1.4
  • Pin operador: groot-selfhosted v0.2.14

v1.1.3 2026-08-25

Naming
  • Naming posicional del archivo — el cluster es la cola absoluta tras el timestamp
  • --message y -since-<duration> preceden al timestamp
  • Emparejar con gfs 0.7.0+ para parsear el cluster por posición

Informe técnico v1.2.0 · Changelog completo en GitHub

Estable 1.2.0

Contrato estable en v1.0

config_version: 1

Declara versión de esquema en groot.yml; configs legacy sin él siguen cargando sin cambios.

archive_layout_version

Cada archivo nuevo registra versión de layout en extras/manifest.json para herramientas downstream.

collect --output json

Summary JSON estructurado tras collect exitoso — validate e inspect ya soportan JSON desde 0.9.x.

validate · collect · inspect

Bucle de incidente en tres comandos: preflight RBAC, collect .tar.gz con --summary, revisión offline del archivo.

run_id + checksum

run_id estable y archive_sha256 en manifest.json; webhooks de notify y metadatos de upload pueden usar {{run_id}}.

Gobernanza

CODEOWNERS, plantillas issue/PR, golden inspect fixture en CI — contrato probado en cada release. Ver SPECIFICATIONS.md.

Inicio rápido

Deploy CronJob Helm: groot-selfhosted/run/deploy

Familia Groot