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. Error/Bug
  4. Erledigt: js-controller 100% cpu 1.2.7

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.9k

Erledigt: js-controller 100% cpu 1.2.7

Geplant Angeheftet Gesperrt Verschoben Error/Bug
32 Beiträge 11 Kommentatoren 2.8k Aufrufe 5 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.
  • M Offline
    M Offline
    MagicSven
    schrieb am zuletzt editiert von
    #4

    ich habe seit kurzem ein ähnliches Problem.

    Last von "io.javascript" liegt anfangs bei ca. 1-2%

    7882_top.jpg

    Nachdem ich einen einfach Sprachbefehl an Alexa mit Sprachausgabe der Temperatur sende schießt die Last auf 100%

    und lässt sich nur durch einen Neustart der Instanz beheben.

    Im Script dürfte ich keinen Fehler oder Loop drin haben, da es recht einfach aufgebaut ist.

    Siehe Anhang.

    7882_alexa.jpg
    .
    7882_java2.jpg

    1 Antwort Letzte Antwort
    0
    • StabilostickS Offline
      StabilostickS Offline
      Stabilostick
      schrieb am zuletzt editiert von
      #5

      Mach mal nicht aktualisiert oben, sondern geändert.

      1 Antwort Letzte Antwort
      0
      • M Offline
        M Offline
        MagicSven
        schrieb am zuletzt editiert von
        #6

        @Stabilostick:

        Mach mal nicht aktualisiert oben, sondern geändert. `

        :roll: :roll:

        MEGA FETTES DANKE !!!

        Ich suche den Fehler schon seit knapp einer Woche - und jetzt liegt es an so etwas banalem…

        Kannst du mir vielleicht noch verraten warum dieser kleine Wert die CPU Last so nach oben schießen lässt und die

        Temperatur des Raspi von 45°C dadurch auf 80°C ansteigt?

        1 Antwort Letzte Antwort
        0
        • HomoranH Nicht stören
          HomoranH Nicht stören
          Homoran
          Global Moderator Administrators
          schrieb am zuletzt editiert von
          #7

          Wie oft wird der Wert aktualisiert?

          Danach wird der Wert auf unwahr gesetzt, also wieder aktualisiert….

          Ich würde fas schon eine Loop nennen. :D

          Gruß Rainer

          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 -

          1 Antwort Letzte Antwort
          0
          • L Offline
            L Offline
            LJSven
            schrieb am zuletzt editiert von
            #8

            Wie kann man man die CPU der einzelnen Adapter loggen?

            HomoranH 1 Antwort Letzte Antwort
            0
            • L LJSven

              Wie kann man man die CPU der einzelnen Adapter loggen?

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

              @LJSven sagte in Erledigt: js-controller 100% cpu 1.2.7:

              Wie kann man man die CPU der einzelnen Adapter loggen?

              ???

              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 -

              1 Antwort Letzte Antwort
              0
              • L Offline
                L Offline
                LJSven
                schrieb am zuletzt editiert von
                #10

                Oben in der Grafik werden die Adapter dargestellt mit CPU Belastung. Ich möchte versuchen, ob ich so meinen Übeltäter finde.

                AlCalzoneA 1 Antwort Letzte Antwort
                0
                • L LJSven

                  Oben in der Grafik werden die Adapter dargestellt mit CPU Belastung. Ich möchte versuchen, ob ich so meinen Übeltäter finde.

                  AlCalzoneA Offline
                  AlCalzoneA Offline
                  AlCalzone
                  Developer
                  schrieb am zuletzt editiert von
                  #11

                  @LJSven Es gibt hierfür Datenpunkte bei jedem Adapter, die du mit dem history-Adapter aufzeichnen und z.B. mit grafana oder flot darstellen kannst.

                  Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                  L 1 Antwort Letzte Antwort
                  0
                  • AlCalzoneA AlCalzone

                    @LJSven Es gibt hierfür Datenpunkte bei jedem Adapter, die du mit dem history-Adapter aufzeichnen und z.B. mit grafana oder flot darstellen kannst.

                    L Offline
                    L Offline
                    LJSven
                    schrieb am zuletzt editiert von LJSven
                    #12

                    @AlCalzone Ich sehe die nicht. Wo finde ich die Datenpunkte?

                    AlCalzoneA paul53P HomoranH 3 Antworten Letzte Antwort
                    0
                    • L LJSven

                      @AlCalzone Ich sehe die nicht. Wo finde ich die Datenpunkte?

                      AlCalzoneA Offline
                      AlCalzoneA Offline
                      AlCalzone
                      Developer
                      schrieb am zuletzt editiert von
                      #13

                      @LJSven Homoran hat mich auch gerade gefragt... ich hätte schwören können dass es die gibt. Vielleicht habe ich mich getäuscht und das mit dem Speicherverbrauch verwechselt :sweat:

                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                      1 Antwort Letzte Antwort
                      0
                      • L LJSven

                        @AlCalzone Ich sehe die nicht. Wo finde ich die Datenpunkte?

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

                        @LJSven

                        Adapter_CPU.JPG

                        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

                        HomoranH 1 Antwort Letzte Antwort
                        1
                        • paul53P paul53

                          @LJSven

                          Adapter_CPU.JPG

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

                          @paul53

                          Welche Version admin/controller?

                          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 -

                          1 Antwort Letzte Antwort
                          0
                          • AlCalzoneA Offline
                            AlCalzoneA Offline
                            AlCalzone
                            Developer
                            schrieb am zuletzt editiert von
                            #16

                            ab JS-Controller 1.5.1:
                            https://github.com/ioBroker/ioBroker.js-controller/blob/ba45ad48b668dc02c55cecad2870e9333c9b57f9/CHANGELOG.md#151-2018-09-14-evolution-release-ann

                            Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                            1 Antwort Letzte Antwort
                            0
                            • L LJSven

                              @AlCalzone Ich sehe die nicht. Wo finde ich die Datenpunkte?

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

                              @LJSven
                              Wenn du es nicht loggen willst, gibt es ein Skript von @ruhr70 indem alle Prozesse in ein json geschrieben und aktualisiert werden.

                              Wenn du das json in einer vis einbindest (so mache ich es) hast du immer den Überblick der Prozesse und der Belastung.

                              var pfad            = "Systeminfos.ioBroker.Prozesse" + "."; // Pfad in dem die Datenpunkte angelegt werden
                              
                              // Datenpunktnamen:
                              var idProzesse          = pfad + 'ioBroker_Prozesse';
                              var idMemAll            = pfad + 'ioBroker_Speicher_gesamt';
                              var idAnzProzesse       = pfad + 'ioBroker_Anzahl_Prozesse';
                              var idCpuAll            = pfad + 'ioBroker_CPU_Gesamt';
                              var idMemPercent        = pfad + 'ioBroker_Speicher_prozentual';
                              var idInstanzenEinmal   = pfad + 'ioBroker_Instanzen_einmal_aktiv';
                              
                              
                              // regelmässige Wiederholungen der Abfrage
                              var cronStr         = "*/2 * * * *";
                              
                              var abfrage         = 'ps -A aux --sort -pcpu | grep " [i]o.*"';
                              
                              
                              
                              
                              // -----------------------------------------------------------------------------
                              
                              
                              createState(idProzesse, "", {
                                  name: 'ioBroker laufende Prozesse Objekt',
                                  desc: 'ioBroker laufende Prozesse Objekt, Speicherverbrauch',
                                  type: 'string',
                                  unit: '',
                                  role: 'object'
                              });
                              
                              createState(idMemAll, 0, {
                                  name: 'ioBroker Speicherverbrauch gesamt',
                                  desc: 'ioBroker Speicherverbrauch gesamt (RSS)',
                                  type: 'number',
                                  unit: 'MB',
                                  role: 'value'
                              });
                              
                              createState(idAnzProzesse, 0, {
                                  name: 'ioBroker Anzahl Prozesse',
                                  desc: 'ioBroker Anzahl aktiver Prozesse',
                                  type: 'number',
                                  unit: '',
                                  role: 'value'
                              });
                              
                              createState(idCpuAll, 0.0, {
                                  name: 'ioBroker CPU-Last gesamt',
                                  desc: 'ioBroker CPU-Last gesamt',
                                  type: 'number',
                                  unit: '%',
                                  role: 'value'
                              });
                              
                              createState(idMemPercent, 0.0, {
                                  name: 'Speicherverbrauch prozentual',
                                  desc: 'Speicherverbrauch prozentual',
                                  type: 'number',
                                  unit: '%',
                                  role: 'value'
                              });
                              
                              createState(idInstanzenEinmal, true, {
                                  name: 'keine Instanzen doppelt aktiv',
                                  desc: 'jeder aktive ioBroker Prozess ist nur einmal aktiv',
                                  type: 'boolean',
                                  unit: '',
                                  role: 'value'
                              });
                              
                              
                              
                              // -----------------------------------------------------------------------------
                              
                              
                              function doppelteProzesse(arr) {
                                 var mehrfacheProzesse = [];
                                 var anzProzesse = (arr.length);
                                 var anzProzessAktiv = 0;
                                 for (var i = 0; i < anzProzesse; i++) {
                                     if (mehrfacheProzesse.indexOf(arr[i].command) == -1) {
                                         anzProzessAktiv = zaehleProzesse(arr,arr[i].command);
                                         if (anzProzessAktiv > 1) {
                                             log("Prozess: " + arr[i].command+", mehrfach aktiv: " + anzProzessAktiv +" mal","warn");
                                             mehrfacheProzesse.push(arr[i].command);
                                             mehrfacheProzesse.push(anzProzessAktiv);
                                         }
                                     }
                                 }    
                                 return mehrfacheProzesse;
                              }
                              
                              function zaehleProzesse(arr,command) {
                                 var count = 0;
                                 var anzProzesse = (arr.length);
                                 for (var i = 0; i < anzProzesse; i++) {
                                     if(arr[i].command === command) {
                                         count++;
                                     }
                                 }    
                                 return count;
                              }
                              
                              
                              function writeJson(json) {
                                 return JSON.stringify(json);    // JSON in String umwandeln, damit das JSON in einem Datenpunkt geschrieben werden kann
                              }
                              
                              
                              function getMemAbsolut(json) {
                                 var anzProzesse = (json.length);
                                 var mem = 0;
                                 for (var i = 0; i < anzProzesse; i++) {
                                     mem = mem + json[i].rss;
                                 }    
                                 return mem;
                              }
                              
                              function getCpu(json) {
                                 var anzProzesse = (json.length);
                                 var cpu = 0.0;
                                 for (var i = 0; i < anzProzesse; i++) {
                                     cpu = cpu + json[i].cpu;
                                 }    
                                 return cpu;
                              }
                              
                              function getMem(json) {
                                 var anzProzesse = (json.length);
                                 var mem = 0.0;
                                 for (var i = 0; i < anzProzesse; i++) {
                                     mem = mem + json[i].mem;
                                 }    
                                 return mem;
                              }
                              
                              
                              function createArrayJson(arr) {
                                 var jsonArr     = [];
                                 var anzDP       = 11;                       // Anzahl Datenreihen in der Abfrage
                                 var anzProzesse = (arr.length-1)/anzDP;
                              
                                 for (var i = 0; i < anzProzesse; i++) {
                                     jsonArr.push({
                                         command:    arr[10 + i*anzDP],              // ioBroker Prozess (COMMAND = Kommando, mit dem der Prozess gestartet wurde)
                                         pid:        arr[ 1 + i*anzDP],              // Prozess ID
                                         cpu:        parseFloat(arr[ 2 + i*anzDP]),  // aktueller CPU-Last in %
                                         mem:        parseFloat(arr[ 3 + i*anzDP]),  // aktueller Verbrauch physikalischer Speicher %
                                         vmem:       parseInt(arr[ 4 + i*anzDP]),    // 
                                         rss:        parseInt(arr[ 5 + i*anzDP]),    // physikalische Speichernutzung
                                         start:      arr[ 8 + i*anzDP],              // Startzeitpunkt des Prozesses
                                         time:       arr[ 9 + i*anzDP]               // bisher verbrauchte CPU Zeit
                                     });
                                 }
                                 return jsonArr;
                              }
                              
                              
                              function abfrageConsole() {
                                 exec(abfrage, function(err, stdout, stderr) {
                                     if (err) {
                                         log(err,"error");
                                         return;
                                     }
                                     stdout = stdout.replace(/\n+/g, " "); // neue Zeile gegen Leerzeichen ersetzen
                                     stdout = stdout.split(/ +/g);         // array erstellen, Lerzeichen als Trenner
                                     
                                     var anzProzesse = (stdout.length-1) / 11;
                                     
                                     //log(stdout);
                                     //log("Anzahl laufender ioBroker Prozesse: " + anzProzesse);
                                     
                                     var jsonArr = createArrayJson(stdout);
                                     var mem         = Math.floor(getMemAbsolut(jsonArr)/1024);
                                     var cpu         = Math.floor(getCpu(jsonArr)*10)/10;
                                     var memPercent  = Math.floor(getMem(jsonArr)*10)/10;
                              
                                     var doppeltArr = doppelteProzesse(jsonArr);
                                     
                                     if(doppeltArr.length === 0) {
                                         setState(idInstanzenEinmal,true);
                                     } else {
                                         setState(idInstanzenEinmal,false);
                                     }
                              
                                     setState(idProzesse     ,writeJson(jsonArr));
                                     setState(idMemAll       ,mem);
                                     setState(idAnzProzesse  ,anzProzesse);
                                     setState(idCpuAll       ,cpu);
                                     setState(idMemPercent   ,memPercent);
                                 });
                              }
                              
                              
                              function abfragen() {
                                 abfrageConsole();
                              }
                              
                              // regelmässige Wiederholungen
                              // -----------------------------------------------------------------------------
                              schedule(cronStr, abfragen);
                              
                              
                              // main
                              // -----------------------------------------------------------------------------
                              function main() {
                                 abfragen();
                              }
                              
                              
                              // Start Skript:
                              // -----------------------------------------------------------------------------
                              
                              setTimeout(main,    500);
                              ´´´
                              [/s]

                              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 -

                              1 Antwort Letzte Antwort
                              0
                              • L Offline
                                L Offline
                                LJSven
                                schrieb am zuletzt editiert von
                                #18

                                Das ist aber nicht bei allen Adpatern vorhanden, oder?

                                sigi234S HomoranH 2 Antworten Letzte Antwort
                                0
                                • L LJSven

                                  Das ist aber nicht bei allen Adpatern vorhanden, oder?

                                  sigi234S Online
                                  sigi234S Online
                                  sigi234
                                  Forum Testing Most Active
                                  schrieb am zuletzt editiert von
                                  #19

                                  @LJSven sagte in Erledigt: js-controller 100% cpu 1.2.7:

                                  Das ist aber nicht bei allen Adpatern vorhanden, oder?

                                  Bei mir gibt es den DP (cpu) nicht. (Windows System)

                                  Aber da gibt es einen interessanten Adapter:

                                  https://github.com/AWhiteKnight/ioBroker.moma

                                  Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                  Immer Daten sichern!

                                  L 1 Antwort Letzte Antwort
                                  0
                                  • sigi234S sigi234

                                    @LJSven sagte in Erledigt: js-controller 100% cpu 1.2.7:

                                    Das ist aber nicht bei allen Adpatern vorhanden, oder?

                                    Bei mir gibt es den DP (cpu) nicht. (Windows System)

                                    Aber da gibt es einen interessanten Adapter:

                                    https://github.com/AWhiteKnight/ioBroker.moma

                                    L Offline
                                    L Offline
                                    LJSven
                                    schrieb am zuletzt editiert von
                                    #20

                                    @sigi234 sagte in Erledigt: js-controller 100% cpu 1.2.7:

                                    @LJSven sagte in Erledigt: js-controller 100% cpu 1.2.7:

                                    Das ist aber nicht bei allen Adpatern vorhanden, oder?

                                    Bei mir gibt es den DP (cpu) nicht. (Windows System)

                                    Aber da gibt es einen interessanten Adapter:

                                    https://github.com/AWhiteKnight/ioBroker.moma

                                    Der zeigt aber nicht Belastungswerte der einzelnen Adapter an, oder?

                                    sigi234S 1 Antwort Letzte Antwort
                                    0
                                    • L LJSven

                                      @sigi234 sagte in Erledigt: js-controller 100% cpu 1.2.7:

                                      @LJSven sagte in Erledigt: js-controller 100% cpu 1.2.7:

                                      Das ist aber nicht bei allen Adpatern vorhanden, oder?

                                      Bei mir gibt es den DP (cpu) nicht. (Windows System)

                                      Aber da gibt es einen interessanten Adapter:

                                      https://github.com/AWhiteKnight/ioBroker.moma

                                      Der zeigt aber nicht Belastungswerte der einzelnen Adapter an, oder?

                                      sigi234S Online
                                      sigi234S Online
                                      sigi234
                                      Forum Testing Most Active
                                      schrieb am zuletzt editiert von sigi234
                                      #21

                                      @LJSven sagte in Erledigt: js-controller 100% cpu 1.2.7:

                                      Der zeigt aber nicht Belastungswerte der einzelnen Adapter an, oder?

                                      Aha, ich glaube nicht muss ich mal nachsehen........

                                      So, der zeigt nur die Host Daten an............leider.

                                      Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                      Immer Daten sichern!

                                      1 Antwort Letzte Antwort
                                      0
                                      • L LJSven

                                        Das ist aber nicht bei allen Adpatern vorhanden, oder?

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

                                        @LJSven

                                        Wir haben gestern festgestellt, dass dieser Datenpunkt anscheinend nur bei Neuanlegen eines Adapters angelegt wird.
                                        Ein Update bringt diesen (neueren) Datenpunkt anscheinend nicht

                                        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 -

                                        L crunchipC 2 Antworten Letzte Antwort
                                        0
                                        • L Offline
                                          L Offline
                                          LJSven
                                          schrieb am zuletzt editiert von
                                          #23

                                          Ja, dass habe ich auch gesehen. Gibt es ein Workaround, ohne die Settings zu verlieren. Der Datenpunkt ist ja schon sehr interessant.

                                          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

                                          807

                                          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