Aller au contenu principal

État des fonctionnalités

Un aperçu de ce qui est disponible aujourd'hui par rapport à ce qui arrive. avuru obs v0.5.0 est publiée et le tronc évolue vite — pour le plan, voir la Feuille de route, et pour les changements livrés le Changelog.

Disponible maintenant

CapacitéÉtatDepuis
Carte des services — arêtes d'appel dérivées des traces, anneaux de santé issus de la consolidation service-health, latence p50/p95 par arête côté appelant, survol focalisé, et filtres de recherche/statut/groupe partageablesLivréM1
Traces — recherche, filtres (tags, ordre, durée, statut), heatmap de latence, aperçu RED par opérationLivréM1
Visualiseur de traces — chronologie, table des spans, flamegraph, statistiques, graphe, JSONLivréM4
Comparaison de traces — diff structurel de deux tracesLivréM4
Logs — recherche plein texte, filtres sévérité/service, corrélation trace_idLivréM1
État du système — santé des composants, stockage, rétention, disqueLivréM1
DaemonSet sensor — traces + RED eBPF zéro-code (OBI), collecte de logs zéro-configLivréM2
Inventaire des services — table RED triable, exploration vers les tracesLivréM2
Tableau de bord RED — graphiques débit/erreurs/durée par serviceLivréM3
Santé des nœuds / pods — CPU, mémoire, réseau par nœud & pod (kubeletstats), triables sur chaque colonne et filtrables par nom, espace de noms ou charge de travailLivréM3
Profilage continu — flame graphs CPU par service (expérimental, opt-in)LivréM4
Projets — portée par environnement, sélecteur dans la barre latérale, liens ?project= partageablesLivrév0.1
Gestion des projets — créer, renommer et supprimer des projets depuis l'UI ; les projets default et définis par configuration restent en lecture seuleLivrév0.3
Démo en lecture seule — lecteur « Essayer la démo » en un clic, alimenté par des données réelles (OpenTelemetry Astronomy Shop) ; opt-in, connexion côté serveurLivrév0.3
Contrôles de collecte — par signal/namespace/pod/nœud, avec inventaire des agents par nœudLivrév0.1
Collecte pilotable à chaud — activez ou coupez chaque signal depuis Réglages → Collecte et le capteur suit en quelques secondes, sans helm upgrade ; affiche la configuration effective et revient aux valeurs du chart. Optionnelle, derrière un rôle limité à l'espace de noms et aux ressources de capteur du hubLivrév0.5
Suivi des erreurs — problèmes dédupliqués depuis spans/logs, cycle de triage, ingestion au protocole SentryLivrév0.2
Santé des services — santé de groupe avec niveaux de criticité et propagation des dépendances critiques, dérivée du REDLivrév0.2
Groupes de services depuis l'interface — créez, modifiez et supprimez les groupes de santé dans Paramètres → Groupes ; effectif dès la lecture de santé suivante, sans helm upgrade. Les groupes déclarés dans le chart restent en lecture seule et l'emportent en cas de collision de nom ; le regroupement automatique par espace de noms est inchangéLivrév0.5
Alerting — notifications par webhook quand un service/groupe passe dans un mauvais étatLivrév0.2
Santé réseau sur la carte des services — RTT + connexions échouées/réinitialisées par arête (stats TCP OBI)Livrév0.2
Green — énergie (Wh) & carbone (gCO2e) par service via CNCF Kepler, budgets carbone, export prêt pour la CSRD (désactivé par défaut ; mesuré sur matériel RAPL)Livrév0.2
Sûreté du capteur — gate CI « do no harm » (canari sensible aux probes) + mode d'instrumentation opt-in (discovery.mode)Livrév0.2
Authentification — sécurisé par défaut : utilisateurs locaux, rôles fixes (admin/éditeur/lecteur) avec droits par projet, sessions côté serveur, Paramètres → Utilisateurs, lecteur anonyme opt-inLivrév0.2
SSO — OpenID Connect (découverte, PKCE) avec n'importe quel IdP, mapping groupe→rôle/projets (rechargé à chaud), forceSSOLivrév0.2
Modules — un interrupteur par famille de signaux (modules.<name>.enabled) contrôle d'un bloc schéma, API, pipeline, collecte et interface ; barre latérale pilotée par les capacitésLivrév0.2
Clés d'API d'ingestion — clés par projet validées dans la gateway ; en enforce, le projet de la clé devient le tenant qui fait autorité ; déploiement progressif off/log/enforceLivrév0.3
Green sur les nœuds sans RAPL — estimation de puissance par TDP pour les VM cloud (optionnelle), étiquetée estimée de bout en bout et jamais mélangée à l'énergie mesurée ; panneau de couverture sur /green. La source mesurée peut être retirée entièrement (sensor.green.kepler.enabled=false) pour qu'une flotte sans RAPL conserve ses autres signauxLivrév0.3
Gestion des utilisateurs — modifier le nom et les rôles d'un utilisateur, réinitialiser les mots de passe et supprimer un compte selon la règle « désactiver d'abord » ; opérations de mot de passe refusées aux comptes SSOLivrév0.4
Changement de mot de passe en libre-service — Paramètres → Compte, mot de passe actuel exigé, autres sessions fermées pendant que la vôtre reste ouverteLivrév0.4
Auto-réparation du schéma — le hub applique les migrations manquantes à la connexion (hub.autoMigrate) et signale l'état appliqué face à l'attendu via un composant Schéma dans Paramètres → ÉtatLivrév0.4
Connexion derrière un reverse proxy — auth.trustedOrigins et un contrôle d'origine enforce/log/off pour les proxys qui réécrivent HostLivrév0.4
Vue Stockage — connexion ClickHouse (lecture seule), taille, compression et ancienneté par signal, et rétention configurée confrontée au TTL réellement appliqué par les tablesLivrév0.5
Vue Accès — quel rôle peut lire et lequel peut modifier chaque domaine, déduit par le hub des gardes avec lesquelles ses routes sont enregistrées : impossible de diverger de ce qui est appliquéLivrév0.5
Tableau de bord — l'écran d'accueil : santé des groupes de services, topologie compacte, alertes actives et capacité Kubernetes en une seule vue. Chaque bande suit son module et se rabat sur les services les plus actifs, au lieu de disparaître, quand la santé des services est désactivéeLivrév0.5
Mapping des groupes SSO depuis l'interface — Paramètres → Accès affiche les règles OIDC groupe→rôle déclarées dans le chart et permet à un administrateur d'en créer, modifier et supprimer d'autres à côté ; le chart l'emporte en cas de collision de nom et une règle éclipsée dit pourquoi. Un changement s'applique à la prochaine connexion du groupe, sur tout le cluster en ~15 sLivrév0.5
Jetons d'API personnels — émettez, listez et révoquez des jetons bearer dans Paramètres → Accès ; seul le SHA-256 est stocké et la valeur brute n'est montrée qu'une fois. Un jeton est résolu vers les droits vivants de son propriétaire : désactiver un utilisateur désactive tous ses jetons ; un jeton invalide est un 401 net, jamais une rétrogradation anonymeLivrév0.5

À venir

CapacitéÉtatCible
Projets multi-clusters — projets membres agrégeant plusieurs clusters, rétention et statut par projetPrévuv0.6
Compatibilité d'ingestion élargie — récepteurs pour les protocoles courants de traces/métriques/logs en plus d'OTLP, plus des exporteurs de transfert pour les migrations en double écriturePrévuv0.6
Comptabilité du trafic inter-zones (OBI network_inter_zone)Prévuv0.6

:::info La carte des services aujourd'hui Les arêtes de topologie sont dérivées des spans de traces (paires Client/Server inter-services) — et avec le DaemonSet sensor, chaque service HTTP/gRPC est tracé zéro-code : les applications non instrumentées apparaissent aussi. La fonctionnalité network intégrée d'OBI enrichit encore la carte avec les arêtes non instrumentées et la santé réseau par arête lorsqu'elle est activée. L'anneau d'un nœud est lu depuis la consolidation service-health, jamais recalculé sur la carte — un service hors de la couverture de cette consolidation s'affiche unknown, jamais healthy. :::