NEWS
[gelöst] Anzeige FLOT funktioniert nicht?
-
Hallo ich versuche Datenpunkte aus dem SQL History Adapter mit FLOT zu visualisieren.
SQL läuft (als MySQL-DB) und die Daten werden auch aufgezeichnet (siehe Bild1).
Komischerweise ist der Reiter "Grafik" aber leer (siehe Bild 2).
Nun Versuche ich die Daten zu visualisieren mit FLOT. Einstellen kann ich soweit alles, aber das rotierende Rad geht nicht weg und es wird keine Grafik angezeigt. (siehe Bild 3).
Kann mir da jemand über sie Straße helfen
Versionen:
SQL Historie: 1.5.3
FLOT: 1.5.6
Admin: 1.7.3
-
Hast Du mal auf "Update Preview" geklickt?
Gruß,
Eric
-
ja mehrfach, auch "Zeige im Fenster" - das Bild bleibt Leder gleich.
-
Bin jetzt nicht am PC, aber ich denke dass ich bei sql auch keine grafik in dem setup fenster bei den Objekten habe.
Auch habe ich festgestellt, dass einige Optionen nicht oder nicht vollständig bei verschiedenen History Adaptern funktionieren. Ich weiß leider nicht mehr genau was.
Nimm mal bitte probeweise das minmax raus, bzw. alles auf Grundeinstellungen.
Gruß
Rainer
-
Ich habe auch den SQL-Adapter als Speicher und bei mir funktioniert sowohl der Preview als auch das Öffne im neuen Fenster.
Nimm in der ersten Zeile auch mal das Füllen 0 raus (zusätzlich zu Rainers Hinweis).
Gruß,
Eric
Von unterwegs getippert
-
bei mir funktioniert sowohl der Preview als auch das Öffne im neuen Fenster. `
Das funktioniert bei mir auch, aber unter Objekte wird der graph nicht dargestellt.Gruß
Rainer
-
Das muss ich nachher mal nachschauen- benutze das normalerweise nicht.
Gruß,
Eric
Gesendet von iPhone mit Tapatalk
-
Danke für die Antworten. Ich glaube das Problem beginnt bei mir schon früher
Wenn ich FLOT zurück setze, kann ich keine Datenpunkte auswählen, obwohl ich so an die 30 Punkte logge (und einen über history).
Ich habe zur Probe sogar einen Punkte zusätzlich über history geloggt. Das letzte mal habe ich nach einigem Probieren dann endlich auf die Punkte zugreifen können, aber jetzt sind wieder alle weg.
sowohl bei sql.0 als auch bei history.0 - default kommt auch nichts.
Daten habe ich in der Datenbank und sie werden im Admin auch angezeigt.
-
Das ist schon seltsam.
Wie du richtig erkannt hast, kann die Ursache an verschiedenen Stellen liegen.
Da unter Objekte und in der sql Datenbank die Werte vorhanden sind, würde ich die History funktionen ausschließen.
Mein Vorgehen bei so einem Fall wäre
-
reboot des RasPi
-
Deinstallation und reinstallation der flot Instanz
-
Deinstallation und Reinstallation des Flot Adapters.
-
testweise Installation von rickshaw.
In dieser Reihenfolge (bis auf rickshaw, das kann man auch als erstes machen)
Mir gehen halt die Ideen aus.
Gruß
Rainer
-
-
Nutzt du Admin über SSL/HTTPS?
Wenn ja nutze bitte mal die Browserconsole um zu sehen, ob dort beim Öffnen des Preview Fehler auftauchen.
-
Hallo,
danke für die vielen Tipps. Habe inzwischen alles probiert, sogar das ganze System von Anfang an neu installiert.
–> kein Ergebnis
es gibt so komische Nebeneffekte, sodass ich glaube es liegt an der Kommunikation zwischen den beiden Logging-Systemen und FLOT und Rickshaw.
Es gibt bi beiden Visualisieren das Problem, dass die Datenpunkte nicht angezeigt werden. Bei FLOT kann ich sie inzwischen wenigstens auswählen,
bei Rickshaw lässt sich die History-Instanz nicht einmal auswählen.
Auf der Main-Page auf Port 8082 werden weder FLOT noch Rickshaw angezeigt.
Komischerweise funktioniert das ganze bei den Widgets Ich habe mal einen Datenpunkt mit "History Eventlist" oder "History Sparkline" eingebunden.
Bei beiden Widgets werden die Daten einwandfrei angezeigt.
Ich vermute daher dass es Probleme mit der Kompatibilität der Version gibt?
Hier die aktuellen Versionen bei mir:
SQL History: 1.5.3
History: 1.6.2
VIS: 0.10.15
FLOT: 1.5.6
Rickshaw: 0.4.4
ioBroker Simple Web Adapter: 2.0.2
-
Ach so, die Admin-Konsole läuft noch auf HTTP
-
Hallo,
also ich bin jetzt schon mal einen ganzen Schritt weiter. Das Ganze ist ein problem mit dem Zertifikat
Ich habe im web.0 mal HTTPS ausgeschaltet und da ging es einwandfrei. Nachdem ich HTTPS wieder eingeschaltet hatte geht es nich mehr.
Auch die Anzeige der Grafik in den Datenpunkten im admin hatte funktioniert.
Mein Problem stellt sich aktuell wie folgt dar. Ich habe HTTPS konfiguriert und Lets Encrypt aktiviert. Das mit dem Holen des Zertifikats hat auch geklappt,
und wenn ich von außen zugreife, dann nimmt ioBroker auch das Lets Encrypt-Zertifikat.
Nur wenn ich von innen (über die IP des Raspberry) zugreife wird das selbstausgestellte Zertifikat genommen. Ich habe den Rapsberry auch schon mehrfach gebotet, aber das Ergebnis bleibt gleich. M.E. müsste er eigentlich auch intern das Lets Encrypt-Zertifikat nehmen - tut er aber nicht.
Muss ich da noch irgendwo was einstellen?
-
Hallo,
also ich bin jetzt schon mal einen ganzen Schritt weiter. Das Ganze ist ein problem mit dem Zertifikat
Ich habe im web.0 mal HTTPS ausgeschaltet und da ging es einwandfrei. Nachdem ich HTTPS wieder eingeschaltet hatte geht es nich mehr.
Auch die Anzeige der Grafik in den Datenpunkten im admin hatte funktioniert.
Mein Problem stellt sich aktuell wie folgt dar. Ich habe HTTPS konfiguriert und Lets Encrypt aktiviert. Das mit dem Holen des Zertifikats hat auch geklappt,
und wenn ich von außen zugreife, dann nimmt ioBroker auch das Lets Encrypt-Zertifikat.
Nur wenn ich von innen (über die IP des Raspberry) zugreife wird das selbstausgestellte Zertifikat genommen. Ich habe den Rapsberry auch schon mehrfach gebotet, aber das Ergebnis bleibt gleich. M.E. müsste er eigentlich auch intern das Lets Encrypt-Zertifikat nehmen - tut er aber nicht.
Muss ich da noch irgendwo was einstellen? `
Ein Zertifikat ist immer für eine Adresse da. Z.B meindomain.com. Lokal versuchst du aber über IP zu zugreifen. Und da ist Zertifikat ungültig. -
Wenn Admin über SSL läuft, dann bekomme ich ebenfalls:
> Mixed Content: The page at '[https://192.168.0.10:8081/#objects](https://192.168.0.10:8081/#objects)' was loaded over HTTPS, but requested an insecure resource '[http://192.168.0.10:8082/flot/index.htm … tance=null](http://192.168.0.10:8082/flot/index.html?range=1440&zoom=true&axeX=lines&ax%E2%80%A6il=true&height=363&aggregate=onchange&chartType=step&live=30&instance=null)'. This request has been blocked; the content must be served over HTTPS.
-> Das FLOT-Preview bei den States will ohne SSL laden, das geht natürlich nicht. -
Danke für die vielen Tipps. Aber irgendwie bin ich verwirrt :shock:
Ich will auf den ioBroker von "innen" und "außen" zugreifen. Von außen (eigentlich) nur als View (ich weiß dass Edit und FLOT Bestandteile sind, die nicht wirklich zu trennen sind).
Von "innen" will ich eigentlich vom PC aus Edit, FLOT und Admin machen, sowie vom Tablet aus View.
Wie habt Ihr diesen Widerspruch gelöst, dass das Zertifikat nur von außen greift?? Ich habe zwar am PC getrimmt und in die Host-Datei einen zusätzlichen Eintrag gemacht, aber wenn ich vom Tablet zugreifen will, dann muss ich von "außen" zugreifen, damit ich alles sehe
Wie habt Ihr das gemacht?
PS: Eigentlich wollte ich ioBroker gar nicht ins Netz stellen. Wenn ich von außen zugreifen will kann ich das auch gut über ein VPN machen. Aber so wie es Aussicht muss ich dann z.B. auf die Grafiken verzichten
-
Währe Cloud Adapter in deinem Fall nicht einfacher ?
Also kein sll usw sonder ioBroker Cloud mit vis/vlot
–-----------------------
Send from mobile device
-
Hallo Dutchman,
ist wie bei Radio Jerewan - im Prinzip schon.
Ich habe das eben mal getestet. Gefällt mir eigentlich ganz gut, aber ich habe dann auch keine Authentifizierung drin.
Das ist leider deaktiviert, wenn man kein SSL einschaltet - macht theoretisch Sinn, da man das Passwort sniffen könnte, aber ich kann halt auch keine Berechtigungen abstufen wenn zum Beispiel die Frau am Pad zwar VIS machen soll, aber eben nicht FLOT oder EDIT - das funktioniert nur mit Passwort. Über Instanzen kann ich das nicht regeln, da ich in der Instanz nicht sagen, welche Dienste ich zulassen will.
Auf der anderen Seite sehe ich auch, dass die ganze Alexa-Geschichte nicht wirklich funktioniert, wenn das eine Passwort-Abfrage dazwischen ist
Aber im großen und Ganzen hast Du vermutlich Recht - über die Cloud ist besser als eine Portweiterleitung im Router.
Würde mir aber trotzdem wünschen, dass ich die Authentifizierung auch ohne SSL einschalten kann - gerne auch mit Warnmeldung . Dann mache ich für "innen" eine zweite Instanz ohne SSL mit Authentifizierung. Und die andere Instanz beschränke ich auf localhost, damit cloud zugreifen kann, aber kein anderer….
Werde ich mal vorschlagen...
-
Hallo,
ich habe ein sehr ähnliches Problem wie ursprünglich in diesem Thread beschrieben.
iobroker 3.6.2
mySQL 1.10.0
flot 1.9.3Ich habe die Flot Instanz und Adapter bereits mehrmals de-/installiert, PI regebooted aber ich habe immer noch Probleme mit der Visualisierung. Mit History klappt es ohne Probleme. Die Werte kann ich in der mySql DB auch lesen und stimmen auch soweit. Das einzige was mir auffällt ist, wenn ich im flot adapter einen chart erstellen will, werden errors geloggt.
undefined2019-08-11 16:54:32.304 - info: web.0 ==>Connected system.user.admin from ::ffff:192.168.0.107 2019-08-11 16:54:32.593 - info: web.0 ==>Connected system.user.admin from ::ffff:192.168.0.107 2019-08-11 16:54:35.454 - info: web.0 ==>Connected system.user.admin from ::ffff:192.168.0.107 2019-08-11 16:54:35.662 - debug: sql.0 system.adapter.admin.0: logging false 2019-08-11 16:54:35.703 - debug: sql.0 SELECT ts, val FROM `iobroker`.ts_number WHERE `iobroker`.ts_number.id=1 AND `iobroker`.ts_number.ts < 1565538875197 AND `iobroker`.ts_number.ts >= 1565538275197 UNION ( SELECT ts, val FROM `iobroker`.ts_number WHERE `iobroker`.ts_number.id=1 AND `iobroker`.ts_number.ts < 1565538275197 ORDER BY `iobroker`.ts_number.ts DESC LIMIT 1) UNION ( SELECT ts, val FROM `iobroker`.ts_number WHERE `iobroker`.ts_number.id=1 AND `iobroker`.ts_number.ts >= 1565538875197 ORDER BY `iobroker`.ts_number.ts ASC LIMIT 1) ORDER BY ts ASC; 2019-08-11 16:54:35.704 - debug: sql.0 SELECT ts, val FROM `iobroker`.ts_number WHERE `iobroker`.ts_number.id=1 AND `iobroker`.ts_number.ts < 1565538875197 AND `iobroker`.ts_number.ts >= 1565538275197 UNION ( SELECT ts, val FROM `iobroker`.ts_number WHERE `iobroker`.ts_number.id=1 AND `iobroker`.ts_number.ts < 1565538275197 ORDER BY `iobroker`.ts_number.ts DESC LIMIT 1) UNION ( SELECT ts, val FROM `iobroker`.ts_number WHERE `iobroker`.ts_number.id=1 AND `iobroker`.ts_number.ts >= 1565538875197 ORDER BY `iobroker`.ts_number.ts ASC LIMIT 1) ORDER BY ts ASC; 2019-08-11 16:54:35.729 - warn: sql.0 Exception: TypeError: Assignment to constant variable. 2019-08-11 16:54:35.739 - error: sql.0 uncaught exception: Assignment to constant variable. 2019-08-11 16:54:35.740 - error: sql.0 TypeError: Assignment to constant variable. at aggregation (/opt/iobroker/node_modules/iobroker.sql/lib/aggregate.js:43:41) at Object.sendResponse (/opt/iobroker/node_modules/iobroker.sql/lib/aggregate.js:454:29) at getDataFromDB (/opt/iobroker/node_modules/iobroker.sql/main.js:1669:21) at Query.client.execute (/opt/iobroker/node_modules/iobroker.sql/main.js:1568:27) at Query. (/opt/iobroker/node_modules/mysql/lib/Connection.js:525:10) at Query._callback (/opt/iobroker/node_modules/mysql/lib/Connection.js:491:16) at Query.Sequence.end (/opt/iobroker/node_modules/mysql/lib/protocol/sequences/Sequence.js:83:24) at Query._handleFinalResultPacket (/opt/iobroker/node_modules/mysql/lib/protocol/sequences/Query.js:139:8) at Query.EofPacket (/opt/iobroker/node_modules/mysql/lib/protocol/sequences/Query.js:123:8) at Protocol._parsePacket (/opt/iobroker/node_modules/mysql/lib/protocol/Protocol.js:291:23) 2019-08-11 16:54:35.750 - debug: sql.0 INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(1, 1565538314668, 22, 1, 2, 0); 2019-08-11 16:54:35.753 - debug: sql.0 INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(2, 1565538314647, 52, 1, 2, 0); 2019-08-11 16:54:35.756 - debug: sql.0 INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(3, 1565538314658, 1013, 1, 2, 0); 2019-08-11 16:54:35.758 - debug: sql.0 INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(4, 1565538314637, 0, 1, 2, 0); 2019-08-11 16:54:35.761 - debug: sql.0 INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(5, 1565538314678, 4600, 1, 2, 0); 2019-08-11 16:54:35.763 - debug: sql.0 INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(6, 1565538314523, 26, 1, 2, 0); 2019-08-11 16:54:35.766 - debug: sql.0 INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(7, 1565538314608, 16, 1, 2, 0); 2019-08-11 16:54:36.251 - info: sql.0 terminating 2019-08-11 16:54:36.294 - error: Caught by controller[0]: TypeError: Assignment to constant variable. 2019-08-11 16:54:36.295 - error: Caught by controller[0]: at aggregation (/opt/iobroker/node_modules/iobroker.sql/lib/aggregate.js:43:41) 2019-08-11 16:54:36.295 - error: Caught by controller[0]: at Object.sendResponse (/opt/iobroker/node_modules/iobroker.sql/lib/aggregate.js:454:29) 2019-08-11 16:54:36.295 - error: Caught by controller[0]: at getDataFromDB (/opt/iobroker/node_modules/iobroker.sql/main.js:1669:21) 2019-08-11 16:54:36.295 - error: Caught by controller[0]: at Query.client.execute (/opt/iobroker/node_modules/iobroker.sql/main.js:1568:27) 2019-08-11 16:54:36.295 - error: Caught by controller[0]: at Query. (/opt/iobroker/node_modules/mysql/lib/Connection.js:525:10) 2019-08-11 16:54:36.295 - error: Caught by controller[0]: at Query._callback (/opt/iobroker/node_modules/mysql/lib/Connection.js:491:16) 2019-08-11 16:54:36.296 - error: Caught by controller[0]: at Query.Sequence.end (/opt/iobroker/node_modules/mysql/lib/protocol/sequences/Sequence.js:83:24) 2019-08-11 16:54:36.296 - error: Caught by controller[0]: at Query._handleFinalResultPacket (/opt/iobroker/node_modules/mysql/lib/protocol/sequences/Query.js:139:8) 2019-08-11 16:54:36.296 - error: Caught by controller[0]: at Query.EofPacket (/opt/iobroker/node_modules/mysql/lib/protocol/sequences/Query.js:123:8) 2019-08-11 16:54:36.296 - error: Caught by controller[0]: at Protocol._parsePacket (/opt/iobroker/node_modules/mysql/lib/protocol/Protocol.js:291:23) 2019-08-11 16:54:36.296 - error: host.rasp instance system.adapter.sql.0 terminated with code 0 (OK) 2019-08-11 16:54:36.296 - info: host.rasp Restart adapter system.adapter.sql.0 because enabled 2019-08-11 16:54:37.923 - info: web.0 ==>Connected system.user.admin from ::ffff:192.168.0.107 2019-08-11 16:54:44.218 - info: web.0 <==Disconnect system.user.admin from ::ffff:192.168.0.107 flot 2019-08-11 16:54:46.340 - info: web.0 <==Disconnect system.user.admin from ::ffff:192.168.0.107 flot 2019-08-11 16:54:46.343 - info: web.0 <==Disconnect system.user.admin from ::ffff:192.168.0.107 flotEdit 2019-08-11 16:54:46.344 - info: web.0 <==Disconnect system.user.admin from ::ffff:192.168.0.107 flotEditDialog 2019-08-11 16:55:06.327 - info: host.rasp instance system.adapter.sql.0 started with pid 11546 2019-08-11 16:55:09.160 - debug: sql.0 objectDB connected 2019-08-11 16:55:09.204 - debug: sql.0 statesDB connected 2019-08-11 16:55:09.251 - info: sql.0 starting. Version 1.10.0 in /opt/iobroker/node_modules/iobroker.sql, node: v10.16.2
Im Flot Chart habe ich einen neuen Chart angelegt und verschiedene Arten durchprobiert jedoch ohne Erfolg. Im Web Adapter habe ich kein SSL aktiviert.
Hat jemand eine Idee an was es liegen könnte?
-
@bavarian-cowboy ich habe das gleiche Problem. Hast du eine Lösung gefunden?