---
title: LoggiFly
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, docker, logs, monitoring, notifications, python, auto-hebergement]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Docker, https://github.com/clemcer/LoggiFly]
---

# 🐳 LoggiFly

> **Vos logs Docker vous parlent ?** : LoggiFly lit en continu les logs de vos conteneurs, filtre les motifs qui vous intéressent (erreurs, exceptions, mots-clés) et vous envoie une notification. Fini les logs perdus dans `docker logs`.

## 📋 Informations Générales

| Champ | Valeur |
| :--- | :--- |
| **Site web** | (GitHub) |
| **GitHub** | [clemcer/LoggiFly](https://github.com/clemcer/LoggiFly) |
| **License** | MIT |
| **Langage** | Python |
| **Étoiles GitHub** | 1740 ⭐ |
| **Dernière MAJ** | 2026-06-02 |
| **Catégorie** | [[cat-docker\|Docker]] |

## 📝 Description

**LoggiFly** est un **démon léger** qui suit en temps réel (`docker logs -f`) la sortie de tous vos conteneurs, applique des **règles de filtrage** (regex, mots-clés, niveaux), et **déclenche des notifications** (Discord, Slack, Telegram, Ntfy, Gotify, email…) quand un motif correspond.

L'idée est de combler le manque entre `docker logs` (qu'il faut aller lire manuellement) et un ELK / Loki (trop lourd pour un homelab). LoggiFly est dans le juste milieu : GUI web, configuration YAML, notifications modernes.

- ✅ **Multi-conteneurs** : suit tous les conteneurs, ou une sélection via labels / noms
- ✅ **Règles YAML** : regex, mot-clé, niveau (ERROR/WARN/INFO), exclusion
- ✅ **Notifications multi-canaux** : Discord, Slack, Telegram, Ntfy, Gotify, Pushover, email, webhook custom
- ✅ **Anti-spam** : regroupement de notifications identiques sur une fenêtre de temps
- ✅ **GUI web** : dashboard des dernières alertes, aperçu des logs filtrés
- ✅ **Stockage SQLite** : conserve un historique des alertes
- ✅ **Mode multi-hôte** : peut se connecter à plusieurs daemons distants

**LoggiFly vs Dozzle** : Dozzle ([[app-dozzle]]) est un *viewer* de logs (lecture humaine), LoggiFly est un *alerter* (notification automatique). LoggiFly vs Loki/Grafana : stack pro pour gros volumes ; LoggiFly pour homelab. LoggiFly vs `grep + cron` : LoggiFly centralise, persiste et notifie — pas de scripts à maintenir.

## 🚀 Installation

### Docker Compose (recommandé)

```yaml
# docker-compose.yml
version: '3.8'
services:
  loggifly:
    image: ghcr.io/clemcer/loggifly:latest
    container_name: loggifly
    restart: unless-stopped
    ports:
      - "8888:8888"  # Web UI
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
      - ./config:/app/config  # config.yaml + rules.yaml
      - loggifly-data:/app/data
    environment:
      - TZ=Europe/Paris
      - LG_CONFIG=/app/config/config.yaml
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.loggifly.rule=Host(`logs.example.com`)"
      - "traefik.http.routers.loggifly.entrypoints=websecure"
      - "traefik.http.routers.loggifly.tls.certresolver=letsencrypt"

volumes:
  loggifly-data:
```

### Exemple de config

```yaml
# config.yaml
general:
  check_interval: 5
  log_retention_days: 7

containers:
  - name: "nextcloud"
    patterns: ["Fatal", "Error", "exception", "out of memory"]
  - name: "traefik"
    patterns: ["level=error"]

notifications:
  discord:
    webhook: "https://discord.com/api/webhooks/…"
  ntfy:
    topic: "homelab-alerts"
```

## ⚙️ Configuration Initiale

1. **Monter le socket Docker** (`/var/run/docker.sock:ro`) pour que LoggiFly puisse lister et lire les conteneurs
2. **Préparer le dossier de config** : `./config/config.yaml` (paramètres généraux) et `./config/rules.yaml` (règles)
3. **Définir un premier conteneur à surveiller** : `containers: [{name: "nextcloud", patterns: ["Error", "exception"]}]`
4. **Configurer au moins un canal de notification** : Discord webhook, Ntfy topic, Telegram bot, etc.
5. **Accéder à la GUI** : `http://IP:8888` pour visualiser le dashboard et l'historique des alertes
6. **Ajuster l'anti-spam** : `cooldown` pour éviter qu'une même erreur en boucle spamme vos notifications

## 🔄 Alternatives

### Open Source
- [[app-dozzle|Dozzle]] — viewer web de logs en temps réel
- **Loki + Grafana** — stack pro, beaucoup plus lourde
- [[app-uptime-kuma|Uptime Kuma]] — monitoring d'uptime (pas de log streaming)
- **Vector / Promtail** — agents de collecte de logs
- **Docker events + script cron** — DIY

### Comparaison LoggiFly vs alternatives

| Critère | LoggiFly | Dozzle | Loki+Grafana | Vector |
| :--- | :--- | :--- | :--- | :--- |
| Lecture temps réel | ✅ | ✅ | ✅ | ✅ |
| Alertes/notifs | ✅ | ❌ | ✅ | ⚠️ (via Promtail) |
| Règles regex | ✅ | ❌ (filtre simple) | ✅ (LogQL) | ✅ (VRL) |
| GUI web | ✅ | ✅ | ✅ (Grafana) | ❌ |
| Setup | 5 min | 2 min | 1h+ | 30 min |
| RAM | ~50 Mo | ~30 Mo | ~500 Mo+ | ~50 Mo |

**Verdict** : LoggiFly est **le choix idéal pour un homelab** qui veut des alertes pertinentes sans la lourdeur de Loki. Pour des volumes >10 Go/jour, passez à Loki.

### Propriétaires (ce que LoggiFly remplace)
- **Datadog Log Management** (payant)
- **Loggly** (payant)
- **Sumo Logic** (payant)
- **New Relic Logs** (payant)

## 🔐 Sécurité

- ⚠️ **Socket Docker monté** : même en `ro`, peut lister tous vos conteneurs. Limiter via [[app-docker-socket-proxy-docker|docker-socket-proxy]] ou accès VPN
- **Logs potentiellement sensibles** : les logs Nextcloud/Mailcow/Seafile contiennent des adresses mail, des chemins, des PII. Ne pas exposer la GUI sur Internet sans auth
- **Webhooks** : valider les URLs, ne pas mettre de tokens dans le `docker-compose.yml` public — utiliser un `.env`

## 📚 Ressources

- [GitHub clemcer/LoggiFly](https://github.com/clemcer/LoggiFly)
- [Documentation & exemples](https://github.com/clemcer/LoggiFly/blob/main/docs/configuration.md)

## Pages Liées
- [[cat-docker]] — Catégorie Docker
- [[app-portainer]] / [[app-dockge]] / [[app-yacht]] — GUI Docker
- [[app-traefik]] — Reverse-proxy
- [[recettes-docker-compose]] — Compose files
- [[securisation-home-lab]] — Bonnes pratiques
