---
title: "Agent StatHall — push-only Python stdlib"
description: "L'agent StatHall : Python stdlib, .deb signé GPG, dépôt APT signé, token Fernet scope 1 cible. Aucune connexion entrante."
lang: fr
canonical: "https://www.stathall.com/produit/agent/"
---

# L'agent StatHall

Un agent Python single-file, distribué en .deb signé GPG, qui pousse vos métriques système vers StatHall en HTTPS — sans ouvrir aucun port entrant.

## Principes

- **Python stdlib uniquement** — pas de dépendance pip externe, réutilise le `python3` système Debian/Ubuntu.
- **Push-only HTTPS** — l'agent n'écoute jamais, ne reçoit aucune connexion entrante. Vous gardez votre firewall fermé.
- **Token Fernet** — généré côté StatHall, scope strict à une cible (1 token = 1 serveur). Affiché une seule fois.
- **Binding host UUID** — un token est lié au premier host qui s'enregistre. Toute réutilisation depuis un autre host est refusée HTTP 409.
- **.deb signé GPG** — empreinte`B37B34F1023ECB71`, dépôt`apt.stathall.com`.
- **systemd unit** — supervision native, restart on failure, logs journald.

## Ce qui est collecté

L'agent multiplexe trois types de données dans un payload OTel-shaped vers `/api/v1/agents/{token}/ingest` :

- **Métriques** — CPU (load1/5/15, %user/%sys/%idle), mémoire (used/free/cached/swap), disques (par mountpoint), network (rx/tx par interface).
- **Événements** — services systemd (started, stopped, failed), mises à jour APT (disponibles, sécurité, applied), redémarrages requis.
- **Logs** — journald, conteneurs Docker et fichiers applicatifs de `/var/log` (nginx, PostgreSQL, fail2ban…), filtrés par priorité (warning et plus par défaut, réglable par unité), regroupés par message similaire avant l'envoi. L'agent remonte aussi son propre diagnostic : ce qu'il a lu, ce qu'il a filtré, ce qu'il n'a pas pu lire et pourquoi.

## Installation rapide

Un seul one-liner sur votre serveur, après avoir généré un token dans le cockpit (cible serveur → onglet « Agent ») :

```
curl -fsSL https://apt.stathall.com/install.sh | sudo sh -s <TOKEN_AFFICHÉ_SPA>
```

Le script détecte la distribution, importe la clé GPG, ajoute le dépôt APT, installe le paquet, écrit`/etc/stathall-agent/config.ini`, enregistre l'hôte (binding strict ADR-0009) puis `systemctl enable --now stathall-agent`. Une seule commande, pas d'étape d'enrôlement séparée.

## Prérequis

- Debian 12+ ou Ubuntu 22.04+ (`python3` ≥ 3.10 livré par défaut).
- Accès root / sudo pour le `apt install` \+ l'unité systemd.
- HTTPS sortant vers `app.stathall.com`. Aucun port entrant requis sur le serveur.
