Files
agents_and_robots/skills/analysis/log-analyzer/SKILL.md
T
egutierrez 6ae2e6be03 feat: scaffold del sistema de skills
Estructura inicial de skills organizadas por categoría (analysis, coding,
communication, devops, system). Incluye README con convenciones de formato
y directorio por skill con sus prompts. Las skills son plantillas de prompts
reutilizables que los agentes pueden invocar para tareas especializadas.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-07 17:16:52 +00:00

71 lines
2.1 KiB
Markdown

---
name: log-analyzer
description: >
Analiza logs de servicios para encontrar errores, patrones y anomalias.
Usa esta skill cuando el usuario pida revisar logs, buscar errores en un
servicio, diagnosticar problemas, o entender que paso en un periodo de tiempo.
Funciona con journalctl, archivos de log, y logs de Docker.
---
# Analisis de logs
## Prerequisitos
- Tool `ssh_command` habilitada (para logs remotos)
- Acceso al servidor donde estan los logs
## Flujo
### 1. Identificar fuente de logs
Preguntar o inferir del contexto:
- **Servicio**: nombre del servicio o contenedor
- **Periodo**: rango de tiempo a analizar (default: ultima hora)
- **Servidor**: host donde corren los logs
- **Tipo**: systemd (journalctl), archivo (/var/log/...), o Docker
### 2. Obtener logs
Segun el tipo de fuente:
**Systemd (journalctl):**
```bash
ssh_command: "journalctl -u <servicio> --since '<periodo>' --no-pager"
```
**Archivo de log:**
```bash
ssh_command: "tail -n 500 /var/log/<servicio>/<archivo>.log"
# o con filtro de tiempo:
ssh_command: "awk '/2024-01-15 14:00/,/2024-01-15 15:00/' /var/log/<servicio>.log"
```
**Docker:**
```bash
ssh_command: "docker logs --since <periodo> <contenedor> 2>&1 | tail -500"
```
### 3. Analisis
Buscar en los logs:
- **Errores**: lineas con ERROR, FATAL, panic, exception, traceback
- **Warnings**: lineas con WARN, warning
- **Patrones repetitivos**: errores que se repiten (agrupar por tipo)
- **Timestamps**: cuando empezaron los problemas
- **Correlaciones**: errores que ocurren juntos o en secuencia
### 4. Reporte
Presentar al usuario:
1. **Resumen**: estado general (saludable / con problemas / critico)
2. **Errores encontrados**: listado agrupado por tipo con conteo
3. **Timeline**: cuando empezaron y si siguen ocurriendo
4. **Causa probable**: si se puede inferir del contexto
5. **Recomendacion**: accion sugerida (restart, fix config, escalar, etc.)
## Tips
- Si los logs son muy extensos, obtener primero un conteo de errores y luego los detalles de los mas frecuentes
- Usar `grep -c` para contar antes de traer lineas completas
- Para logs grandes, usar `tail` o rangos de tiempo acotados