Zum Hauptinhalt springen

Startseite

Dies ist die Hauptseite der Gateway-Web-UI. Sie zeigt den gesamten Betriebszustand des Gateway in Form von Karten auf einem einzigen Bildschirm an. Die Karten werden im 1-Sekunden-Intervall aktualisiert, indem die Werte vom Backend (/monitor/bean) abgerufen werden. Nur die Sparkplug B-Karte wird separat im 5-Sekunden-Intervall (/api/v1/transfer) aktualisiert.

Edge-Startseite — Gateway-Informationen · Netzwerk · Ressourcen · Erfassung · Server-Karten auf einem Bildschirm

Klicken Sie auf das PlantPulse-Logo oben links oder greifen Sie direkt über http://<gateway>/ui/main zu.

Karten im Containermodus ab 2026.05+
  • MQTT / Sparkplug B / OPC UA Server Karten: Direkter Lookup der Schlüssel app.properties *.enable / host / port / user. Da install.sh für jede Box ein zufälliges Passwort generiert, ist das Feld «user» entweder leer oder wird pro Box unterschiedlich angezeigt.
  • Docker Karte: /var/run/docker.sock Mount erforderlich. plantpulse-edge schließt sich selbst aus (self-exclude) — wird nicht in der Liste angezeigt (Sicherheitsblockierung von Start/Stop/Delete).
  • Netzwerk Karte (LAN1/LAN2/WiFi/GSM/VPN/Management): Mapping über edge.net.<role>.iface Werte. Bei systemd-predictable Namen wie enp1s0 / enp2s0 / tailscale0 (ähnlich wie bei Dev-Boxen) erfolgt die Konfiguration direkt in app.properties (automatische Übernahme über NET1_IFACE=... env in install.sh möglich).
  • Überprüfung der Komponenten-Health in einer Zeile: curl http://localhost/api/v1/system/health (keine Authentifizierung erforderlich, Status-Map der 8 Komponenten + 503-Verzweigung).

Kartenübersicht (insgesamt ~30 Stück)​

Raster mit 6 Spalten. Es gibt drei Arten von Karten:

TypFarbeBedeutung
action_box (weißer Hintergrund, großes Icon)Grauer RandKlick führt zum entsprechenden Menü
black_box (schwarzer Hintergrund)Graue SchriftUnveränderliche Gateway-Informationen
gray_box (weißer Hintergrund, grauer Header)HellgrauEchtzeit-Überwachung — Werte werden jede Sekunde aktualisiert

1. Obere Aktionen / Informationen (Zeile 1)​

1.1 엣지 정보 (black_box)​

Was wird angezeigt: Unveränderliche Identitätsinformationen dieses Gateways. Diese werden nur einmal zum Zeitpunkt des Bootens gemessen und fest im Bildschirm hinterlegt.

FeldBedeutungQuelle
HostnameHostname des OS (z. B. pe-edge-01)EdgeContext.hostname
O/SOS-Name + Architektur (z. B. Linux (amd64))os.name + os.arch
KernelKernel-Version (z. B. 5.14.0-...)os.version
VersionGateway-SW-Version (z. B. V2026.05.08)app.properties
Build-DatumBuild-Datum des Artefakts (z. B. 2026-05-08)BUILD_DATE

⚠ Hostname- und OS-Informationen ändern sich nur, wenn das OS nach einem Neustart des Gateways ausgetauscht wurde.

1.2 프로토콜 연결 하기 (action_box)​

→ Klick führt zu /ui/connect/connect. Bildschirm zum Hinzufügen neuer PLC / OPC-UA / MQTT / Simulator-Verbindungen.

1.3 연결된 목록 (N) (action_box)​

→ Klick führt zu /ui/connect/list. Das N in Klammern gibt die Anzahl der derzeit registrierten OPC-Verbindungen an (monitor.opc_count).

1.4 애플리케이션 (action_box)​

→ /ui/apps. Starten, Stoppen und Verwalten von Docker-basierten Benutzeranwendungen.

1.5 노-코드 플로우 (action_box)​

→ /ui/flow (Node-RED Embed). Detaillierte Nutzung: Flows (Node-RED)

1.6 환경 설정 (action_box)​

→ /ui/system/config. Direkte Bearbeitung von app.properties + Systemneustart / Reboot / Backup / Bereinigung temporärer Dateien usw.


2. Gateway-Identifikation (3 Karten)​

2.1 엣지 시작 시간 (gray_box)​

Was wird angezeigt: Der exakte Zeitpunkt des letzten Bootens des Gateways (Tomcat) — yyyy년 MM월 dd일 [a] HH시 mm분 ss초 (KST). Überprüfen Sie diesen Wert, wenn der Zeitpunkt eines Neustarts fragwürdig ist.

2.2 엣지 ID (gray_box)​

Was wird angezeigt: Die eindeutige ID dieses Gateways (z. B. EDGE_00303). Dies ist die Basis für alle Identifikationen in Sparkplug, REST API, OPC-UA Node-Tree usw. Stammt aus app.properties edge.id.

2.3 배포 사이트 ID (gray_box)​

Was wird angezeigt: In welchem Site (Werk / Linie) dieses Edge platziert ist (z. B. SITE_00001). Wird zur Bestimmung der Group ID für externe SCADA / Sparkplug verwendet. Stammt aus app.properties site.id.


3. Netzwerkstatus (6 Karten)​

Jede Karte zeigt ein Link-Status-Icon + IP oder DISCONNECTED (grau).

3.1 인터넷 (gray_box)​

Prüft, ob das Gateway das externe Internet per Ping erreichen kann. Icon-Farbe:

  • Grübe Globe: Verbindung normal
  • Rote Globe: Verbindung fehlgeschlagen

Das Ping-Ziel ist app.properties monitor.ping.targets (z. B. 8.8.8.8).

3.2 이더넷 (gray_box) — in zwei Bereiche unterteilt​

  • Links: 1 WAN (Externes Netz NIC, net_1_ip)
  • Rechts: 2 PLC (PLC-Netz NIC, net_2_ip)

Die Farben beider Bereiche ändern sich synchron basierend auf dem Internet-Ping-Ergebnis (vereinfachte Darstellung).

3.3 WIFI (gray_box)​

wifi-1 Icon + IP oder wifi-slash grau (DISCONNECTED).

3.4 3G/4G/5G (gray_box)​

IP des GSM-Modems oder DISCONNECTED. SIM-Karten-Icon.

3.5 VPN (gray_box)​

shield-check Icon. Zeigt die IP bei aktiver VPN-Verbindung, ansonsten grau + DISCONNECTED.

3.6 관리 포트 (gray_box)​

wrench Icon. IP des USB / separaten Management-NIC. In der Regel ein Diagnosekanal, der vom Site-Netzwerk getrennt ist.


4. Systemressourcen (5 Karten)​

4.1 온도 (gray_box)​

CPU-Temperatur. Ab 90°C: Rot + temperature-high Icon (Gefahr), darunter: Grün + temperature-low. Primäres Signal für blockierte Lüfter / Hochtemperatur-Alarme in Industrieumgebungen.

4.2 CPU (gray_box)​

Gauge (0–100%) + Gesamtanzahl der Kerne. JustGage Bibliothek. 1-Sekunden-Aktualisierung.

Wenn die Auslastung dauerhaft über 90% liegt, müssen PLC-Polling-Intervalle / Tag-Anzahl geprüft werden.

4.3 물리 메모리 (gray_box)​

Gauge + 사용 / 전체 (automatische Einheiten KB/MB/GB). RSS-Speicherverbrauch unabhängig vom Swap.

4.4 가상 메모리 (gray_box)​

Swap-Auslastung. Gauge + 사용 / 전체. Normalwert 0–10%, bei dauerhaft über 30% besteht die Wahrscheinlichkeit eines RAM-Mangels.

4.5 디스크 (gray_box)​

Auslastung von /data1 (oder Gateway-Home). Gauge + 사용 / 전체.

Bei über 90% sofortiges Ausführen des Verfahrens Bereinigung / Reinigung (clean.sh / node-cleanup.sh).


5. Netzwerkverkehr (1 Karte)​

5.1 네트워크 사용량 (gray_box)​

  • Download (RX) — Akkumulierte empfangene Bytes
  • Upload (TX) — Akkumulierte gesendete Bytes

Automatische Einheiten KB/MB/GB. Akkumulierter Wert seit dem Booten.


6. Erfassung / Verarbeitung (4 Karten)​

6.1 연결 | 태그 건수 (gray_box)​

  • Obere große Zahl: Anzahl Verbindungen (OPC) (opc_count)
  • Untere große Zahl: Anzahl Tags (tag_count)

Gesamtanzahl der vom Gateway bekannten OPC/Tags, einschließlich System-Tags (EDGE_*).

6.2 PLC 연결 및 수집 상태 (gray_box) — 2x4 Matrix​

Links (Verbindung)Bedeutung
🟢 VerbundenAnzahl OPC mit OK TCP/UDP-Verbindung (plc_con_connected_count)
🔴 GetrenntAnzahl OPC mit fehlgeschlagener Verbindung (plc_con_disconnected_count)
Rechts (Erfassung)Bedeutung
🟢 NormalErfassung gestartet + Read erfolgreich (plc_scan_start_count)
🟧 AnomalieErfassung gestartet, aber Read über einen Zeitraum fehlgeschlagen (plc_scan_not_collect_count)
⬜ GestopptVom Benutzer gestopptes OPC (plc_scan_stop_count)

Unterschied zwischen Verbindung und Erfassung: Selbst wenn TCP aktiv ist (Verbindung ✅), wird ein Fall als Erfassungsanomalie eingestuft, wenn aus irgendeinem Grund keine Read-Daten eingehen.

6.3 PLC 읽기/쓰기 결과 (gray_box)​

Akkumulierte Read/Write-Zähler des Erfassers/der REST API. Komprimierte Anzeige in K/M/B Einheiten.

ErfolgFehler
Lesen (R)plc_value_read_success_countplc_value_read_error_count
Schreiben (W)plc_value_write_success_countplc_value_write_error_count

Klick auf das ↻ Refresh-Icon oben rechts → Aufruf von /connect/reset-read-error → Nur Fehlerzähler werden auf 0 zurückgesetzt. Zum Verwenden nach einer Alarmbereinigung, um im nächsten Zyklus neu zu zählen.

6.4 MPS (gray_box)​

Messages Per Second — Anzahl der pro Sekunde verarbeiteten Datenpunkte (monitor.mps). Darunter ein Sparkline (Mini-Trenddiagramm der letzten Werte). Laständerungen auf einen Blick.

Wenn der übliche mps eines Sites bei 100 liegt und plötzlich auf 0 fällt → PLC-Verbindung oder Erfassungsanomalie.


7. Übertragung / Speicherung (5 Karten)​

7.1 대기 큐 (gray_box)​

Größe der Queue für zur Übertragung wartende Punkte (queue_size).

Normalwert 0 bis einige Dutzend. Steigt bei blockierter externer Übertragung (z. B. Sparkplug-Unterbrechung) schnell an → Überlauf in die Disk-Queue (queue_disk_size). Bei kontinuierlichem Anstieg ist die externe Kommunikation zu prüfen.

7.2 포인트 전송 건수 (gray_box)​

Seit dem Booten erfolgreich extern übertragene akkumulierte Punktanzahl (sended_point_count).

7.3 포인트 전송량 (gray_box)​

Seit dem Booten akkumulierte gesendete Bytes (sended_point_bytes). Automatische Einheiten. Referenz für die Abrechnung des Datennutzungsvolumens.

7.4 데이터 저장량 (gray_box)​

Gesamtgröße der Zeitreihen im Cassandra Keyspace pe (Eingabe in MBytes → automatische Einheitenumrechnung). Zusammen mit dem verbleibenden Festplattenplatz betrachten.

7.5 데이터 저장 기간 (gray_box)​

TTL (Time-To-Live) Tage für tm_tag_point (system_db_ttl, Standard: 30 Tage). Daten laufen nach Ablauf dieser Tage automatisch ab. Änderung in app.properties.


8. Systemfehler (1 Karte)​

8.1 시스템 오류 (오늘) (gray_box)​

Anzahl der Systemlogs der Stufe ERROR, die heute (00:00 bis jetzt) aufgetreten sind (system_error_count). Große rote Zahl. Klick auf die Zahl → Weiterleitung zu /system/log/list, um den tatsächlichen Logtext zu prüfen.


9. Externe Dienste / Integration (5 Karten)​

Jede Karte enthält einen Statusbalken (Grün/Rot/Grau) + eine Tabelle mit Verbindungsinformationen.

9.1 플랫폼 API 서버 (gray_box)​

Verbindungsstatus zur übergeordneten PlantPulse Plattform API. Klick auf das Externe-Link-Icon oben rechts öffnet den Server in einem neuen Fenster.

ZeileBedeutung
Balken🟢 Verbindung erfolgreich / 🔴 Verbindung fehlgeschlagen (monitor.api)
HOST/IPserver.host
PORTserver.port
USERserver.username

9.2 OPC-UA 서버 (gray_box)​

Informationen zum internen OPC-UA Server des Gateways. Externe SCADA verbinden sich hier, um Tags zu abonnieren.

ZeileBedeutung
Balken🟢 Aktiviert (Server wird immer betrieben)
HOST/IPopc.ua.server.host
PORTopc.ua.server.tcp.port (Standard 12000)
USERopc.ua.server.user

Details zu Node-Tree / Zeitreihencharts: OPC UA Server verwenden

9.3 MQTT 서버 (gray_box)​

Informationen zum internen HiveMQ des Gateways + Topics für Sparkplug etc.

ZeileBedeutung
Balken🟢 Aktiviert / ⬜ Deaktiviert (mqtt.enable)
HOST/IPmqtt.server.host
PORTmqtt.server.port (Standard 1883)
USERmqtt.server.user
TOPICmqtt.server.topic (Sparkplug spBv1.0/... oder Benutzertopic)

9.4 Sparkplug B (gray_box)​

Echtzeitstatus der Sparkplug-Publishing-Komponente (5-Sekunden-Aktualisierung, Punkt Sparkplug von /api/v1/transfer).

ZeileBedeutung
Balken🟢 Aktiviert (Verbunden) / 🔴 Verbindung getrennt (Aktiv, aber Broker-Verbindung unterbrochen) / ⬜ Deaktiviert (sparkplug.enable=false)
GROUPSparkplug Group ID (z. B. Plant1)
NODEEdge Node ID (z. B. EDGE_00303)
Session #bdSeq (Device Birth/Death Sequenz — Anzahl der Neuverbindungen)
Message #seq (Aktuelle Publish-Nachrichtennummer — Zyklus 0–255)

Bleibt die Message # stehen, ist der Versand unterbrochen. Steigt die Session # häufig an, ist die Broker-Verbindung instabil.

9.5 도커 (gray_box)​

Status des Docker-Daemons + Statistiken der Benutzeranwendungs-Container.

ZeileBedeutung
Balken🟢 In Betrieb / 🔴 Gestoppt (monitor.docker_on)
AnzahlAnzahl der Container [ 살아있는 / 전체 ] (docker_container_up_count / docker_container_total_count)

Überblick, ob alle in /ui/apps registrierten Anwendungen aktiv sind.


Am unteren Bildschirmrand wird Folgendes angezeigt:

  • Text PlantPulse Edge + Lizenz
  • ☁ Software-Upgrade Icon — Klick ruft upgrade.sh auf (nach Bestätigungsdialog)
    • Badge neben dem Icon:
      • Rotes «Upgrade verfügbar!» → Neue Version auf dem Download-Server vorhanden
      • Graues «Download-Server nicht erreichbar» → Externes Netz / Zugriff auf product.kopens.io fehlgeschlagen
      • (Kein Badge) → Aktuelle Version ist die neueste
  • Externe Port-Kürzel — Öffnen anderer externer Dienste (z. B. Grafana 3000) in einem neuen Fenster.

Intern ruft /config/upgrade/check per Server-to-Server https://product.kopens.io/.../VERSION.JSON ab und vergleicht diese, um das Badge sauber ohne CORS-Fehler anzuzeigen.


11. Aktualisierungsintervalle / Datenquellen​

BereichAktualisierungsintervallEndpunkt
Gauges / Ressourcen / Netzwerk / Zähler / Queues / Speichermenge / Fehler1 SekundeGET /monitor/bean
Sparkplug B Karte5 SekundenGET /api/v1/transfer
Upgrade-Badge1x beim Laden der SeiteGET /config/upgrade/check
Schwarze Info-Karten (Hostname/OS/Version etc.)Keine Aktualisierung (Wert zum Zeitpunkt des Seitenladens)EdgeContext (festgelegt beim Server-Boot)

12. Häufige Muster​

Signal auf dem BildschirmVerdacht / Aktion
Temperatur Rot (90°C↑)Blockierte Lüfter / Umgebungstemperatur — Sofortige Inspektion
CPU dauerhaft 90%+Polling-Intervall zu schnell / zu viele Tags
Disk 90%+Bereinigung und Reinigung — clean.sh + node-cleanup.sh
PLC-Unterbrechung Zähler steigt plötzlichPLC-Netzwerk Kabel / Switch / PLC-Stromversorgung
Erfassungsanomalie > 0Verbindung OK, aber Read fehlgeschlagen — Adressformat / PLC-Firmware prüfen
MPS fällt auf 0Alle PLCs Read-Fehler oder Erfassung gestoppt
Warte-Queue steigt kontinuierlichExterne Übertragung (Sparkplug / MQTT) blockiert — Karten 9.3/9.4 prüfen
Systemfehler Rote ZahlKlick → Inhalt in /system/log/list prüfen
Sparkplug Message # ändert sich nichtVersand unterbrochen — app.properties sparkplug.* prüfen
Docker RotDaemon-Status in systemctl status docker prüfen

13. Weiterführende Informationen​