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
    632

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

  • 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.
  • 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 Offline
          HomoranH Offline
          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 Offline
              HomoranH Offline
              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 Offline
                        HomoranH Offline
                        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
                          • HomoranH Homoran

                            @LJSven

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

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

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

                            @LJSven

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

                            PS. Ich habe gestern meinen ioBroker aus einem Backup hergestellt und die Punkte werden trotzdem nicht angelegt - fyi.

                            HomoranH 1 Antwort Letzte Antwort
                            0
                            • L LJSven

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

                              @LJSven

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

                              PS. Ich habe gestern meinen ioBroker aus einem Backup hergestellt und die Punkte werden trotzdem nicht angelegt - fyi.

                              HomoranH Offline
                              HomoranH Offline
                              Homoran
                              Global Moderator Administrators
                              schrieb am zuletzt editiert von
                              #25

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

                              meinen ioBroker aus einem Backup hergestellt

                              Da bin ich mir nicht sicher, ob die states nicht schon in der Konfig stehen.

                              Danke für den Hinweis

                              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
                              • HomoranH Homoran

                                @LJSven

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

                                crunchipC Abwesend
                                crunchipC Abwesend
                                crunchip
                                Forum Testing Most Active
                                schrieb am zuletzt editiert von
                                #26

                                @Homoran meinst du, generell bei neu Anlegen eines Adapter, kommt der Datenpunkt mit? und dann auch bei jedem?

                                umgestiegen von Proxmox auf Unraid

                                HomoranH 1 Antwort Letzte Antwort
                                0
                                • crunchipC crunchip

                                  @Homoran meinst du, generell bei neu Anlegen eines Adapter, kommt der Datenpunkt mit? und dann auch bei jedem?

                                  HomoranH Offline
                                  HomoranH Offline
                                  Homoran
                                  Global Moderator Administrators
                                  schrieb am zuletzt editiert von
                                  #27

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

                                  @Homoran meinst du, generell bei neu Anlegen eines Adapter, kommt der Datenpunkt mit? und dann auch bei jedem?

                                  Ja

                                  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 -

                                  crunchipC 1 Antwort Letzte Antwort
                                  0
                                  • HomoranH Homoran

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

                                    @Homoran meinst du, generell bei neu Anlegen eines Adapter, kommt der Datenpunkt mit? und dann auch bei jedem?

                                    Ja

                                    crunchipC Abwesend
                                    crunchipC Abwesend
                                    crunchip
                                    Forum Testing Most Active
                                    schrieb am zuletzt editiert von
                                    #28

                                    @Homoran ok, werd ich vllt später mal testen, bei Adaptern, wo man nicht groß einstellen muss.

                                    Hab mal alle durchgesehen, die ich die ich drin hab und zwei Listen erstellt, einmal mit cpu und eine ohne cpu Datenpunkt.
                                    was mir dabei aufgefallen ist,

                                    system.adapter.tr-064.0, system.adapter.wifilight.0, zeigen nur prevVersion als Datenpunkt, alle anderen Datenpunkte fehlen.
                                    Beim system.adapter.ical.0 wird keine cpu übermittelt, jedoch bei system.adapter.ical.1 wird cpu angezeigt
                                    mit CPU.txt
                                    ohne CPU.txt

                                    umgestiegen von Proxmox auf Unraid

                                    1 Antwort Letzte Antwort
                                    0
                                    • crunchipC Abwesend
                                      crunchipC Abwesend
                                      crunchip
                                      Forum Testing Most Active
                                      schrieb am zuletzt editiert von
                                      #29

                                      @Homoran parser, proxmox und onkyo mal de/installiert, cpu läuft.
                                      Adapter muss aber nicht gelöscht werden, reicht auch nur die Instanz zu löschen.

                                      umgestiegen von Proxmox auf Unraid

                                      HomoranH 1 Antwort Letzte Antwort
                                      0
                                      • crunchipC crunchip

                                        @Homoran parser, proxmox und onkyo mal de/installiert, cpu läuft.
                                        Adapter muss aber nicht gelöscht werden, reicht auch nur die Instanz zu löschen.

                                        HomoranH Offline
                                        HomoranH Offline
                                        Homoran
                                        Global Moderator Administrators
                                        schrieb am zuletzt editiert von
                                        #30

                                        @crunchip

                                        DANKE!

                                        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
                                          #31

                                          @crunchip Bleiben dann die Einstellungen erhalten?

                                          crunchipC 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

                                          392

                                          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