Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. JS-Controller ca. alle 12h out of memory Error

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.9k

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

JS-Controller ca. alle 12h out of memory Error

Scheduled Pinned Locked Moved ioBroker Allgemein
25 Posts 9 Posters 2.2k Views 7 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • T Tobi 1

    @codierknecht

    Das ist ja dann im Prinzip das selbe wie bei htop, nur dass es in der GUI in MB angezeigt wird und nicht in %.

    Der Prozess welcher immer vom System gekillt wird ist iobroker.js-controller, aber das muss vielleicht nicht zwingend der Prozess sein der den hohen Speicherbedarf verursacht.

    Ich werd dann wohl erstmal versuchen zu den typischen Absturzzeiten verstärkt drauf zu achten was da passiert. Evtl über Screen-Recording.

    crunchipC Away
    crunchipC Away
    crunchip
    Forum Testing Most Active
    wrote on last edited by
    #11

    @tobi-1 sagte in JS-Controller ca. alle 12h out of memory Error:

    Der Prozess welcher immer vom System gekillt wird ist iobroker.js-controller, aber das muss vielleicht nicht zwingend der Prozess sein der den hohen Speicherbedarf verursacht.

    laut deinem screen, läuft der aber schon rund 42 Stunden, allerdings dein javascript nur 10 Stunden

    umgestiegen von Proxmox auf Unraid

    T 1 Reply Last reply
    0
    • mcm1957M mcm1957

      @tobi-1
      Schau mal ob deine Backupzeiten da ev korreliert.

      T Offline
      T Offline
      Tobi 1
      wrote on last edited by
      #12

      @mcm1957

      Hatte ich auch schon im Verdacht.
      Aber da der Absturz auch Tagsüber geschieht und meine Backups nachts nach 2 uhr laufen seh ich da keinen Zusammenhang

      1 Reply Last reply
      0
      • crunchipC crunchip

        @tobi-1 sagte in JS-Controller ca. alle 12h out of memory Error:

        Der Prozess welcher immer vom System gekillt wird ist iobroker.js-controller, aber das muss vielleicht nicht zwingend der Prozess sein der den hohen Speicherbedarf verursacht.

        laut deinem screen, läuft der aber schon rund 42 Stunden, allerdings dein javascript nur 10 Stunden

        T Offline
        T Offline
        Tobi 1
        wrote on last edited by Tobi 1
        #13

        @crunchip

        Hmm.. glaube nicht, dass das Stunden:Minuten:Sekunden sind.
        Der mittlere Wert erhöht sich alle 10 Sekunden rum um 1.

        Also ich logge jetzt mal den Speicherbedarf heute Nacht mit den jeweiligen PIDs mit solange bis ein Absturz kommt.
        Dann poste ich das Ergebnis nochmal welche PID mit welcher Speicherauslastung zuletzt lief und welche vom System gekillt wurde.

        Fakt ist, wenn ein Absturz kommt ist ioBroker kurze Zeit lang nicht erreichbar und alle Adapter starten neu.

        OliverIOO 1 Reply Last reply
        0
        • T Tobi 1

          Hallo zusammen,

          Ich hab seit kurzem ein Problem mit meinem ioBroker und benötige evtl. einen Tipp zur Fehlersuche.

          Seit ca 2 Wochen stürzt der ioBroker fast regelmäßig alle 12h ab - mal nach 11h, mal nach 13h, auch nie auf die Minute gleich. Aber häufig nach diesem Muster.
          Ausnahmen bestätigen natürlich die Regel, manchmal auch wesentlich früher/später, manchmal auf zwei mal kurz hintereinander.

          Da ich nicht allzuviel dran neu gemacht habe, habe ich auch schon alle Blocklyscripts deaktiviert die in letzter Zeit neu dazu kamen. Viele warens jedoch nicht, 3 Stück.
          Trotzdem stürzt der ioBroker ab.

          Im Raspberry Log gibt es nur diesen Eintrag:

          Sep 23 14:04:53 raspberrypi kernel: Out of memory: Killed process 1589480 u(iobroker.js-con) total-vm:10233820kB, anon-rss:818560k>
          Sep 23 14:04:54 raspberrypi systemd[1]: iobroker.service: Main process exited, code=killed, status=9/KILL
          

          Woher dieses out of memory kommt würde ich gerne versuchen zu ermitteln, weiß aber nicht wie ich das am besten anstelle.
          Gibt es eine Möglichkeit zu ermitteln was im ioBroker vor so einem Crash passiert?

          Im Logfile von ioBroker lässt sich nichts zu einem Error in einem Blocklyscript oder ähnliches feststellen. ERROR: DB closed oder ähnliches was wohl auf den vollen Speicher zurückzuführen ist.

          Den Befehl „iob fix“ hab ich ebenfalls schon ausgeführt, ändert aber nichts am Verhalten.

          Mein System:
          Raspberry Pi4b mit 4GB RAM
          Raspberry OS Bookwork
          Alle Adapter aktuell
          Node.JS 20.17.0
          JS-Controller 6.0.11
          Neue externe SSD als Harddrive

          Anbei noch die Summary aus der ioBroker Diagnose:

          ======================= SUMMARY =======================
                                  v.2024-05-22
          
          
           Static hostname: raspberrypi
                 Icon name: computer
          Operating System: Debian GNU/Linux 12 (bookworm)
                    Kernel: Linux 6.6.31+rpt-rpi-v8
              Architecture: arm64
          
          Installation:           native
          Kernel:                 aarch64
          Userland:               64 bit
          Timezone:               Europe/Berlin (CEST, +0200)
          User-ID:                1000
          Display-Server:         false
          Boot Target:            multi-user.target
          
          Pending OS-Updates:     0
          Pending iob updates:    0
          
          Nodejs-Installation:
          /usr/bin/nodejs         v20.17.0
          /usr/bin/node           v20.17.0
          /usr/bin/npm            10.8.2
          /usr/bin/npx            10.8.2
          /usr/bin/corepack       0.29.3
          
          Recommended versions are nodejs 20.17.0 and npm 10.8.2
          Your nodejs installation is correct
          
          MEMORY:
                         total        used        free      shared  buff/cache   available
          Mem:            4.0G        2.8G        252M        1.3M        397M        1.1G
          Swap:             0B          0B          0B
          Total:          4.0G        2.8G        252M
          
          Active iob-Instances:   34
          Upgrade policy: none
          
          ioBroker Core:          js-controller           6.0.11
                                  admin                   7.1.3
          
          ioBroker Status:        iobroker is running on this host.
          
          
          Objects type: jsonl
          States  type: jsonl
          
          Status admin and web instance:
          + system.adapter.admin.0                  : admin                 : raspberrypi                              -  enabled, port: 8081, bind: 0.0.0.0, run as: admin
          + system.adapter.web.0                    : web                   : raspberrypi                              -  enabled, port: 8082, bind: 0.0.0.0, run as: admin
          
          Objects:                15858
          States:                 12984
          
          Size of iob-Database:
          
          38M     /opt/iobroker/iobroker-data/objects.jsonl
          37M     /opt/iobroker/iobroker-data/states.jsonl
          
          
          
          =================== END OF SUMMARY ====================
          

          Hat jemand einen Tipp wie man feststellen kann warum der Speicher halbwegs regelmäßig voll läuft?

          OliverIOO Offline
          OliverIOO Offline
          OliverIO
          wrote on last edited by
          #14

          @tobi-1

          evtl liegt es an einem memory leak in einem deiner skripte.
          das ist allerdings nicht leicht zu finden.
          gern passiert das im javascript mit setinterval/settimeout, die nicht ordentlich beednet wurden.

          ist zwar auf den browser bezogen, es gelten aber die selben regeln
          https://auth0.com/blog/four-types-of-leaks-in-your-javascript-code-and-how-to-get-rid-of-them/

          Meine Adapter und Widgets
          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
          Links im Profil

          1 Reply Last reply
          0
          • T Tobi 1

            @crunchip

            Hmm.. glaube nicht, dass das Stunden:Minuten:Sekunden sind.
            Der mittlere Wert erhöht sich alle 10 Sekunden rum um 1.

            Also ich logge jetzt mal den Speicherbedarf heute Nacht mit den jeweiligen PIDs mit solange bis ein Absturz kommt.
            Dann poste ich das Ergebnis nochmal welche PID mit welcher Speicherauslastung zuletzt lief und welche vom System gekillt wurde.

            Fakt ist, wenn ein Absturz kommt ist ioBroker kurze Zeit lang nicht erreichbar und alle Adapter starten neu.

            OliverIOO Offline
            OliverIOO Offline
            OliverIO
            wrote on last edited by
            #15

            @tobi-1 said in JS-Controller ca. alle 12h out of memory Error:

            Also ich logge jetzt mal den Speicherbedarf

            unter system.
            gibt es im iobroker reichlich datenpunkte um speicher je maschine und auch je adapter mit dem history adapter aufzuzeichnen

            Meine Adapter und Widgets
            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
            Links im Profil

            T 1 Reply Last reply
            0
            • OliverIOO OliverIO

              @tobi-1 said in JS-Controller ca. alle 12h out of memory Error:

              Also ich logge jetzt mal den Speicherbedarf

              unter system.
              gibt es im iobroker reichlich datenpunkte um speicher je maschine und auch je adapter mit dem history adapter aufzuzeichnen

              T Offline
              T Offline
              Tobi 1
              wrote on last edited by
              #16

              @oliverio

              Ich hab mir ein kleines python script dazu geschrieben um losgelöst vom ioBroker zu sein.

              ich verwende tatsächlich in manchen Scripts setinterval, jedoch nicht erst seit kurzem.
              Und die letzten Monate wenn nicht sogar schon Jahre gabs da nie Probleme… das verwundert mich etwas.

              OliverIOO 1 Reply Last reply
              0
              • T Tobi 1

                @oliverio

                Ich hab mir ein kleines python script dazu geschrieben um losgelöst vom ioBroker zu sein.

                ich verwende tatsächlich in manchen Scripts setinterval, jedoch nicht erst seit kurzem.
                Und die letzten Monate wenn nicht sogar schon Jahre gabs da nie Probleme… das verwundert mich etwas.

                OliverIOO Offline
                OliverIOO Offline
                OliverIO
                wrote on last edited by
                #17

                @tobi-1

                wenn speicherverbrauch ansteigend ist, aber du nicht immer mehr daten in irgendwelchen objektstrukturen speicherst, dann ist es ein memory leak
                dann hat bisher der speicher immer noch gereicht oder du hast es aus anderen gründen nicht wahr genommen.
                wenn es ein generelles problem wäre, dann würden hier ganz viele schreiben.

                Meine Adapter und Widgets
                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                Links im Profil

                T 1 Reply Last reply
                0
                • OliverIOO OliverIO

                  @tobi-1

                  wenn speicherverbrauch ansteigend ist, aber du nicht immer mehr daten in irgendwelchen objektstrukturen speicherst, dann ist es ein memory leak
                  dann hat bisher der speicher immer noch gereicht oder du hast es aus anderen gründen nicht wahr genommen.
                  wenn es ein generelles problem wäre, dann würden hier ganz viele schreiben.

                  T Offline
                  T Offline
                  Tobi 1
                  wrote on last edited by
                  #18

                  @oliverio

                  Ich gehe davon aus, dass es kein generelles Thema ist.
                  Aber ich hab auch keine Idee wie man das Problem finden kann.
                  Werde mir deinen Link oben noch anschauen und alle meine Scripte die einen Intervall drin haben mal deaktivieren und schauen ob es immernoch passiert.

                  Hatte die Hoffnung jemand kennt noch einen Kniff in ioBroker um das zu diagnostizieren

                  1 Reply Last reply
                  0
                  • S Offline
                    S Offline
                    saeft_2003
                    Most Active
                    wrote on last edited by
                    #19

                    jetzt nicht falsch verstehen, sind aber nicht 34 aktive Instanzen für 4GB RAM mehr als sportlich?

                    crunchipC 1 Reply Last reply
                    0
                    • S saeft_2003

                      jetzt nicht falsch verstehen, sind aber nicht 34 aktive Instanzen für 4GB RAM mehr als sportlich?

                      crunchipC Away
                      crunchipC Away
                      crunchip
                      Forum Testing Most Active
                      wrote on last edited by
                      #20

                      @saeft_2003 seh ich auch so, wobei es auch auf die jeweiligen Adapter ankommt.
                      Laut screen werden aber schon rund 800MB allein durch Controller und Javascript belegt.

                      umgestiegen von Proxmox auf Unraid

                      1 Reply Last reply
                      0
                      • T Tobi 1

                        Hallo zusammen,

                        Ich hab seit kurzem ein Problem mit meinem ioBroker und benötige evtl. einen Tipp zur Fehlersuche.

                        Seit ca 2 Wochen stürzt der ioBroker fast regelmäßig alle 12h ab - mal nach 11h, mal nach 13h, auch nie auf die Minute gleich. Aber häufig nach diesem Muster.
                        Ausnahmen bestätigen natürlich die Regel, manchmal auch wesentlich früher/später, manchmal auf zwei mal kurz hintereinander.

                        Da ich nicht allzuviel dran neu gemacht habe, habe ich auch schon alle Blocklyscripts deaktiviert die in letzter Zeit neu dazu kamen. Viele warens jedoch nicht, 3 Stück.
                        Trotzdem stürzt der ioBroker ab.

                        Im Raspberry Log gibt es nur diesen Eintrag:

                        Sep 23 14:04:53 raspberrypi kernel: Out of memory: Killed process 1589480 u(iobroker.js-con) total-vm:10233820kB, anon-rss:818560k>
                        Sep 23 14:04:54 raspberrypi systemd[1]: iobroker.service: Main process exited, code=killed, status=9/KILL
                        

                        Woher dieses out of memory kommt würde ich gerne versuchen zu ermitteln, weiß aber nicht wie ich das am besten anstelle.
                        Gibt es eine Möglichkeit zu ermitteln was im ioBroker vor so einem Crash passiert?

                        Im Logfile von ioBroker lässt sich nichts zu einem Error in einem Blocklyscript oder ähnliches feststellen. ERROR: DB closed oder ähnliches was wohl auf den vollen Speicher zurückzuführen ist.

                        Den Befehl „iob fix“ hab ich ebenfalls schon ausgeführt, ändert aber nichts am Verhalten.

                        Mein System:
                        Raspberry Pi4b mit 4GB RAM
                        Raspberry OS Bookwork
                        Alle Adapter aktuell
                        Node.JS 20.17.0
                        JS-Controller 6.0.11
                        Neue externe SSD als Harddrive

                        Anbei noch die Summary aus der ioBroker Diagnose:

                        ======================= SUMMARY =======================
                                                v.2024-05-22
                        
                        
                         Static hostname: raspberrypi
                               Icon name: computer
                        Operating System: Debian GNU/Linux 12 (bookworm)
                                  Kernel: Linux 6.6.31+rpt-rpi-v8
                            Architecture: arm64
                        
                        Installation:           native
                        Kernel:                 aarch64
                        Userland:               64 bit
                        Timezone:               Europe/Berlin (CEST, +0200)
                        User-ID:                1000
                        Display-Server:         false
                        Boot Target:            multi-user.target
                        
                        Pending OS-Updates:     0
                        Pending iob updates:    0
                        
                        Nodejs-Installation:
                        /usr/bin/nodejs         v20.17.0
                        /usr/bin/node           v20.17.0
                        /usr/bin/npm            10.8.2
                        /usr/bin/npx            10.8.2
                        /usr/bin/corepack       0.29.3
                        
                        Recommended versions are nodejs 20.17.0 and npm 10.8.2
                        Your nodejs installation is correct
                        
                        MEMORY:
                                       total        used        free      shared  buff/cache   available
                        Mem:            4.0G        2.8G        252M        1.3M        397M        1.1G
                        Swap:             0B          0B          0B
                        Total:          4.0G        2.8G        252M
                        
                        Active iob-Instances:   34
                        Upgrade policy: none
                        
                        ioBroker Core:          js-controller           6.0.11
                                                admin                   7.1.3
                        
                        ioBroker Status:        iobroker is running on this host.
                        
                        
                        Objects type: jsonl
                        States  type: jsonl
                        
                        Status admin and web instance:
                        + system.adapter.admin.0                  : admin                 : raspberrypi                              -  enabled, port: 8081, bind: 0.0.0.0, run as: admin
                        + system.adapter.web.0                    : web                   : raspberrypi                              -  enabled, port: 8082, bind: 0.0.0.0, run as: admin
                        
                        Objects:                15858
                        States:                 12984
                        
                        Size of iob-Database:
                        
                        38M     /opt/iobroker/iobroker-data/objects.jsonl
                        37M     /opt/iobroker/iobroker-data/states.jsonl
                        
                        
                        
                        =================== END OF SUMMARY ====================
                        

                        Hat jemand einen Tipp wie man feststellen kann warum der Speicher halbwegs regelmäßig voll läuft?

                        ? Offline
                        ? Offline
                        A Former User
                        wrote on last edited by
                        #21

                        @tobi-1

                        ich wuerde an deiner Stelle mal den javascript-Adapter stoppen, und die Kiste laufen lassen, wenn es dann stabil ist, liegts an einem Script.
                        Natuerlich ist 4GB auch nicht gerade viel und schnell ausgelastet, gerade bei 34 Instanzen, wenn du da noch eine VIS hast, ist schnell der Speicher voll.

                        Hilft nur, der Reihe nach abschalten, beobachten.

                        1 Reply Last reply
                        0
                        • T Offline
                          T Offline
                          Tobi 1
                          wrote on last edited by
                          #22

                          Ja ich vermute fast auch, dass die 4GB RAM grenzwertig sind mittlerweile.

                          Habe das heute nacht mal mitgeloggt und auch mit dem Befehl sudo journalctl -xe nochmal geschaut.
                          Aber nichts auffälliges, der Speicherbedarf schwankt nicht sehr viel, aber wenn die großen Adapter gleichzeitig mehr benötigen wirds eng.

                          Ein massiver Anstieg eines bestimmten Adapters konnte ich nicht sehen, trotzdem gabs dann wieder den „gewohnten“ Absturz heute Nacht.

                          Werde mal ein paar größere Scripte deaktivieren und schauen ob es dann besser wird.
                          Vermutlich wirds aber eher Zeit für einen 8GB RAM Pi.

                          Ro75R 1 Reply Last reply
                          0
                          • T Tobi 1

                            Ja ich vermute fast auch, dass die 4GB RAM grenzwertig sind mittlerweile.

                            Habe das heute nacht mal mitgeloggt und auch mit dem Befehl sudo journalctl -xe nochmal geschaut.
                            Aber nichts auffälliges, der Speicherbedarf schwankt nicht sehr viel, aber wenn die großen Adapter gleichzeitig mehr benötigen wirds eng.

                            Ein massiver Anstieg eines bestimmten Adapters konnte ich nicht sehen, trotzdem gabs dann wieder den „gewohnten“ Absturz heute Nacht.

                            Werde mal ein paar größere Scripte deaktivieren und schauen ob es dann besser wird.
                            Vermutlich wirds aber eher Zeit für einen 8GB RAM Pi.

                            Ro75R Offline
                            Ro75R Offline
                            Ro75
                            wrote on last edited by
                            #23

                            @tobi-1 mach einfach mal SWAP größer. 100 MB ist zu wenig. Mach ruhig mal 2GB. Wenn wirklich vom System was gebraucht wird, sollte auch was da sein.

                            @tobi-1 sagte in JS-Controller ca. alle 12h out of memory Error:

                            Vermutlich wirds aber eher Zeit für einen 8GB RAM Pi.

                            Durchaus.

                            Ro75.

                            SERVER = Beelink U59 16GB DDR4 RAM 512GB SSD, FB 7490, FritzDect 200+301+440, ConBee II, Zigbee Aqara Sensoren + NOUS A1Z, NOUS A1T, Philips Hue ** ioBroker, REDIS, influxdb2, Grafana, PiHole, Plex-Mediaserver, paperless-ngx (Docker), MariaDB + phpmyadmin *** VIS-Runtime = Intel NUC 8GB RAM 128GB SSD + 24" Touchscreen

                            T 1 Reply Last reply
                            0
                            • Ro75R Ro75

                              @tobi-1 mach einfach mal SWAP größer. 100 MB ist zu wenig. Mach ruhig mal 2GB. Wenn wirklich vom System was gebraucht wird, sollte auch was da sein.

                              @tobi-1 sagte in JS-Controller ca. alle 12h out of memory Error:

                              Vermutlich wirds aber eher Zeit für einen 8GB RAM Pi.

                              Durchaus.

                              Ro75.

                              T Offline
                              T Offline
                              Tobi 1
                              wrote on last edited by
                              #24

                              @ro75 swap ist jetzt 2GB groß, schauen wir was passiert.

                              Danke für eure Hinweise und Unterstützung 🙂

                              S 1 Reply Last reply
                              0
                              • T Tobi 1

                                @ro75 swap ist jetzt 2GB groß, schauen wir was passiert.

                                Danke für eure Hinweise und Unterstützung 🙂

                                S Offline
                                S Offline
                                saeft_2003
                                Most Active
                                wrote on last edited by
                                #25

                                @tobi-1

                                bevor du einen neuen raspi kaufst, würde ich überlegen ob deine Installation noch weiter wachsen wird und ob noch so Sachen wie grafana, influxDB usw... dazu kommen könnten.

                                Falls ja würde ehr ein NUC mit proxmox Sinn ergeben, als ein raspi.

                                1 Reply Last reply
                                1
                                Reply
                                • Reply as topic
                                Log in to reply
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes


                                Support us

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

                                514

                                Online

                                32.6k

                                Users

                                82.2k

                                Topics

                                1.3m

                                Posts
                                Community
                                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                ioBroker Community 2014-2025
                                logo
                                • Login

                                • Don't have an account? Register

                                • Login or register to search.
                                • First post
                                  Last post
                                0
                                • Home
                                • Recent
                                • Tags
                                • Unread 0
                                • Categories
                                • Unreplied
                                • Popular
                                • GitHub
                                • Docu
                                • Hilfe