Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. maximum of 1000 setState during boot

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    15
    1
    810

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    680

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.9k

maximum of 1000 setState during boot

Geplant Angeheftet Gesperrt Verschoben JavaScript
53 Beiträge 13 Kommentatoren 5.5k Aufrufe 10 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • AsgothianA Asgothian

    @hschief sagte in maximum of 1000 setState during boot:

    @hschief
    Ich habe nun mal folgendes Testscript angelegt

    function Test1() {
        log('In Function','error');
        //var Modulation = getState('ems-esp.0.heatSources.hs1.curburnpow').val;
        //var currentConsumption = Math.round(6.94 * Modulation) / 10; // 1 Nachkommastelle
        setState('0_userdata.0.Allgemein.TestBoot', 'test', false);
    };
     
    log('Script Test1 aufgerufen','error');
    schedule("*/10 * * * * *", Test1 );
    

    Im normalen Betrieb erhalte ich alle 10s nun die Meldung "In Function", wie es zu erwarten war.

    Beim Boot passtiert im Log aber Folgendes:
    Ich erhalte mehr als 1000 Einträge mir folgender Meldung
    2024-04-16 14:25:31.532 - error: javascript.0 (726) script.js.Technik.Heizung.BootTestScript: In Function
    2024-04-16 14:25:31.553 - error: javascript.0 (726) script.js.Technik.Heizung.BootTestScript: In Function
    2024-04-16 14:25:31.559 - error: javascript.0 (726) script.js.Technik.Heizung.BootTestScript: In Function
    2024-04-16 14:25:31.573 - error: javascript.0 (726) script.js.Technik.Heizung.BootTestScript: In Function
    2024-04-16 14:25:31.580 - error: javascript.0 (726) script.js.Technik.Heizung.BootTestScript: In Function
    2024-04-16 14:25:31.591 - error: javascript.0 (726) script.js.Technik.Heizung.BootTestScript: In Function
    2024-04-16 14:25:31.598 - error: javascript.0 (726) script.js.Technik.Heizung.BootTestScript: In Function
    2024-04-16 14:25:31.610 - error: javascript.0 (726) script.js.Technik.Heizung.BootTestScript: In Function
    2024-04-16 14:25:31.622 - error: javascript.0 (726) script.js.Technik.Heizung.BootTestScript: In Function
    2024-04-16 14:25:31.634 - error: javascript.0 (726) script.js.Technik.Heizung.BootTestScript: In Function
    2024-04-16 14:25:31.642 - error: javascript.0 (726) script.js.Technik.Heizung.BootTestScript: In Function

    Könnte evtl. mal jemand versuchen dies bei sich nachzustellen? Wenn das Verhalten bei einer anderen Installation beim boot reproduzierbar ist, dann würde ich einen Fehlerbericht erstellen

    Poste doch bitte auch 1 mal die vollständige Fehlermeldung. Der interessante Teil ist bei deinem Post abgeschnitten.

    A.

    H Offline
    H Offline
    hschief
    schrieb am zuletzt editiert von
    #16

    @asgothian
    Hi, nun zu der Fehlermeldung ... sorry, ja dies ist im Text missvertständlich ausgedrückt. Ich hatte ein kleines Testscript gebaut, bei dem einfach nur alle 10s über die LogDirective die Meldung: in Function ausgegeben wird.

    Es gibt leider keine Fehlermeldung ausser maximum 1000 setstate reached. Die Meldungen die zu sehen sind, sind die Ausgaben des Scripts, die eigentlich ja nur 6x Minute erscheinen dürfen.

    1 Antwort Letzte Antwort
    0
    • Thomas BraunT Thomas Braun

      @hschief sagte in maximum of 1000 setState during boot:

      node 18.17.1

      Zu alt, updaten.

      iob nodejs-update
      

      Wenn das nicht funktioniert

      iob stop
      iob fix
      

      und dann nochmal nodejs-update.

      H Offline
      H Offline
      hschief
      schrieb am zuletzt editiert von
      #17

      @thomas-braun said in maximum of 1000 setState during boot:

      iob nodejs-update

      Update durchgeführt, aktuelle Version ist jetzt: v.18.20.2, Fehler ist aber auch nach dem Update da.

      Noch eine zusätzliche Info, wenn ich nach dem start des IOBrokers ein
      iobroker restart javascript.0 läuft alles sauber.

      Evtl. braucht der JavaScript Adapter andere Dienste die zu diesem Zeitpunkt noch nicht verfügbar sind ... nur eine Idee.

      paul53P mcm1957M HomoranH 3 Antworten Letzte Antwort
      0
      • H hschief

        @thomas-braun said in maximum of 1000 setState during boot:

        iob nodejs-update

        Update durchgeführt, aktuelle Version ist jetzt: v.18.20.2, Fehler ist aber auch nach dem Update da.

        Noch eine zusätzliche Info, wenn ich nach dem start des IOBrokers ein
        iobroker restart javascript.0 läuft alles sauber.

        Evtl. braucht der JavaScript Adapter andere Dienste die zu diesem Zeitpunkt noch nicht verfügbar sind ... nur eine Idee.

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #18

        @hschief sagte: Evtl. braucht der JavaScript Adapter andere Dienste die zu diesem Zeitpunkt noch nicht verfügbar sind ... nur eine Idee.

        Dann starte mal den schedule() mit einigen Sekunden Verzögerung.

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        1 Antwort Letzte Antwort
        0
        • H hschief

          @thomas-braun said in maximum of 1000 setState during boot:

          iob nodejs-update

          Update durchgeführt, aktuelle Version ist jetzt: v.18.20.2, Fehler ist aber auch nach dem Update da.

          Noch eine zusätzliche Info, wenn ich nach dem start des IOBrokers ein
          iobroker restart javascript.0 läuft alles sauber.

          Evtl. braucht der JavaScript Adapter andere Dienste die zu diesem Zeitpunkt noch nicht verfügbar sind ... nur eine Idee.

          mcm1957M Online
          mcm1957M Online
          mcm1957
          schrieb am zuletzt editiert von
          #19

          @hschief
          Falls hier keine Lösung kommt oder wenn klar ist was passiert und das nicht als eh klar zu klassifizieren ist , erstell bitte jedenfalls ein Issue beim Javascript Adapter. Weil so ganz erklärbar ist das Verhaltend derzeit nicht. Und auch wenn ein Startverzögerung der Problem beheben sollte, rege ich an zu prüfen ob die nicht dann gleich zentral im Adapter erfolgen sollte. Das mjuss sich aber jemand ansehen der den Adapter in und auswendig kennt...

          Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
          Support Repositoryverwaltung.

          Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

          LESEN - gute Forenbeitrage

          P H 2 Antworten Letzte Antwort
          0
          • mcm1957M mcm1957

            @hschief
            Falls hier keine Lösung kommt oder wenn klar ist was passiert und das nicht als eh klar zu klassifizieren ist , erstell bitte jedenfalls ein Issue beim Javascript Adapter. Weil so ganz erklärbar ist das Verhaltend derzeit nicht. Und auch wenn ein Startverzögerung der Problem beheben sollte, rege ich an zu prüfen ob die nicht dann gleich zentral im Adapter erfolgen sollte. Das mjuss sich aber jemand ansehen der den Adapter in und auswendig kennt...

            P Offline
            P Offline
            peterfido
            schrieb am zuletzt editiert von
            #20

            Vielleicht sollte beim Testskript der Zeitstempel geschrieben werden. So könnte man sehen, ob Cron evtl. "denkt", dass es da noch einige Auslösungen in Verzug hat, falls Cron überhaupt "verpasste" Einsätze nachholt.

            Gruß

            Peterfido


            Proxmox auf Intel NUC12WSHi5
            ioBroker: Debian (VM)
            CCU: Debmatic (VM)
            Influx: Debian (VM)
            Grafana: Debian (VM)
            eBus: Debian (VM)
            Zigbee: Debian (VM) mit zigbee2mqtt

            1 Antwort Letzte Antwort
            0
            • mcm1957M mcm1957

              @hschief
              Falls hier keine Lösung kommt oder wenn klar ist was passiert und das nicht als eh klar zu klassifizieren ist , erstell bitte jedenfalls ein Issue beim Javascript Adapter. Weil so ganz erklärbar ist das Verhaltend derzeit nicht. Und auch wenn ein Startverzögerung der Problem beheben sollte, rege ich an zu prüfen ob die nicht dann gleich zentral im Adapter erfolgen sollte. Das mjuss sich aber jemand ansehen der den Adapter in und auswendig kennt...

              H Offline
              H Offline
              hschief
              schrieb am zuletzt editiert von
              #21

              @mcm57 ich folge mal deinem Rat und mache dies unter dem Adapter als Issue auf.

              Ich habe eben noch folgenden Test gemacht:

              function Test1() {
                  log('In Function','error');
                  setState('0_userdata.0.Allgemein.TestBoot', 'test', false);
              };
              
              
              log('Script Test1 gestartet:','error');
              
              
              setTimeout(function(){schedule("*/10 * * * * *", Test1 )},50000);
              

              Hier müsste beim Boot im Log ja als erstes der Log mit dem Text: "Script Test1 gestartet" erscheinen und dann deutlich später die Meldung: "In Function" alle 10s.

              Das Ergebnis beim Boot sieht aber wie Folgt aus: 12:51:32 ... letzte Meldung vor dem Shutdown und dann um 12:55:26.076 direkt die Meldung "In Function" ... sieht so aus als würde die schedule Anweisung komplett ignoriert.

              2024-04-17 12:51:32.643 - ^[[32minfo^[[39m: nina.0 (903) terminating
              2024-04-17 12:55:26.076 - ^[[31merror^[[39m: javascript.0 (954) script.js.Technik.Heizung.BootTestScript: In Function
              2024-04-17 12:55:26.140 - ^[[31merror^[[39m: javascript.0 (954) script.js.Technik.Heizung.BootTestScript: In Function
              2024-04-17 12:55:26.184 - ^[[31merror^[[39m: javascript.0 (954) script.js.Technik.Heizung.BootTestScript: In Function

              Vielen, Vielen Dank für die Tipps und Ideen!

              P 1 Antwort Letzte Antwort
              0
              • mcm1957M mcm1957

                @arteck

                Ich möcht nur kurz den Fokus drauf richten, dass das eigentliche Problem ist, dass scheinbar nur beim booten das Limit von 1000 setStates / Minute überschritten wird obwohl die Croneinstellung deutlich weniger setStates auslösen sollte. Alle 10s eine Abfrage sind nur 6 setStates / Minute.

                Ob Cron nun sinnvoll ist oder nicht ist durchaus eine berechtigte Diskussion - aber das Problem erklärt das mal nicht. Entweder funktioniert Cron nicht richtig beim Startup oder die Limitberechnung funktioniert nicht oder irgendwas (aber was?) führt wirklich mehr als 1000/min setStates aus. Und diese Frage sollte m.E. geklärt werden.

                (Alle 10s eine Abfrage sind nur 6 setStates / Minute)

                Leider hab ich zum eigentlichen Problem keine Idee was da abgeht. @haus-automatisierung fällt dir da was dazu ein?

                haus-automatisierungH Online
                haus-automatisierungH Online
                haus-automatisierung
                Developer Most Active
                schrieb am zuletzt editiert von
                #22

                @mcm57 sagte in maximum of 1000 setState during boot:

                Leider hab ich zum eigentlichen Problem keine Idee was da abgeht. @haus-automatisierung fällt dir da was dazu ein?

                So spontan nicht. Konnte jemand das Verhalten auf seinem eigenen System reproduzieren?

                🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                📚 Meine inoffizielle ioBroker Dokumentation

                mcm1957M 1 Antwort Letzte Antwort
                0
                • haus-automatisierungH haus-automatisierung

                  @mcm57 sagte in maximum of 1000 setState during boot:

                  Leider hab ich zum eigentlichen Problem keine Idee was da abgeht. @haus-automatisierung fällt dir da was dazu ein?

                  So spontan nicht. Konnte jemand das Verhalten auf seinem eigenen System reproduzieren?

                  mcm1957M Online
                  mcm1957M Online
                  mcm1957
                  schrieb am zuletzt editiert von
                  #23

                  @haus-automatisierung
                  Ja,
                  Gibt mittlerweile ein Issue mit einem Testsckrip wo das repoduzierbar sein soll (habs nicht selbst getestet)

                  https://github.com/ioBroker/ioBroker.javascript/issues/1552

                  Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                  Support Repositoryverwaltung.

                  Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                  LESEN - gute Forenbeitrage

                  H 1 Antwort Letzte Antwort
                  1
                  • mcm1957M mcm1957

                    @haus-automatisierung
                    Ja,
                    Gibt mittlerweile ein Issue mit einem Testsckrip wo das repoduzierbar sein soll (habs nicht selbst getestet)

                    https://github.com/ioBroker/ioBroker.javascript/issues/1552

                    H Offline
                    H Offline
                    hschief
                    schrieb am zuletzt editiert von
                    #24

                    @mcm57 Ich habe das dort als Issue auf deinen Rat hin aufgenommen, ich hoffe dies war vom Ablauf ok,

                    1 Antwort Letzte Antwort
                    1
                    • P Offline
                      P Offline
                      peterfido
                      schrieb am zuletzt editiert von
                      #25

                      @hschief
                      ich habe das Testskript auf meinem zweiten iobroker getestet. Keine mehrfachen Aufrufe beim Start zu entdecken.

                      2024-04-17 19:40:51.936 - info: javascript.0 (706) starting. Version 7.8.0 in /opt/iobroker/node_modules/iobroker.javascript, node: v18.20.2, js-controller: 5.0.19
                      2024-04-17 19:40:52.184 - info: javascript.0 (706) requesting all states
                      2024-04-17 19:40:52.185 - info: javascript.0 (706) requesting all objects
                      2024-04-17 19:40:52.446 - info: javascript.0 (706) received all objects
                      2024-04-17 19:40:52.493 - info: javascript.0 (706) received all states
                      2024-04-17 19:40:52.574 - info: javascript.0 (706) Start javascript script.js.Scripte.CronJobs
                      2024-04-17 19:40:52.590 - error: javascript.0 (706) script.js.Scripte.CronJobs: Script Test1 aufgerufen
                      2024-04-17 19:40:52.606 - info: javascript.0 (706) script.js.Scripte.CronJobs: registered 0 subscriptions, 1 schedule, 0 messages, 0 logs and 0 file subscriptions
                      2024-04-17 19:40:55.160 - info: host.iob instance system.adapter.simple-api.0 started with pid 721
                      2024-04-17 19:40:55.593 - info: simple-api.0 (721) starting. Version 2.7.2 in /opt/iobroker/node_modules/iobroker.simple-api, node: v18.20.2, js-controller: 5.0.19
                      2024-04-17 19:40:55.599 - warn: simple-api.0 (721) Information for Developer: Using the direct "Let's encrypt" module import is deprecated and will be removed in the next js-controller version, use @iobroker/webserver instead
                      2024-04-17 19:40:55.600 - info: simple-api.0 (721) simpleAPI server listening on port 8087
                      2024-04-17 19:40:55.601 - info: simple-api.0 (721) Allow states only when user is owner: false
                      2024-04-17 19:40:55.603 - info: simple-api.0 (721) http server listening on port 8087
                      2024-04-17 19:40:59.155 - info: host.iob instance system.adapter.socketio.0 started with pid 736
                      2024-04-17 19:40:59.643 - info: socketio.0 (736) starting. Version 6.6.1 in /opt/iobroker/node_modules/iobroker.socketio, node: v18.20.2, js-controller: 5.0.19
                      2024-04-17 19:40:59.652 - warn: socketio.0 (736) Information for Developer: Using the direct "Let's encrypt" module import is deprecated and will be removed in the next js-controller version, use @iobroker/webserver instead
                      2024-04-17 19:40:59.664 - info: socketio.0 (736) socket.io server listening on port 8088
                      2024-04-17 19:41:00.005 - error: javascript.0 (706) script.js.Scripte.CronJobs: In Function
                      2024-04-17 19:41:10.002 - error: javascript.0 (706) script.js.Scripte.CronJobs: In Function
                      2024-04-17 19:41:20.001 - error: javascript.0 (706) script.js.Scripte.CronJobs: In Function
                      
                      

                      Gruß

                      Peterfido


                      Proxmox auf Intel NUC12WSHi5
                      ioBroker: Debian (VM)
                      CCU: Debmatic (VM)
                      Influx: Debian (VM)
                      Grafana: Debian (VM)
                      eBus: Debian (VM)
                      Zigbee: Debian (VM) mit zigbee2mqtt

                      HomoranH 1 Antwort Letzte Antwort
                      0
                      • P peterfido

                        @hschief
                        ich habe das Testskript auf meinem zweiten iobroker getestet. Keine mehrfachen Aufrufe beim Start zu entdecken.

                        2024-04-17 19:40:51.936 - info: javascript.0 (706) starting. Version 7.8.0 in /opt/iobroker/node_modules/iobroker.javascript, node: v18.20.2, js-controller: 5.0.19
                        2024-04-17 19:40:52.184 - info: javascript.0 (706) requesting all states
                        2024-04-17 19:40:52.185 - info: javascript.0 (706) requesting all objects
                        2024-04-17 19:40:52.446 - info: javascript.0 (706) received all objects
                        2024-04-17 19:40:52.493 - info: javascript.0 (706) received all states
                        2024-04-17 19:40:52.574 - info: javascript.0 (706) Start javascript script.js.Scripte.CronJobs
                        2024-04-17 19:40:52.590 - error: javascript.0 (706) script.js.Scripte.CronJobs: Script Test1 aufgerufen
                        2024-04-17 19:40:52.606 - info: javascript.0 (706) script.js.Scripte.CronJobs: registered 0 subscriptions, 1 schedule, 0 messages, 0 logs and 0 file subscriptions
                        2024-04-17 19:40:55.160 - info: host.iob instance system.adapter.simple-api.0 started with pid 721
                        2024-04-17 19:40:55.593 - info: simple-api.0 (721) starting. Version 2.7.2 in /opt/iobroker/node_modules/iobroker.simple-api, node: v18.20.2, js-controller: 5.0.19
                        2024-04-17 19:40:55.599 - warn: simple-api.0 (721) Information for Developer: Using the direct "Let's encrypt" module import is deprecated and will be removed in the next js-controller version, use @iobroker/webserver instead
                        2024-04-17 19:40:55.600 - info: simple-api.0 (721) simpleAPI server listening on port 8087
                        2024-04-17 19:40:55.601 - info: simple-api.0 (721) Allow states only when user is owner: false
                        2024-04-17 19:40:55.603 - info: simple-api.0 (721) http server listening on port 8087
                        2024-04-17 19:40:59.155 - info: host.iob instance system.adapter.socketio.0 started with pid 736
                        2024-04-17 19:40:59.643 - info: socketio.0 (736) starting. Version 6.6.1 in /opt/iobroker/node_modules/iobroker.socketio, node: v18.20.2, js-controller: 5.0.19
                        2024-04-17 19:40:59.652 - warn: socketio.0 (736) Information for Developer: Using the direct "Let's encrypt" module import is deprecated and will be removed in the next js-controller version, use @iobroker/webserver instead
                        2024-04-17 19:40:59.664 - info: socketio.0 (736) socket.io server listening on port 8088
                        2024-04-17 19:41:00.005 - error: javascript.0 (706) script.js.Scripte.CronJobs: In Function
                        2024-04-17 19:41:10.002 - error: javascript.0 (706) script.js.Scripte.CronJobs: In Function
                        2024-04-17 19:41:20.001 - error: javascript.0 (706) script.js.Scripte.CronJobs: In Function
                        
                        
                        HomoranH Nicht stören
                        HomoranH Nicht stören
                        Homoran
                        Global Moderator Administrators
                        schrieb am zuletzt editiert von
                        #26

                        @peterfido

                        gilt das bei dir auch:

                        @hschief sagte in maximum of 1000 setState during boot:

                        Javascript Version 7.8.0
                        node 18.17.1
                        jscontroller 5.0.19

                        ?

                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                        P 1 Antwort Letzte Antwort
                        0
                        • HomoranH Homoran

                          @peterfido

                          gilt das bei dir auch:

                          @hschief sagte in maximum of 1000 setState during boot:

                          Javascript Version 7.8.0
                          node 18.17.1
                          jscontroller 5.0.19

                          ?

                          P Offline
                          P Offline
                          peterfido
                          schrieb am zuletzt editiert von peterfido
                          #27

                          @homoran Steht in der ersten Zeile meines Logs. Mein System ist mit node 18.20.2 aktueller.

                          Gruß

                          Peterfido


                          Proxmox auf Intel NUC12WSHi5
                          ioBroker: Debian (VM)
                          CCU: Debmatic (VM)
                          Influx: Debian (VM)
                          Grafana: Debian (VM)
                          eBus: Debian (VM)
                          Zigbee: Debian (VM) mit zigbee2mqtt

                          1 Antwort Letzte Antwort
                          0
                          • H hschief

                            @thomas-braun said in maximum of 1000 setState during boot:

                            iob nodejs-update

                            Update durchgeführt, aktuelle Version ist jetzt: v.18.20.2, Fehler ist aber auch nach dem Update da.

                            Noch eine zusätzliche Info, wenn ich nach dem start des IOBrokers ein
                            iobroker restart javascript.0 läuft alles sauber.

                            Evtl. braucht der JavaScript Adapter andere Dienste die zu diesem Zeitpunkt noch nicht verfügbar sind ... nur eine Idee.

                            HomoranH Nicht stören
                            HomoranH Nicht stören
                            Homoran
                            Global Moderator Administrators
                            schrieb am zuletzt editiert von
                            #28

                            @peterfido

                            mit der gerade gefundenen Antwort
                            @hschief sagte in maximum of 1000 setState during boot:

                            @thomas-braun said in maximum of 1000 setState during boot:

                            iob nodejs-update

                            Update durchgeführt, aktuelle Version ist jetzt: v.18.20.2, Fehler ist aber auch nach dem Update da.

                            seid ihr also was diese Versionen angeht, identisch!
                            Sehr gut.

                            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                            P H 2 Antworten Letzte Antwort
                            0
                            • HomoranH Homoran

                              @peterfido

                              mit der gerade gefundenen Antwort
                              @hschief sagte in maximum of 1000 setState during boot:

                              @thomas-braun said in maximum of 1000 setState during boot:

                              iob nodejs-update

                              Update durchgeführt, aktuelle Version ist jetzt: v.18.20.2, Fehler ist aber auch nach dem Update da.

                              seid ihr also was diese Versionen angeht, identisch!
                              Sehr gut.

                              P Offline
                              P Offline
                              peterfido
                              schrieb am zuletzt editiert von
                              #29

                              @homoran Evtl. nützlich: Meine iobroker sind VMs unter proxmox. Die Uhren stehen auf Host.

                              Gruß

                              Peterfido


                              Proxmox auf Intel NUC12WSHi5
                              ioBroker: Debian (VM)
                              CCU: Debmatic (VM)
                              Influx: Debian (VM)
                              Grafana: Debian (VM)
                              eBus: Debian (VM)
                              Zigbee: Debian (VM) mit zigbee2mqtt

                              1 Antwort Letzte Antwort
                              0
                              • HomoranH Homoran

                                @peterfido

                                mit der gerade gefundenen Antwort
                                @hschief sagte in maximum of 1000 setState during boot:

                                @thomas-braun said in maximum of 1000 setState during boot:

                                iob nodejs-update

                                Update durchgeführt, aktuelle Version ist jetzt: v.18.20.2, Fehler ist aber auch nach dem Update da.

                                seid ihr also was diese Versionen angeht, identisch!
                                Sehr gut.

                                H Offline
                                H Offline
                                hschief
                                schrieb am zuletzt editiert von
                                #30

                                @homoran ich hatte die Version ja auf anraten hochgezogen, mir ist aber gestern bei der Erstellung des Issues im Debug Log folgendes aufgefallen, was auch durch dein Log hier nochmals bestätigt wird:

                                Mein Log fängt direkt mit den Meldungen der Function an und nicht mit der Initialisierung des Javascript Adapters. Jetzt kann es natürlich sein, dass Meldungen auf meinem System nur einfach zeitlich vorher in den Log kommen. Ich vermute aber eher, dass der Adapter aus irgendeinem Grund noch nicht vollständig gestartet ist,

                                Shutdown at 13:55:35 -> Boot at 13:59:24
                                2024-04-17 13:55:35.534 - ^[[32minfo^[[39m: javascript.0 (2626) terminating
                                2024-04-17 13:59:24.355 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function
                                2024-04-17 13:59:24.410 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function
                                2024-04-17 13:59:24.441 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function
                                2024-04-17 13:59:24.475 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function
                                2024-04-17 13:59:24.492 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function

                                Vielen Dank fürs testen, somit scheint es kein allgemeiner Fehler sondern eher eine ganz spezielles Zusammenspiel beim booten zu sein. Kann man irgendwo die Reihenfolge der Adapter beim Starten vorgeben?

                                W paul53P 2 Antworten Letzte Antwort
                                0
                                • H hschief

                                  @homoran ich hatte die Version ja auf anraten hochgezogen, mir ist aber gestern bei der Erstellung des Issues im Debug Log folgendes aufgefallen, was auch durch dein Log hier nochmals bestätigt wird:

                                  Mein Log fängt direkt mit den Meldungen der Function an und nicht mit der Initialisierung des Javascript Adapters. Jetzt kann es natürlich sein, dass Meldungen auf meinem System nur einfach zeitlich vorher in den Log kommen. Ich vermute aber eher, dass der Adapter aus irgendeinem Grund noch nicht vollständig gestartet ist,

                                  Shutdown at 13:55:35 -> Boot at 13:59:24
                                  2024-04-17 13:55:35.534 - ^[[32minfo^[[39m: javascript.0 (2626) terminating
                                  2024-04-17 13:59:24.355 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function
                                  2024-04-17 13:59:24.410 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function
                                  2024-04-17 13:59:24.441 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function
                                  2024-04-17 13:59:24.475 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function
                                  2024-04-17 13:59:24.492 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function

                                  Vielen Dank fürs testen, somit scheint es kein allgemeiner Fehler sondern eher eine ganz spezielles Zusammenspiel beim booten zu sein. Kann man irgendwo die Reihenfolge der Adapter beim Starten vorgeben?

                                  W Online
                                  W Online
                                  Wildbill
                                  schrieb am zuletzt editiert von
                                  #31

                                  @hschief Ich habe mir angewöhnt, bei einem Neustart des iobroker (also vor dem Reboot nach Kernel-Updates beispielsweise, oder wenn der js-controller ein Update bekommt) einfach vor dem Beenden selbstständig bestimmte Adapter anzuhalten. Bei mir sind das javascript, Sourceanalytix und devicewatcher. Die starte ich dann erst manuell, wenn die restlichen Adapter wieder laufen. Javascript, da anonsten diverse Scripte mit falschen Werten laufen würden, da manche Adapter hier vor dem Start manchmal „falsche“ Werte anzeigen, Sourceanalytix aus demselben Grund, weil beispielsweise Homematic-Stecker mit Strimmessung hier kurz auf 0 springen und der device-watcher, weil sonst Meldungen über viele Offline-Geräte kommen, weil die jeweiligen Adapter eben noch nicht gestartet sind und deren Geräte teilweise bei alive auf false stehen würden.

                                  Hat sich bewährt bei mir. Ob sich das irgendwie automatisieren lässt, so dass man eine Reihenfolge für Adapterstarts (selbst) einstellen kann, weiss ich nicht. Ich meine, mal gelesen zu haben, dass der Adapter-Ersteller hier zumindest selbst Abhängigkeiten hingterlegen kann, so dass voneinander abhängige Adapter/Instanzen in korrekter Reihenfolge starten.
                                  Ungeplante Neustarts von iobroker kommen bei mir höchstens mal vor, wenn ein Stromausfall länger dauert, die USVs leer laufen und die Hosts runterfahren ohne dass ich vorher selbst aktiv geworden wäre. Also höchst selten.

                                  Gruss, Jürgen

                                  haus-automatisierungH 1 Antwort Letzte Antwort
                                  0
                                  • H hschief

                                    @homoran ich hatte die Version ja auf anraten hochgezogen, mir ist aber gestern bei der Erstellung des Issues im Debug Log folgendes aufgefallen, was auch durch dein Log hier nochmals bestätigt wird:

                                    Mein Log fängt direkt mit den Meldungen der Function an und nicht mit der Initialisierung des Javascript Adapters. Jetzt kann es natürlich sein, dass Meldungen auf meinem System nur einfach zeitlich vorher in den Log kommen. Ich vermute aber eher, dass der Adapter aus irgendeinem Grund noch nicht vollständig gestartet ist,

                                    Shutdown at 13:55:35 -> Boot at 13:59:24
                                    2024-04-17 13:55:35.534 - ^[[32minfo^[[39m: javascript.0 (2626) terminating
                                    2024-04-17 13:59:24.355 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function
                                    2024-04-17 13:59:24.410 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function
                                    2024-04-17 13:59:24.441 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function
                                    2024-04-17 13:59:24.475 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function
                                    2024-04-17 13:59:24.492 - ^[[31merror^[[39m: javascript.0 (953) script.js.Technik.Heizung.BootTestScript: In Function

                                    Vielen Dank fürs testen, somit scheint es kein allgemeiner Fehler sondern eher eine ganz spezielles Zusammenspiel beim booten zu sein. Kann man irgendwo die Reihenfolge der Adapter beim Starten vorgeben?

                                    paul53P Offline
                                    paul53P Offline
                                    paul53
                                    schrieb am zuletzt editiert von paul53
                                    #32

                                    @hschief sagte: spezielles Zusammenspiel beim booten zu sein.

                                    Es ist mir unerklärlich wie Node.js zwischen Start nach Boot und normalem Neustart von ioBroker unterscheiden kann.
                                    Vielleicht passiert etwas Eigenartiges beim Shutdown? Hast du mal ioBroker vor dem Shutdown gestoppt?

                                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                    1 Antwort Letzte Antwort
                                    0
                                    • H hschief

                                      @mcm57 ich folge mal deinem Rat und mache dies unter dem Adapter als Issue auf.

                                      Ich habe eben noch folgenden Test gemacht:

                                      function Test1() {
                                          log('In Function','error');
                                          setState('0_userdata.0.Allgemein.TestBoot', 'test', false);
                                      };
                                      
                                      
                                      log('Script Test1 gestartet:','error');
                                      
                                      
                                      setTimeout(function(){schedule("*/10 * * * * *", Test1 )},50000);
                                      

                                      Hier müsste beim Boot im Log ja als erstes der Log mit dem Text: "Script Test1 gestartet" erscheinen und dann deutlich später die Meldung: "In Function" alle 10s.

                                      Das Ergebnis beim Boot sieht aber wie Folgt aus: 12:51:32 ... letzte Meldung vor dem Shutdown und dann um 12:55:26.076 direkt die Meldung "In Function" ... sieht so aus als würde die schedule Anweisung komplett ignoriert.

                                      2024-04-17 12:51:32.643 - ^[[32minfo^[[39m: nina.0 (903) terminating
                                      2024-04-17 12:55:26.076 - ^[[31merror^[[39m: javascript.0 (954) script.js.Technik.Heizung.BootTestScript: In Function
                                      2024-04-17 12:55:26.140 - ^[[31merror^[[39m: javascript.0 (954) script.js.Technik.Heizung.BootTestScript: In Function
                                      2024-04-17 12:55:26.184 - ^[[31merror^[[39m: javascript.0 (954) script.js.Technik.Heizung.BootTestScript: In Function

                                      Vielen, Vielen Dank für die Tipps und Ideen!

                                      P Offline
                                      P Offline
                                      peterfido
                                      schrieb am zuletzt editiert von
                                      #33

                                      @hschief sagte in maximum of 1000 setState during boot:

                                      function Test1() { log('In Function','error'); setState('0_userdata.0.Allgemein.TestBoot', 'test', false); }; log('Script Test1 gestartet:','error'); setTimeout(function(){schedule("*/10 * * * * *", Test1 )},50000);

                                      Ich habe das eben mit der Verzögerung getestet.:

                                      2024-04-18 11:42:27.863 - info: host.iob instance system.adapter.javascript.0 started with pid 705
                                      2024-04-18 11:42:28.702 - info: javascript.0 (705) starting. Version 7.8.0 in /opt/iobroker/node_modules/iobroker.javascript, node: v18.20.2, js-controller: 5.0.19
                                      2024-04-18 11:42:28.931 - info: javascript.0 (705) requesting all states
                                      2024-04-18 11:42:28.932 - info: javascript.0 (705) requesting all objects
                                      2024-04-18 11:42:29.223 - info: javascript.0 (705) received all objects
                                      2024-04-18 11:42:29.269 - info: javascript.0 (705) received all states
                                      2024-04-18 11:42:29.383 - info: javascript.0 (705) Start javascript script.js.Scripte.CronJobs
                                      2024-04-18 11:42:29.405 - error: javascript.0 (705) script.js.Scripte.CronJobs: Script Test1 gestartet:
                                      2024-04-18 11:42:29.406 - info: javascript.0 (705) script.js.Scripte.CronJobs: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
                                      2024-04-18 11:42:31.861 - info: host.iob instance system.adapter.simple-api.0 started with pid 720
                                      2024-04-18 11:42:32.347 - info: simple-api.0 (720) starting. Version 2.7.2 in /opt/iobroker/node_modules/iobroker.simple-api, node: v18.20.2, js-controller: 5.0.19
                                      2024-04-18 11:42:32.355 - warn: simple-api.0 (720) Information for Developer: Using the direct "Let's encrypt" module import is deprecated and will be removed in the next js-controller version, use @iobroker/webserver instead
                                      2024-04-18 11:42:32.358 - info: simple-api.0 (720) simpleAPI server listening on port 8087
                                      2024-04-18 11:42:32.358 - info: simple-api.0 (720) Allow states only when user is owner: false
                                      2024-04-18 11:42:32.362 - info: simple-api.0 (720) http server listening on port 8087
                                      2024-04-18 11:42:35.867 - info: host.iob instance system.adapter.socketio.0 started with pid 735
                                      2024-04-18 11:42:36.419 - info: socketio.0 (735) starting. Version 6.6.1 in /opt/iobroker/node_modules/iobroker.socketio, node: v18.20.2, js-controller: 5.0.19
                                      2024-04-18 11:42:36.433 - warn: socketio.0 (735) Information for Developer: Using the direct "Let's encrypt" module import is deprecated and will be removed in the next js-controller version, use @iobroker/webserver instead
                                      2024-04-18 11:42:36.452 - info: socketio.0 (735) socket.io server listening on port 8088
                                      2024-04-18 11:43:20.004 - error: javascript.0 (705) script.js.Scripte.CronJobs: In Function
                                      2024-04-18 11:43:30.001 - error: javascript.0 (705) script.js.Scripte.CronJobs: In Function
                                      

                                      Somit bei mir wie es soll.

                                      Gruß

                                      Peterfido


                                      Proxmox auf Intel NUC12WSHi5
                                      ioBroker: Debian (VM)
                                      CCU: Debmatic (VM)
                                      Influx: Debian (VM)
                                      Grafana: Debian (VM)
                                      eBus: Debian (VM)
                                      Zigbee: Debian (VM) mit zigbee2mqtt

                                      1 Antwort Letzte Antwort
                                      0
                                      • W Wildbill

                                        @hschief Ich habe mir angewöhnt, bei einem Neustart des iobroker (also vor dem Reboot nach Kernel-Updates beispielsweise, oder wenn der js-controller ein Update bekommt) einfach vor dem Beenden selbstständig bestimmte Adapter anzuhalten. Bei mir sind das javascript, Sourceanalytix und devicewatcher. Die starte ich dann erst manuell, wenn die restlichen Adapter wieder laufen. Javascript, da anonsten diverse Scripte mit falschen Werten laufen würden, da manche Adapter hier vor dem Start manchmal „falsche“ Werte anzeigen, Sourceanalytix aus demselben Grund, weil beispielsweise Homematic-Stecker mit Strimmessung hier kurz auf 0 springen und der device-watcher, weil sonst Meldungen über viele Offline-Geräte kommen, weil die jeweiligen Adapter eben noch nicht gestartet sind und deren Geräte teilweise bei alive auf false stehen würden.

                                        Hat sich bewährt bei mir. Ob sich das irgendwie automatisieren lässt, so dass man eine Reihenfolge für Adapterstarts (selbst) einstellen kann, weiss ich nicht. Ich meine, mal gelesen zu haben, dass der Adapter-Ersteller hier zumindest selbst Abhängigkeiten hingterlegen kann, so dass voneinander abhängige Adapter/Instanzen in korrekter Reihenfolge starten.
                                        Ungeplante Neustarts von iobroker kommen bei mir höchstens mal vor, wenn ein Stromausfall länger dauert, die USVs leer laufen und die Hosts runterfahren ohne dass ich vorher selbst aktiv geworden wäre. Also höchst selten.

                                        Gruss, Jürgen

                                        haus-automatisierungH Online
                                        haus-automatisierungH Online
                                        haus-automatisierung
                                        Developer Most Active
                                        schrieb am zuletzt editiert von
                                        #34

                                        @wildbill sagte in maximum of 1000 setState during boot:

                                        Ich meine, mal gelesen zu haben, dass der Adapter-Ersteller hier zumindest selbst Abhängigkeiten hingterlegen kann, so dass voneinander abhängige Adapter/Instanzen in korrekter Reihenfolge starten.

                                        Genau, es gibt verschiedene Tier-Level, welche die Startreihenfolge festlegen. Damit zB Logikadapter laufen, bevor die ersten Werte kommen

                                        🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                                        🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                                        📚 Meine inoffizielle ioBroker Dokumentation

                                        H W 2 Antworten Letzte Antwort
                                        2
                                        • haus-automatisierungH haus-automatisierung

                                          @wildbill sagte in maximum of 1000 setState during boot:

                                          Ich meine, mal gelesen zu haben, dass der Adapter-Ersteller hier zumindest selbst Abhängigkeiten hingterlegen kann, so dass voneinander abhängige Adapter/Instanzen in korrekter Reihenfolge starten.

                                          Genau, es gibt verschiedene Tier-Level, welche die Startreihenfolge festlegen. Damit zB Logikadapter laufen, bevor die ersten Werte kommen

                                          H Offline
                                          H Offline
                                          hschief
                                          schrieb am zuletzt editiert von
                                          #35

                                          @haus-automatisierung Vielen Dank für die tollen Antworten und auch die Information, dass der Fehler bei euch nicht reproduziert werden kann, Ich werde das Issue in GitHub erstmal schliessen und weiter forschen um das Problem einzugrenzen. Ich berichte was sich weiter ergibt.

                                          haus-automatisierungH 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          556

                                          Online

                                          32.6k

                                          Benutzer

                                          81.9k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe