flexway
FRENParler à un expert

Console : l'écran Appareils

Lire les appareils MQTT et les nœuds Sparkplug B dans la console, régler ses cinq règles intégrées et ce que voit un lecteur.

GuideExploitationDepuis la version 1.7.0

Markdown

Sur cette page

Guide d'exploitation : configurer, déployer et observer la passerelle. Ce que fait la fonctionnalité côté produit : guide produit ; l'appeler : guide développeur.

L'écran Appareils (/devices, après Agents) montre l'écouteur MQTT des appareils et les nœuds Sparkplug B : connexions, refus, quotas, nœuds en ligne et hors ligne de toutes les répliques. Il apparaît dès que la passerelle déclare listeners.mqtt ; rien à activer dans la console.

Étapes

Lire l'écran

Partie Ce qu'elle montre Qui
Synthèse (fenêtre choisie) Appareils connectés (hors anonymes), part MQTT 5, PUBLISH admis par seconde, latence ajoutée p95, refus par cause, connexions par mode d'identité, quotas et contre-pression par tenant (lien vers Consommation pour le quota du jour), écarts de séquence cumulés Tous ; un lecteur, son tenant
Nœuds Sparkplug (sans fenêtre, filtre « En ligne », « Hors ligne ») Les tables de toutes les répliques fusionnées : un nœud repris par une autre réplique est rattaché, jamais hors ligne ; les nœuds d'une réplique qui ne répond plus restent listés une heure, marqués « Réplique muette » ; applications hôtes et leur STATE Tous ; un lecteur, son tenant
Panneau d'un nœud (/devices/<groupe>/<nœud>) État, appareils, entrée de chaque réplique (la bascule), écarts, commandes admises et refusées - jamais une valeur Tous ; réglages de bascule et courtier aux admins
Limites de l'écouteur MQTT Bornes en vigueur, refus par borne (8 bornes), fermetures normales par cause (8 causes), redirections et reprises, occupation de max_connections de la réplique la plus chargée, capacité de la table des nœuds et nœuds non gardés Admins, sans filtre de tenant
Bornes du tenant et des appareils max_connections_per_tenant, max_connection_rate_per_tenant, listeners.mqtt.tenant, listeners.mqtt.device Admins ; un lecteur, sauf si l'exploitant les masque
Bandeaux Tempête de reconnexions (refus par débit >= 10/min), quotas atteints, courtier injoignable, nœuds rattachés Selon la donnée

Les comptes de nœuds et les rattachements viennent des tables des répliques : ils restent lus quand les métriques ne répondent pas.

Régler les cinq règles intégrées

Dans les valeurs du chart de la console, alerts.builtins (Alerter depuis la console) :

Règle Défaut Réglables
device-connections-refused Plus de 5 % des CONNECT refusés sur 5 min, dès 20, for 5 min ; le dénominateur compte les refus par borne ; sujet : mqtt threshold, minRequests, for, excludeCauses (les 8 causes authentication, not_authorized, binding, wildcard, payload_invalid, quota, packet_too_large, upstream_unavailable et les 8 bornes max_connections, max_unauthenticated_connections, max_connections_per_ip, max_connection_rate_per_ip, max_connections_per_tenant, max_connection_rate_per_tenant, connect_rate_per_identity, max_sessions_per_identity), enabled
sparkplug-node-offline Au moins 1 nœud hors ligne dans la table fusionnée, for 2 min ; un nœud rattaché n'est pas hors ligne ; valeur : le nombre de nœuds et de tenants, jamais un nom threshold (un nombre), for, enabled
mqtt-listener-saturation La réplique la plus chargée au-delà de 90 % de max_connections, for 5 min ; sujets : les répliques threshold, for, enabled
device-throttled Désactivée ; activée : plus de 1 % des appareils retenus par la contre-pression, for 10 min enabled, threshold, for
sparkplug-sequence-gaps Désactivée ; activée : au moins 10 écarts seq ou bdSeq sur 5 min ; valeur : le nombre de tenants enabled, threshold (un nombre), for

values.yaml

# valeurs du chart de la console
alerts:
  builtins:
    - { name: device-connections-refused, excludeCauses: [authentication, upstream_unavailable] }
    - { name: sparkplug-node-offline, threshold: 3, for: 5m }    # un nombre de nœuds, pas une part
    - { name: sparkplug-sequence-gaps, enabled: true, threshold: 50 }

Masquer les bornes aux lecteurs

values.yaml

# valeurs du chart de la console
devices:
  readerBounds: hide   # show par défaut ; FLEXWAY_CONSOLE_DEVICES_READER_BOUNDS

Les bornes de l'écouteur et les refus d'avant toute identité restent aux admins quel que soit ce réglage.

Vérifier

  • L'écran Appareils liste les nœuds de chaque réplique ; arrêter une réplique qui draine : ses nœuds passent « rattachés » sur une autre, jamais hors ligne.
  • Diagnostic -> Alertes : les cinq règles, device-throttled et sparkplug-sequence-gaps « Désactivées » sauf réglage ; le seuil réglé à la place du défaut.
  • GET /api/alerts : tuning.threshold_kind vaut count pour les deux règles Sparkplug, ratio pour les autres.

À savoir

Sujet Ce qu'il faut savoir
Fusion Par tenant et nœud : l'entrée à la naissance la plus récente l'emporte, bdSeq en départage ; un nœud vu seulement par ses commandes n'est pas listé
Réplique muette La console garde la dernière table de chaque réplique une heure : ses nœuds restent listés, marqués, sauf en ligne ailleurs
Réplique perdue Aucune trace de bascule : le nœud réapparaît en ligne sur une autre réplique ; sparkplug-node-offline attend 2 min
Lecture La console interroge GET /sparkplug/nodes de chaque réplique toutes les 15 s (32 Mio au plus par réplique)
Noms Les noms de nœuds et d'appareils ne sont jamais dans une métrique : aucune courbe par nœud, des compteurs cumulés
Pas montré Octets MQTT par seconde (aucune métrique), traces par nœud
Seuils des bandeaux Tempête : refus par débit >= 10/min ; quotas : un refus de quota ou de max_connections_per_tenant ; courtier : un upstream_unavailable ; rattachement : un nœud rattaché
Admin filtré sur un tenant Voit l'écouteur et les refus aux bornes du tenant, pas les limites de l'écouteur

Disponible depuis 1.7.0.

Étapes suivantes