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. ioBroker Allgemein
  4. JS-Controller ca. alle 12h out of memory Error

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.9k

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

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
25 Beiträge 9 Kommentatoren 2.1k Aufrufe 7 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.
  • mcm1957M mcm1957

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

    T Offline
    T Offline
    Tobi 1
    schrieb am zuletzt editiert von
    #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 Antwort Letzte Antwort
    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
      schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
      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
        schrieb am zuletzt editiert von
        #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 Antwort Letzte Antwort
        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
          schrieb am zuletzt editiert von
          #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 Antwort Letzte Antwort
          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
            schrieb am zuletzt editiert von
            #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 Antwort Letzte Antwort
            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
              schrieb am zuletzt editiert von
              #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 Antwort Letzte Antwort
              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
                schrieb am zuletzt editiert von
                #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 Antwort Letzte Antwort
                0
                • S Offline
                  S Offline
                  saeft_2003
                  Most Active
                  schrieb am zuletzt editiert von
                  #19

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

                  crunchipC 1 Antwort Letzte Antwort
                  0
                  • S saeft_2003

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

                    crunchipC Abwesend
                    crunchipC Abwesend
                    crunchip
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #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 Antwort Letzte Antwort
                    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
                      Ein ehemaliger Benutzer
                      schrieb am zuletzt editiert von
                      #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 Antwort Letzte Antwort
                      0
                      • T Offline
                        T Offline
                        Tobi 1
                        schrieb am zuletzt editiert von
                        #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 Antwort Letzte Antwort
                        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
                          schrieb am zuletzt editiert von
                          #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 Antwort Letzte Antwort
                          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
                            schrieb am zuletzt editiert von
                            #24

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

                            Danke für eure Hinweise und Unterstützung 🙂

                            S 1 Antwort Letzte Antwort
                            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
                              schrieb am zuletzt editiert von
                              #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 Antwort Letzte Antwort
                              1
                              Antworten
                              • In einem neuen Thema antworten
                              Anmelden zum Antworten
                              • Älteste zuerst
                              • Neuste zuerst
                              • Meiste Stimmen


                              Support us

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

                              788

                              Online

                              32.6k

                              Benutzer

                              82.0k

                              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