SMF·AXIOM
Un prompt peut-il remplacer Axiom ?
Supervision et observabilité — log and event storage
Bordereau de suivi des pièces
Verdict
Stocker des logs et les interroger est un problème résolu, avec d’excellentes briques open source, donc c’est un « en partie » plutôt qu’un « non ». Ce qui prend une semaine, ce n’est pas l’ingestion, c’est la discipline : schéma à la lecture sur du stockage d’objets, et un plafond de coût strict qui laisse tomber des données plutôt que de t’envoyer une facture. L’avantage d’Axiom, c’est que son moteur de requête reste rapide à des volumes où un système fait maison s’effondre, et qu’il absorbe les mois de surprise.
Pièce A — Le prompt
Reçu le31.07.2026Construis un système de stockage de logs dont la fonctionnalité phare est un plafond de coût réellement appliqué.
Stack : ton choix, un stockage d’objets compatible S3, et un petit service de requête. Docker Compose pour le développement local. Envisage de t’appuyer sur un moteur de recherche existant conçu pour le stockage d’objets plutôt que d’écrire un index à partir de zéro.
Ingestion : un point d’entrée HTTP acceptant du JSON délimité par des sauts de ligne avec un champ timestamp obligatoire et des champs additionnels arbitraires. Mets en tampon en mémoire, écris vers le stockage d’objets dans des fichiers en colonnes partitionnés par dataset et par heure. Aucun schéma n’est déclaré à l’avance ; les champs sont découverts et leurs types enregistrés par partition.
Requête : un petit langage avec filtre, agrégation, group-by, tri et limite sur une plage temporelle, qui retourne des tables. Pousse les prédicats jusqu’au niveau partition pour qu’une requête d’une heure ne lise jamais une semaine de fichiers. Affiche les octets scannés avec chaque résultat — ce chiffre est ce qui apprend aux gens à écrire de meilleures requêtes.
Le budget, qui est tout l’intérêt de ce projet :
- Un budget d’ingestion mensuel en gigaoctets et un budget de requête mensuel en octets scannés, tous deux configurés.
- À 80 % de l’un ou l’autre, un avertissement apparaît dans l’interface et une alerte est envoyée.
- À 100 % du budget d’ingestion, le comportement est choisi, pas implicite : laisser tomber avec un compteur de ce qui a été perdu par dataset, ou échantillonner à un taux annoncé. Ne jamais accepter et facturer en silence.
- Une rétention par dataset en jours, avec l’expiration qui supprime les objets du stockage et ne se contente pas de masquer les lignes.
Dis dans le README pourquoi c’est conçu ainsi : un pipeline de logs sans plafond transforme une instruction de debug incontrôlée en facture à quatre chiffres, et c’est l’accident coûteux le plus courant en observabilité.
Alertes : une requête enregistrée, un intervalle, et un seuil. Déclenche vers un webhook. Enregistre chaque évaluation pour qu’une alerte manquée puisse être investiguée.
Écris des tests pour l’élagage de partitions qui réduit vraiment les octets scannés, pour le budget qui stoppe l’ingestion à la limite, et pour la rétention qui supprime les objets.
Ne construis ni agents ni bibliothèques clientes pour une dizaine de langages — un seul point d’entrée HTTP documenté suffit.
L’ouverture pré-remplit le prompt — il ne reste qu’à appuyer sur entrée.
Pièce B — Ce que tu perds
- B.1 la performance de requête aux volumes où ça cesse d’être facile
- B.2 le point d’entrée d’ingestion géré et ses bibliothèques clientes
- B.3 les modules complémentaires entreprise — SSO, RBAC, journal d’audit
- B.4 la garantie de durabilité de quelqu’un d’autre sur ton historique de logs
- B.5 la fiabilité des alertes pendant l’incident même que tu es en train de logger
Alternatives existantes
Pièce C — Pourquoi certains continuent de payer : query performance at volume
Parce que des logs ne valent la peine d’être gardés que si tu peux les interroger sous pression, et un système fait maison est le plus lent exactement quand un incident le sollicite le plus.
Questions
Pourquoi mettre le plafond de coût avant les fonctionnalités ?
Parce que le mode d’échec du logging auto-hébergé, ce n’est pas qu’il arrête de fonctionner, c’est une ligne de debug dans une boucle chaude et une facture de stockage que personne n’a remarquée pendant trois semaines. Un plafond qui laisse tomber et compte coûte moins cher que n’importe quelle quantité de vigilance.
Pourquoi afficher les octets scannés sur chaque requête ?
Parce que c’est le seul retour qui change les comportements. Une fois que les gens voient qu’une plage temporelle non bornée scanne cent gigaoctets, ils commencent à ajouter des filtres de temps sans qu’on le leur demande.
Le schéma à la lecture est-il vraiment meilleur ici ?
Pour des logs, oui — les champs changent dès que quelqu’un ajoute une ligne de log, et un schéma déclaré signifie soit des migrations constantes, soit des données perdues. Découvrir les champs par partition coûte un peu de performance de requête et épargne beaucoup de friction.
Que facture vraiment Axiom ?
Un forfait plateforme de 25 $ par mois qui inclut un vrai quota — 1 To ingéré, 100 Go-heures interrogés, 100 Go stockés — avec l’usage au-delà facturé en plus, plus des modules complémentaires entreprise en option. Le plan gratuit Personal est plus petit mais vraiment utilisable.
Outils proches
Récépissé