v0.8.1 · aggiornata · GitHub
v0.8.1 · Go 1.25 · Zero dipendenze · MIT

Log JSON di Caddy,
finalmente leggibili e protetti.

Caddy v2 scrive log JSON annidati (request.uri, status, tls, headers), non Common Log Format. grep, goaccess e lnav non li interpretano correttamente. caddy-analyzer li analizza nativamente, classifica il traffico e segnala gli attacchi con un motore a doppio passaggio e 26 categorie.

caddy-analyzer --detect /var/log/caddy/access.log
Periodo: 2026-08-31 00:00 → 01:00  ·  12.450 richieste  ·  RPS 3,46
2xx ████████████████░░ 89%  ·  3xx ██░░░░ 2%  ·  4xx ███░░ 7%  ·  5xx █░░░░ 2%
Media 4,2 KB  ·  P50 18ms  P95 210ms  ·  Umani 92%  Bot 8%

IP principali
  203.0.113.18    1.204  ████████████
  198.51.100.23     892  ████████

Sospetti (rilevamento a 26 categorie)
  198.51.100.23  15 dannosi
    [sql_injection T1190] GET /search?id=1' OR '1'='1 --
    [xss T1189] GET /q=<script>alert(1)</script>
    [scanner] GET /.env  ·  GET /.git/config
  203.0.113.18    8 dannosi
    [path_traversal] GET /../../../../etc/passwd
26
Categorie
~70K
Parse / sec
~7K
Detect / sec
0
Dipendenze

Cosa risolve rispetto agli strumenti generici

Novità della v0.8.1: le immagini delle release vengono pubblicate su GHCR per Linux amd64 e arm64. Consulta installazione Docker per tag di versione e build locali.

caddy-analyzergoaccess / lnav / grep
JSON Caddy nativo✓ niente regex o configurazione✗ non riconoscono i campi annidati
Rilevamento a 26 categorie✓ doppio passaggio con confidence score✗
Guard firewall✓ iptables / DOCKER-USER / nftables✗
Sorgentifile, stdin, docker://, k8s://, journalctl://solo file

Documentazione

Prossimo passo

È la prima volta che usi il progetto? Segui l'avvio rapido di 60 secondi: ogni comando è copiabile e produce un report reale. Hai già installato tutto? Vai alla guida all'utilizzo o al riferimento CLI.