LandauOne

Données en direct

Du capteur au graphique, sans trou silencieux

Les mesures arrivent par ce que vous exploitez déjà, sont vérifiées avant d’être conservées, et apparaissent dans chaque module qui les vise. Les deux modules Moniteur existent pour que vous n’ayez jamais à le croire sur parole.

  1. 1

    Elle arrive

    Depuis vos brokers de messages, un simple appel HTTP, ou l’exporteur de journaux que vous utilisez déjà.

  2. 2

    Elle est triée

    En mesure, cap ou position — et une valeur visant le mauvais type de capteur est refusée plutôt que stockée pour ce qu’elle n’est pas.

  3. 3

    Elle est vérifiée

    Les horodatages sont tenus dans une fenêtre que vous configurez : un émetteur à l’horloge déréglée ne peut pas écrire dans l’année prochaine.

  4. 4

    Elle est comptée une fois

    Une mesure livrée deux fois est reconnue comme la même mesure, au lieu de dévier discrètement une moyenne de sa course.

  5. 5

    Elle est sous vos yeux

    Sur un graphique, une tuile, un marqueur de carte ou un plan d’étage — partout où vous avez pointé quelque chose vers elle.

Mesures, caps et positions

Trois types de relevés, séparés à dessein. Un cap se moyenne autour du cercle et non à travers la couture 0°/360°, où la moyenne naïve de 350° et 10° donnerait plein sud.

Synthétisé à votre façon

Chaque graphique et chaque tuile choisit sa synthèse par intervalle : moyenne, minimum, maximum, somme, nombre, médiane et percentiles, enveloppes de pointes, écart type, deltas de compteurs ou couverture des données — les percentiles sont précalculés lors du compactage de chaque jour et de chaque mois, si bien qu’un P95 coûte ce que coûte une moyenne. Les directions ont droit à de vraies statistiques circulaires — un cap de boussole, la distribution par secteurs d’une rose des vents — et les positions se tracent en trajectoires dans le temps plutôt que d’être moyennées en un point jamais visité.

Textes et journaux aussi

Les journaux applicatifs et les charges de texte personnalisées arrivent par le même chemin et atterrissent dans l’Explorateur de logs — interrogeables par identifiant, source et temps, et marqués par vos groupes de surlignage.

Les pertes sont comptées, jamais supposées

Ce qui se perd malgré tout est signalé comme tel plutôt qu’oublié en silence. C’est le chiffre qui mérite une alerte, et il figure sur les pages Moniteur au lieu d’être enfoui.

Des lots, quand votre passerelle en a

Chaque transport accepte un lot de mesures par message — une passerelle qui vide d’un coup une seconde d’échantillons de ses capteurs — aussi bien qu’une mesure à la fois. C’est la forme en lots qui permet à une seule instance d’ingestion d’absorber des centaines de milliers de mesures par seconde.

Des écouteurs qui se réparent seuls

Un consommateur de broker bloqué sur une connexion morte est repéré, signalé sur le point de santé et redémarré — sur chaque transport, de la même façon — au lieu de rester silencieux pendant que les mesures s’accumulent sans être vues.

Pour les ingénieurs

Sous le capot : un pipeline ETL en continu

Si votre équipe pense en termes d’ingénierie des données, le chemin d’ingestion est un ETL — extraction, transformation, chargement — qui tourne en continu plutôt que sur un planning nocturne. La transformation est terminée avant que quoi que ce soit n’atteigne le stockage de long terme : ce qui est stocké est déjà la forme canonique et propre que lit chaque module.

Extraction

Les mesures arrivent des brokers de messages que vous exploitez déjà, ou en HTTP simple. Les noms de champs du producteur sont projetés sur une forme canonique unique dès l’entrée — rien en aval ne voit jamais un format propre à une source, et ajouter une source ne change jamais ce qui est stocké.

Transformation

Avant le stockage, chaque mesure est validée, son horodatage normalisé et tenu dans la fenêtre acceptée, une relivraison reconnue comme la même mesure, et son type — mesure, cap ou position — décidé. Les mesures sont ensuite réduites en synthèses à la minute, calculées correctement à travers toutes les instances de réception, pas machine par machine.

Chargement

Un balayage distinct écrit les minutes achevées dans la base de données, découplé de l’arrivée — un stockage lent retarde le stockage, jamais l’ingestion, et les pages Moniteur montrent exactement le retard de l’étape de chargement. À la clôture du mois, les mois scellés sont repliés en forme compacte de requête, dans la base elle-même.

Le pipeline en continu : les producteurs via MQTT, Kafka, Service Bus, Event Hubs, HTTP et journaux convergent vers l’extraction, la transformation et le tampon acquitté, sont chargés dans la base de données, et chaque étape rend compte aux moniteurs. frontière de durabilité Vos producteurs MQTT Kafka Azure Service Bus Azure Event Hubs HTTP Journaux (OTLP) 1 Extraction champs mappés à l’entrée une forme canonique nouvelle source = config, le stockage ne change pas 2 Transformation validé · fenêtre d’horodatage doublons comptés une fois mesure · cap · position réduit en synthèses à la minute Tampon ✓ acquitté au producteur 3 Chargement balayé, découplé de l’arrivée historique à la minute replié chaque mois en forme compacte de requête Les modules Moniteur accepté · rejeté et pourquoi · en attente · retard
Le trajet complet d’une mesure : de nombreuses sources, une forme canonique, vérifiée avant d’être conservée — acquittée seulement à la frontière de durabilité, et surveillée à chaque couture.

Les trois mêmes étapes portent les textes et les journaux — extraits des mêmes brokers, du protocole de télémétrie standard pour les journaux et de HTTP simple, et chargés en fichiers compressés plutôt qu’en lignes de base de données : le volume de journaux ne pèse jamais sur la base.