Julien Levesque Architecte solutions

← Tous les produits

Produit · Supervision applicative, depuis 2024

Onagre : savoir quand une application tombe, avant ses utilisateurs.

Monter une chaîne d'observabilité complète demande souvent plus de travail que l'application qu'elle doit surveiller. Onagre réduit ce coût d'entrée : on crée une sonde à partir d'un besoin, « surveiller une sauvegarde nocturne », « vérifier un certificat », et on est prévenu quand ça casse. Une plateforme multi-clients, dont je porte l'architecture.

Voir onagre.io Parler de votre projet

Vue d'ensemble d'un espace : ressources surveillées, incident ouvert, disponibilité par type de sonde. Données de démonstration.

Le point de départ

Onagre s'adresse aux équipes de développement, d'exploitation et produit qui veulent savoir que leurs applications fonctionnent, sans faire tourner une pile de supervision. Ce n'est pas de la supervision d'infrastructure : on surveille ce que voit l'utilisateur et ce dont l'application dépend. Sites et API, valeurs dans une réponse JSON ou XML, bases SQL, Redis, files de messages en échec, certificats, DNS, tâches planifiées qui ne se sont pas lancées.

La carte des services : une panne sur les notifications se propage au back-end mobile qui en dépend.

Les choix d'architecture

Ce qui ne se voit pas sur le site du produit, et qui fait qu'il tient.

Un agent simple, une plateforme qui décide
L'agent exécute les vérifications et rend compte ; l'ordonnancement, les incidents et les notifications vivent côté plateforme. Ce choix est consigné dans une décision d'architecture écrite, comme vingt-trois autres.
Aucun port entrant
Pour surveiller l'intérieur d'un réseau, on installe un agent privé, en service système ou en conteneur Docker, sur Linux ou Windows. Il ouvre une seule connexion sortante chiffrée, un flux gRPC bidirectionnel permanent vers la plateforme. Ni VPN, ni règle de pare-feu entrante à négocier avec la sécurité.
PostgreSQL, et pas grand-chose d'autre
Pas de Redis, pas de base de séries temporelles dédiée : le métier, l'identité et l'ordonnancement reposent sur PostgreSQL, et l'historique des mesures est archivé en fichiers Parquet sur du stockage objet. Un produit qui promet de simplifier la supervision doit lui-même rester simple à exploiter.
Mesurer avant d'affirmer
Un banc de charge à 10 000 sondes a montré que l'ancien pipeline d'exécution perdait en silence environ 25 000 exécutions. Sur le même banc, le pipeline qui le remplace n'en perd aucune. Pour un outil de supervision, une vérification qui ne s'exécute pas sans le dire est le pire défaut possible.
Les secrets de chaque client chiffrés à part
Les variables et secrets utilisés par les sondes sont chiffrés en AES-GCM 256 bits, avec une clé propre à chaque organisation. Un seul outil a le droit d'appliquer les migrations de base, et la plateforme est hébergée en France.
Environ 1 100 tests automatisés
Répartis dans quatorze projets de tests. L'agent est livré pour quatre plateformes, et une application Android relaie les alertes.

Pile technique .NET 10 · ASP.NET Core · gRPC · Blazor · EF Core 10 · PostgreSQL · .NET MAUI · Scaleway · Cloudflare

Ce que ça change pour votre projet

Savoir ce que fait la production avant que le client ne le signale : c'est l'objectif de chaque mission d'observabilité. Onagre applique la même approche à l'échelle d'un produit : peu de briques, des décisions écrites, et des chiffres mesurés plutôt que supposés. Si votre exploitation découvre les pannes par le support, parlons-en.

Parler de votre projet

Les autres produits