Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [gelöst] Restart von Skripten nach Restart javascript-Inst.?

    NEWS

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    [gelöst] Restart von Skripten nach Restart javascript-Inst.?

    This topic has been deleted. Only users with topic management privileges can see it.
    • hsteinme
      hsteinme last edited by hsteinme

      Ich starte im Scripts-Tab ein Testprogramm, das periodisch Logdatei-Einträge vornehmen soll.

      Konsequenz:

      • Die gewünschten Logdatei-Einträge werden vorgenommen.
      • Unter javascript.0.scriptEnabled ist das Skript mit "true" gekennzeichnet.
      • Das Testprogramm ist im Scripts-Tab als laufend markiert (grünes Doppelbalken-Icon).

      Nun führe ich einen Restart der zugehörigen javascript-Instanz durch und warte bis die Instanz wieder grün markiert ist.

      Konsequenz:

      • Die gewünschten Logdatei-Einträge werden nicht mehr vorgenommen.
      • Unter javascript.0.scriptEnabled ist das Skript mit "false" gekennzeichnet.
      • Das Testprogramm ist im Scripts-Tab weiterhin als laufend markiert (grünes Doppelbalken-Icon).
      • Das Testprogramm ist im Scripts-Tab auch nach einem Refresh der Seite weiterhin als laufend markiert (grünes Doppelbalken-Icon).
      • Das Testprogramm ist im Scripts-Tab auch nach einem Wechsel des Browsers weiterhin als laufend markiert (grünes Doppelbalken-Icon).

      Ähnlich verhält es sich übrigens bei einem ioBroker Restart.

      Dazu drei Fragen:

      • Liege ich denn mit meiner Erwartung falsch, dass nach einem Restart der javascript-Instanz vorher laufende Skripte wieder automatisch gestartet werden sollten?
      • Ist der fehlende Restart von Skripten nach einem Restart der javascript-Instanz in Euren Augen ein Feature oder ein Fehler?
      • Fühle ich mich denn durch den falschen Status im Scripts-Tab zu Recht vereimert?

      6c68b3e8-9d7a-4f82-ba7f-44f776623e90-image.png
      69032d5a-7b88-4c21-907e-b262a6c3ea0f-image.png

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @hsteinme last edited by paul53

        @hsteinme sagte: Liege ich denn mit meiner Erwartung falsch, dass nach einem Restart der javascript-Instanz vorher laufende Skripte wieder automatisch gestartet werden sollten?

        Nein, Du liegst richtig.

        @hsteinme sagte in Autom. Restart von Skripten nach Restart javascript-Instanz?:

        Ist der fehlende Restart von Skripten nach einem Restart der javascript-Instanz in Euren Augen ein Feature oder ein Fehler?

        Das ist ein Fehler, der anscheinend nur bei Dir auftritt. Bei mir (Version 5.5.2) werden alle aktivierten Skripte nach Instanz- bzw. ioBroker-Restart gestartet.

        @hsteinme sagte in Autom. Restart von Skripten nach Restart javascript-Instanz?:

        Testprogramm, das periodisch Logdatei-Einträge vornehmen soll.

        Wie sieht das Skript aus?

        hsteinme 1 Reply Last reply Reply Quote 0
        • hsteinme
          hsteinme @paul53 last edited by

          @paul53 Die geschilderte Problematik ist skript-unabhängig. Sie tritt bei mir mit allen Javaskripten auf. Zur Reproduktion des Fehlers habe ich letztlich ein Mini-Skriptlein verwendet, bei dem ich sehr einfach erkennen kann, ob es aktiv ist:

          'use strict';
          setInterval(function() {
              log('Hier bin ichhhhhhhhhhhhhhhhhhhhhh');
          }, 20000);
          
          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @hsteinme last edited by paul53

            @hsteinme
            Welche Version des Javascript-Adapters und des js-controllers?

            hsteinme 1 Reply Last reply Reply Quote 0
            • hsteinme
              hsteinme @paul53 last edited by

              @paul53

              • Javascript-Adapter 5.2.21
              • js-controller 4.0.15
              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @hsteinme last edited by paul53

                @hsteinme
                Ich verwende zwar neuere Versionen (latest), aber daran sollte es nicht liegen. Insbesondere verwundert mich:

                Unter javascript.0.scriptEnabled ist das Skript mit "false" gekennzeichnet.

                Was sagt das Protokoll nach dem JS-Instanz-Start zu?

                info	Start javascript script.js.Skriptname
                
                hsteinme 1 Reply Last reply Reply Quote 0
                • hsteinme
                  hsteinme @paul53 last edited by

                  @paul53 sagte in Autom. Restart von Skripten nach Restart javascript-Instanz?:

                  Insbesondere verwundert mich:

                  Unter javascript.0.scriptEnabled ist das Skript mit "false" gekennzeichnet.

                  Warum wundert Dich das? das "false" passt doch zu der Situation, dass die Skripte nicht laufen.

                  Hier das den Javascript Adapter betreffende Log während Stop- und Start des Adapters:

                  2022-03-30 20:08:20.091  - info: javascript.0 (869) Start javascript script.js.common.Allgemeines._Test~
                  2022-03-30 20:08:20.117  - info: javascript.0 (869) script.js.common.Allgemeines._Test~: registered 0 subscriptions and 0 schedules
                  2022-03-30 20:08:25.118  - info: javascript.0 (869) script.js.common.Allgemeines._Test~: Hier bin ichhhhhhhhhhhhhhhhhhhhhh
                  ... und einige Logeinträge mehr
                  2022-03-30 20:09:10.120  - info: javascript.0 (869) script.js.common.Allgemeines._Test~: Hier bin ichhhhhhhhhhhhhhhhhhhhhh
                  2022-03-30 20:09:15.121  - info: javascript.0 (869) script.js.common.Allgemeines._Test~: Hier bin ichhhhhhhhhhhhhhhhhhhhhh
                  2022-03-30 20:09:19.644  - info: javascript.0 (869) Adapter is disabled => stop
                  2022-03-30 20:09:19.646  - info: javascript.0 (869) Stop script script.js.common.Allgemeines.AlexaSpeakers
                  2022-03-30 20:09:19.647  - info: javascript.0 (869) Stop script script.js.common.Allgemeines.AlexaVolumes
                  ... alle aktiven Skripte werden angehalten
                  2022-03-30 20:09:19.703  - info: javascript.0 (869) Stop script script.js.common.Haushalt.LandroidSteuerung
                  2022-03-30 20:09:19.703  - info: javascript.0 (869) Stop script script.js.common.Haushalt.RoombaSteuerung
                  2022-03-30 20:09:19.704  - info: javascript.0 (869) Stop script script.js.common.Allgemeines._Test~
                  2022-03-30 20:09:19.741  - info: host.RaspberryPi "system.adapter.javascript.0" disabled
                  2022-03-30 20:09:19.747  - info: host.RaspberryPi stopInstance system.adapter.javascript.0 (force=false, process=true)
                  2022-03-30 20:09:20.120  - info: javascript.0 (869) Got terminate signal TERMINATE_YOURSELF
                  2022-03-30 20:09:20.176  - info: javascript.0 (869) terminating
                  2022-03-30 20:09:20.178  - debug: javascript.0 (869) Plugin sentry destroyed
                  2022-03-30 20:09:20.178  - info: javascript.0 (869) Terminated (NO_ERROR): Without reason
                  2022-03-30 20:09:21.179  - info: javascript.0 (869) terminating with timeout
                  2022-03-30 20:09:21.230  - info: host.RaspberryPi stopInstance system.adapter.javascript.0 send kill signal
                  2022-03-30 20:09:22.463  - info: host.RaspberryPi stopInstance system.adapter.javascript.0 killing pid 869
                  2022-03-30 20:09:23.132  - info: host.RaspberryPi instance system.adapter.javascript.0 terminated with code 0 (NO_ERROR)
                  2022-03-30 20:09:41.713  - info: host.RaspberryPi "system.adapter.javascript.0" enabled
                  2022-03-30 20:09:42.114  - info: host.RaspberryPi instance system.adapter.javascript.0 started with pid 16223
                  2022-03-30 20:09:45.113  - debug: javascript.0 (16223) Redis Objects: Use Redis connection: 127.0.0.1:9001
                  2022-03-30 20:09:45.175  - debug: javascript.0 (16223) Objects client ready ... initialize now
                  2022-03-30 20:09:45.178  - debug: javascript.0 (16223) Objects create System PubSub Client
                  2022-03-30 20:09:45.179  - debug: javascript.0 (16223) Objects create User PubSub Client
                  2022-03-30 20:09:45.283  - debug: javascript.0 (16223) Objects client initialize lua scripts
                  2022-03-30 20:09:45.314  - debug: javascript.0 (16223) Objects connected to redis: 127.0.0.1:9001
                  2022-03-30 20:09:45.410  - debug: javascript.0 (16223) Redis States: Use Redis connection: 127.0.0.1:9000
                  2022-03-30 20:09:45.478  - debug: javascript.0 (16223) States create System PubSub Client
                  2022-03-30 20:09:45.479  - debug: javascript.0 (16223) States create User PubSub Client
                  2022-03-30 20:09:45.542  - debug: javascript.0 (16223) States connected to redis: 127.0.0.1:9000
                  2022-03-30 20:09:45.793  - debug: javascript.0 (16223) Plugin sentry Initialize Plugin (enabled=true)
                  2022-03-30 20:09:46.409  - info: javascript.0 (16223) starting. Version 5.2.21 in /opt/iobroker/node_modules/iobroker.javascript, node: v12.22.10, js-controller: 4.0.15
                  2022-03-30 20:09:46.509  - debug: javascript.0 (16223) Loaded TypeScript definitions for node: ["node_modules/@types/node/package.json","node_modules/@types/node/index.d.ts","node_modules/@types/node/assert.d.ts","node_modules/@types/node/globals.d.ts","node_modules/@types/node/async_hooks.d.ts","node_modules/@types/node/buffer.d.ts","node_modules/@types/node/child_process.d.ts","node_modules/@types/node/cluster.d.ts","node_modules/@types/node/console.d.ts","node_modules/@types/node/constants.d.ts","node_modules/@types/node/crypto.d.ts","node_modules/@types/node/dgram.d.ts","node_modules/@types/node/dns.d.ts","node_modules/@types/node/domain.d.ts","node_modules/@types/node/events.d.ts","node_modules/@types/node/fs.d.ts","node_modules/@types/node/http.d.ts","node_modules/@types/node/http2.d.ts","node_modules/@types/node/https.d.ts","node_modules/@types/node/inspector.d.ts","node_modules/@types/node/module.d.ts","node_modules/@types/node/net.d.ts","node_modules/@types/node/os.d.ts","node_modules/@types/node/path.d.ts","node_modules/@types/node/perf_hooks.d.ts","node_modules/@types/node/process.d.ts","node_modules/@types/node/punycode.d.ts","node_modules/@types/node/querystring.d.ts","node_modules/@types/node/readline.d.ts","node_modules/@types/node/repl.d.ts","node_modules/@types/node/stream.d.ts","node_modules/@types/node/string_decoder.d.ts","node_modules/@types/node/timers.d.ts","node_modules/@types/node/tls.d.ts","node_modules/@types/node/trace_events.d.ts","node_modules/@types/node/tty.d.ts","node_modules/@types/node/url.d.ts","node_modules/@types/node/util.d.ts","node_modules/@types/node/v8.d.ts","node_modules/@types/node/vm.d.ts","node_modules/@types/node/wasi.d.ts","node_modules/@types/node/worker_threads.d.ts","node_modules/@types/node/zlib.d.ts","node_modules/@types/node/globals.global.d.ts"]
                  2022-03-30 20:09:46.567  - debug: javascript.0 (16223) Loaded TypeScript definitions for request: ["node_modules/@types/request/package.json","node_modules/@types/request/index.d.ts"]
                  2022-03-30 20:09:46.569  - info: javascript.0 (16223) requesting all states
                  2022-03-30 20:09:46.570  - info: javascript.0 (16223) requesting all objects
                  2022-03-30 20:09:49.236  - info: javascript.0 (16223) received all objects
                  2022-03-30 20:09:49.406  - info: javascript.0 (16223) received all states
                  2022-03-30 20:09:49.420  - error: javascript.0 (16223) Cannot find view "script" for search "javascript"
                  

                  Danach kommen erst wieder javascript.0 Einträge, wenn ich meine Skripts wieder manuell starte.

                  Was hat es mit diesem fehlenden view "script" auf sich?

                  paul53 1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @hsteinme last edited by

                    @hsteinme sagte: Warum wundert Dich das?

                    Mich wundert, dass der Wert bei Instanz-Neustart auf false gesetzt wird.

                    hsteinme 1 Reply Last reply Reply Quote 0
                    • hsteinme
                      hsteinme @paul53 last edited by

                      @paul53

                      2022-03-30 20:09:19.704  - info: javascript.0 (869) Stop script script.js.common.Allgemeines._Test~
                      

                      beim Runterfahren der Instanz sorgt zunächst dafür, dass das Enabled-Flag (zu Recht) auf "false" gesetzt wird. Die Frage ist halt, warum wird nach dem Hochfahren kein einziges Skript gestartet.

                      hsteinme 1 Reply Last reply Reply Quote 0
                      • hsteinme
                        hsteinme @hsteinme last edited by hsteinme

                        Das Problem ist nun gelöst - durch eine Drüber-Installation der Adapter Version 5.2.21. Nach einem Restart des Adapters sind nun all die Skripte wieder am Laufen, die zuvor am Laufen waren.

                        javascript.0 (16223) Cannot find view "script" for search "javascript"
                        

                        ist jetzt nicht mehr im Log zu sehen. Stattdessen kommen folgende heiß ersehnte Einträge

                        Start javascript script.js.common.IT-Systeme.AppsControl
                        Start javascript script.js.common.Haushalt.MuellAbfuhrTermine
                        ...
                        Start javascript script.js.common.Allgemeines._Test~
                        

                        @paul53 Dir danke ich ganz besonders herzlich für Dein Bemühen, mir zu helfen. Es ist schon bewundernswert, welche Quantität und Qualität Du hier an Unterstützungsleistung erbringst. Nochmals Danke & Weiter so 😊

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post

                        Support us

                        ioBroker
                        Community Adapters
                        Donate
                        FAQ Cloud / IOT
                        HowTo: Node.js-Update
                        HowTo: Backup/Restore
                        Downloads
                        BLOG

                        898
                        Online

                        32.1k
                        Users

                        80.6k
                        Topics

                        1.3m
                        Posts

                        2
                        10
                        381
                        Loading More Posts
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes
                        Reply
                        • Reply as topic
                        Log in to reply
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                        The ioBroker Community 2014-2023
                        logo