La confiance commence par savoir ce qu'il y a sous le capot. Voici la stack qui fait tourner tes logs, les choix qu'on a faits, et où on va. On préfère trop partager que trop promettre.
Des composants ennuyeux et bien compris. Pas de magie.
Ingest
Scaleway · Amsterdam (NL)
OTLP HTTP plus un endpoint JSON générique. Bearer-auth avec des clés API hashées en bcrypt. Rate-limited par clé.
Buffer d'ingestion
Scaleway · Amsterdam (NL)
Répliqué sur plusieurs brokers ; l'API ne répond qu'une fois les logs présents sur chaque réplique. Conserve les logs originaux pour 60 minutes de raw replay. Les logs Critical ont leur propre voie.
Stockage de logs
Scaleway · Amsterdam (NL)
Colonnaire, partitionné par tenant_id et date. Order key (tenant_id, index, timestamp, log_id) fait que les requêtes scopées tenant tapent les bonnes partitions en premier. Compression 8–12× typique sur logs texte.
Métadonnées
Scaleway · Amsterdam (NL)
Utilisateurs, organisations, clés API, dashboards, alertes, pipelines. Aucun contenu de log stocké ici.
Frontend
Cloudflare Pages
TanStack Query pour l'état serveur, Zustand pour l'état UI, Tailwind + shadcn/ui. TypeScript strict partout.
IA
UE (Stockholm) · fournisseur US
Alimente la traduction langage naturel → LPQL et l'AI Investigator. Listé dans nos sous-traitants. Les logs ne vont à la LLM que quand tu déclenches une requête IA.
De tes apps à ClickHouse et retour.
Your apps ──OTLP HTTP──▶ Fastify ingest ──▶ Durable ingest buffer
│ │
auth + quota workers: parse + batch
│ ▼
│ ClickHouse (Scaleway · Amsterdam)
│ │
▼ │
PostgreSQL │
(metadata) │
▼
Web UI ◀── LPQL / AI ── Fastify query ──▶ ClickHouse (tenant-scoped)Ingest push : agents et SDK envoient les logs via OTLP HTTP. L'API authentifie et met en queue ; un worker batche et écrit dans ClickHouse. Les requêtes vont dans l'autre sens : l'UI tape l'API, l'API exécute LPQL sur ClickHouse avec le scoping tenant imposé à la frontière.
Séparation imposée dans la base, pas seulement dans l'app.
Tarif forfaitaire = tu ne paies pas plus quand tu logues plus que prévu.
Chaque requête que l'IA exécute est montrée. Tu peux vérifier, éditer et sauvegarder.
On préfère être honnête sur ce qui est en place et ce qui est encore en chantier.
DPA + SCC disponibles sur les plans payants. Chemin de données UE-only. Chiffrement au repos et en transit.
Contrôles Trust Services Criteria en place. L'audit externe suivra.
Contrôles alignés ; pas encore certifiés.
status.logpulse.io : vérifié chaque minute depuis l'extérieur de notre plateforme, avec 30 jours d'historique par composant.
Posts reproductibles sur le throughput d'ingest et la latence des requêtes.
On préfère trop partager que trop promettre. Écris à [email protected] avec tes questions sur la stack, l'isolation, ou tout ce qu'on n'a pas couvert ici.