NEWS
[Skript]Covid 19: 7 Tage Werte aller Landkreise
-
@Michi68 sagte in [Skript]Covid 19: 7 Tage Werte aller Landkreise:
Könntest du wenn du Zeit hast das Script noch mal überarbeiten.
Der Fix ist im ersten Beitrag, der Rest kommt dieser Tage
-
@fastfoot
Klasse vielen Dank, das ging ja schnell klappt wieder alles wie vorher. -
@fastfoot
Achtung: Es hat sich wohl wieder der Fehler im Skript eingeschlichen, den ich schonmal angesprochen hatte:on({id: 'javascript.0.' + idUpdate, change: 'ne'}, () => main())
statt
on({id: idUpdate, change: 'ne'}, () => main())
-
@ak1 sagte in [Skript]Covid 19: 7 Tage Werte aller Landkreise:
@fastfoot
Achtung: Es hat sich wohl wieder der Fehler im Skript eingeschlichen, den ich schonmal angesprochen hatte:on({id: 'javascript.0.' + idUpdate, change: 'ne'}, () => main())
statt
on({id: idUpdate, change: 'ne'}, () => main())
Danke, ist geändert. Später kommt noch das Update mit den Bundesländern und versch. Spielereien um die Daten zu filtern und zu sortieren etc.
-
Update:
- Daten der Bundesländer hinzugefügt
Auswahl über DP showFederalStates - Option, um nur die Daten der Bundesländer anzuzeigen(+eigene Wahl)
Auswahl über DP showFederalStatesOnly - nicht selbst gewählte Städte/Kreise können ausgeblendet werden
Auswahl über DP showAllCounties - ausgewählte BL mit allen Kreisen/Städten werden markiert
Wählen über Variable myBL - eigene Kreise/Städte/Bundesländer werden markiert
- Sortierung nach allen Spalten möglich
Auswahl über DP sort - Bundeslanddaten werden mit !! markiert
- deutsches Zahlenformat optional (ab Node 14.x !)
- Benötigte Datenpunkte werden vom Skript angelegt
- In der VIS wurden Filter- und Sortieroptionen eingebaut.
Die VIS wurde bewusst schlicht gehalten, damit ihr auch noch was zu tun habt
Alles zu finden im ersten Beitrag
- Daten der Bundesländer hinzugefügt
-
@fastfoot hab dein aktuelles Skript genutzt. Das "alte" von Anfang Oktober einwandfrei lief.
Jetzt bekomme ich beim ausführen Fehler:
12:36:12.882 error javascript.0 (492) script.js.CoronaAmpel: ReferenceError: createStateAsync is not defined 12:36:12.882 error javascript.0 (492) at createDatapoints (script.js.CoronaAmpel:207:9) 12:36:12.882 error javascript.0 (492) at main (script.js.CoronaAmpel:269:11) 12:36:12.882 error javascript.0 (492) at script.js.CoronaAmpel:785:1
Hast du ne Idee?
-
@Ash2k sagte in [Skript]Covid 19: 7 Tage Werte aller Landkreise:
@fastfoot hab dein aktuelles Skript genutzt. Das "alte" von Anfang Oktober einwandfrei lief.
Hast du ne Idee?Welche JS Version nutzt du denn?
-
@fastfoot du meinst den js-controller? 3.1.4 ist bei mir noch installiert, Node.js 10.16.3
-
@Ash2k
Dann würde ich beides mal auf Stand bringen.
iobroker auf 3.1.6 und node auf node12.Und den javascript-Adapter auf 4.8.4
-
@Ash2k sagte in [Skript]Covid 19: 7 Tage Werte aller Landkreise:
@fastfoot du meinst den js-controller? 3.1.4 ist bei mir noch installiert, Node.js 10.16.3
Ich meinte den Adapter, das Skript setzt die aktuellen Stable Versionen voraus.
-
@fastfoot hatte eben noch 4.6.17 statt 4.8.4 weil ich letztens gelesen hatte das es Probleme nach Update auf den 4.8.4 gab und ich bislang keine Zeit hatte mich hinzusetzen falls es wirklich Probleme gibt...hab ihn jetzt aktualisiert und teste es gleich nochmal mit deinem Script
-
Sieht jetzt gut aus, danke!
-
Hallo, bei mir sieht das Ganze so aus. Müssten, nach dem starten des Scriptes, nicht alle Felder ausgefüllt werden?
Json zeigt nichts an
showAllCounties steht auf false
showFederalStates steht auf falseMuss ich da im Script etwas ändern?
Bekomme im LOG auch folgende Fehler.
javascript.0 2020-11-19 21:01:09.816 error (22587) at processTicksAndRejections (internal/process/task_queues.js:97:5) javascript.0 2020-11-19 21:01:09.816 error (22587) at runMicrotasks (<anonymous>) javascript.0 2020-11-19 21:01:09.816 error (22587) at /opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49 javascript.0 2020-11-19 21:01:09.815 error (22587) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23) javascript.0 2020-11-19 21:01:09.815 error (22587) at /opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:616:17 javascript.0 2020-11-19 21:01:09.815 error (22587) at /opt/iobroker/node_modules/iobroker.javascript/main.js:1196:17 javascript.0 2020-11-19 21:01:09.815 error (22587) at /opt/iobroker/node_modules/iobroker.javascript/main.js:1645:17 javascript.0 2020-11-19 21:01:09.815 error (22587) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1559:37) javascript.0 2020-11-19 21:01:09.815 error (22587) at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1336:28) javascript.0 2020-11-19 21:01:09.815 error (22587) at Object.createScript (vm.js:261:10) javascript.0 2020-11-19 21:01:09.815 error (22587) at new Script (vm.js:88:7) javascript.0 2020-11-19 21:01:09.814 error (22587) SyntaxError: Identifier 'logging' has already been declared javascript.0 2020-11-19 21:01:09.814 error (22587) ^ javascript.0 2020-11-19 21:01:09.814 error (22587) var logging = true; javascript.0 2020-11-19 21:01:09.814 error (22587) script.js.Tagesschau_1 compile failed: at script.js.Tagesschau_1:19
-
@G4l4h4d sagte in [Skript]Covid 19: 7 Tage Werte aller Landkreise:
Also hier läuft das Skript. Im LOG wird Zeile 19 gezeigt, da sind im Original aber Kommentare. Du solltest obiges Skript noch einmal laden und auch die VIS, da kannst du ShowAllCounties und die BL auch einschalten. Ansonsten solltest Du mindestens eine Stadt in MyCities definieren, am Besten das Skript so wie es ist einmal laufen lassen um Ergebnisse zu sehen. Es ist richtig, alle Felder sollten befüllt sein, ich denke du hast myCities leer oder falsch eingetragen
-
@fastfoot Hi, danke für deine Antwort. Ich habe es mal einen Tag laufen lassen und da kamen dann nach und nach alle Einträge. Jetzt läuft es super.
-
Ich hab mit dem Javascript Adapter 4.10.6 und 4.10.8 das Verhalten, dass mir nach einigen Stunden die javascript Instanz ohne erkennbare Fehler im Log abstürzt.
In den letzten Tagen hab ich angefagen alle Skripte abzuschalten und Stück für Stück wieder zu aktivieren.
Heute um ca. 15:30 Uhr hab ich das Corona 7 Tages Skript (Version vom 7.11) aktiviert und mittlerweile hat sich javascript wieder verabschiedet. Der Speicherverbrauch geht hierbei regelmäßig durch die Decke teilweise bis zu 1 GByte für die Instanz.Sieht jemand bei sich das gleiche Verhalten? @fastfoot Welche Javascript Version nutzt du?
-
@Feuersturm sagte in [Skript]Covid 19: 7 Tage Werte aller Landkreise:
Heute um ca. 15:30 Uhr hab ich das Corona 7 Tages Skript (Version vom 7.11) aktiviert und mittlerweile hat sich javascript wieder verabschiedet. Der Speicherverbrauch geht hierbei regelmäßig durch die Decke teilweise bis zu 1 GByte für die Instanz.
Das kann nicht am Skript liegen, ich programmiere grundsätzlich fehlerfrei! Muhaa, kleiner Scherz, an dem Fehler hab' ich mir vor Wochen einen Wolf gesucht, dachte aber nicht dass ich ihn veröffentlicht hatte, er trat bei mir erst viel später auf. Ich hatte lange jsonata im Verdacht, dann iobroker, mangelnden Speicher, den Rest der Welt Man kann gar nicht lange genug programmieren, um nicht immer wieder auf sich selbst rein zu fallen!
Es liegt daran, dass
setSchedules()
in main() aufgerufen wird, dadurch schaukelt sich das ganze System irgendwann hoch. Meine Absicht war, Fehler zu verhindern, wenn die Datenpunkte erstellt werden, aber bereits eine Subscription darauf existiert. Deshalb ist der Aufruf ganz am Ende von main() und die Subscriptions überhaupt erst in einer function gelandet. Schmeiss es in main() raus und füge am Ende des Skripts den Aufruf mit einem Timeout ein// setup schedules and subscriptions setTimeout(function(){ setSchedules() },1000)
Ich werde es mal noch berichtigen, bist aber der Erste dem das auffällt, ausser mir
-
@Feuersturm sagte in [Skript]Covid 19: 7 Tage Werte aller Landkreise:
Der Speicherverbrauch geht hierbei regelmäßig durch die Decke
Wie hast du die Grafik erstellt, würdest du sie zur Verfügung stellen?
-
@fastfoot Danke für deine schnelle Hilfe. Es ist bei mir aufgefallen, da durch den Javascript Absturz meine anderen Skripte nicht mehr liefen. Ich werde deinen Vorschlag heute mal einbauen.
Die Grafik habe ich mit Grafana gemacht. Die in meinem Screenshot markierten Datenpunkte werden in einer Influx Datenbank gespeichert. Hilft dir das weiter oder was meintest du mit dem Bereitstellen der Grafik?
-
@Feuersturm sagte in [Skript]Covid 19: 7 Tage Werte aller Landkreise:
@fastfoot Danke für deine schnelle Hilfe. Es ist bei mir aufgefallen, da durch den Javascript Absturz meine anderen Skripte nicht mehr liefen. Ich werde deinen Vorschlag heute mal einbauen.
Die Grafik habe ich mit Grafana gemacht. Die in meinem Screenshot markierten Datenpunkte werden in einer Influx Datenbank gespeichert. Hilft dir das weiter oder was meintest du mit dem Bereitstellen der Grafik?
Die Änderung ist im ersten Beitrag eingepflegt, auch habe ich die Ampel angepasst. Die Sortierroutine könnte eigentlich auch raus, die neueste Version der inventwo Widgets kann jetzt auch nach Spalten sortieren
Die Grafik hätte ich gerne als Widget oder View gehabt, allerdings nutze ich weder Grafana noch InfluxDB, so dass es sich erstmal erledigt hat