Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. EXPERIMENTELL: JsonL Datenbank für js-controller

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    EXPERIMENTELL: JsonL Datenbank für js-controller

    This topic has been deleted. Only users with topic management privileges can see it.
    • crunchip
      crunchip Forum Testing Most Active @AlCalzone last edited by crunchip

      @alcalzone sagte in EXPERIMENTELL: JsonL Datenbank für js-controller:

      nicht alle in dieselbe

      haha, du bist lustig, hab doch geschrieben, es wurde eine Datei durchs umwandeln angelegt. Die hab ich auch schon verschickt. Guck mal, ob das was brauchbares ist, wenn nicht, mach ichs nochmal, da ich die Dateien schon wieder rausgelöscht hab

      Ich mach das jetzt nochmal,
      anstatt mit main.js, nehm ich controller.js, das Ergebnis lass ich dir dann zukommen

      AlCalzone 1 Reply Last reply Reply Quote 0
      • AlCalzone
        AlCalzone Developer @crunchip last edited by AlCalzone

        @crunchip sagte in EXPERIMENTELL: JsonL Datenbank für js-controller:

        es wurde eine Datei durchs umwandeln angelegt

        Ja, aber alle Befehle haben die gleiche Datei als Ziel gehabt und ich fürchte jeweils überschrieben. Die von dir gesendete Datei enthält die Auswertung für iobroker.shelly.

        Probiers mal so:

        for file in *-v8.log; do   node --prof-process --preprocess "$file" > "OUT_$file"; done
        

        Das wertet alle aus und schreibt das Ergebnis jeweils in ne eigene Datei, die mit "OUT_" beginnt.

        crunchip 1 Reply Last reply Reply Quote 0
        • crunchip
          crunchip Forum Testing Most Active @AlCalzone last edited by crunchip

          @alcalzone ok, mach ich gleich, allerdings bin ich am Rätseln, ob der Befehl "node --prof ..." das ständige starten des controllers verursacht. Siehe https://forum.iobroker.net/post/581582
          ich habe nämlich, nachdem ich iobroker manuell starte 20 Einträge.
          iobroker wurde um 10:34 beendet, siehe log, 10:39 Befehl node --prof ausgeführt und anschließend iobroker manuell gestartet
          045e996d-4b3b-451b-83b0-bb81fb9af948-grafik.png

          Edit: ok, das umwandeln hat geklappt, hab nun alle einzeln, wenn du mir noch verrätst wo ich sehen kann, welche die für den controller ist? die größte Datei hat 83.8mb

          AlCalzone 1 Reply Last reply Reply Quote 0
          • AlCalzone
            AlCalzone Developer @crunchip last edited by

            @crunchip Pack sie am besten alle in eine ZIP, damit sollte sich die Größe massiv reduzieren, sodass du mir ggf. einfach alle per Mail schicken kannst. Ich will nicht ausschließen, dass der Befehl selbst Probleme verursacht, hab aber gerade keinen Ansatz woran das liegt.

            crunchip 2 Replies Last reply Reply Quote 0
            • crunchip
              crunchip Forum Testing Most Active @AlCalzone last edited by

              @alcalzone ok, mach ich

              1 Reply Last reply Reply Quote 0
              • simatec
                simatec Developer Most Active last edited by

                Die Umstellung auf meinem Testsystem lief problemlos durch. Werde nun das ganze testen und beobachten.

                1 Reply Last reply Reply Quote 0
                • crunchip
                  crunchip Forum Testing Most Active @AlCalzone last edited by

                  @alcalzone bekomms grad nicht gebacken, wie ich die zip Datei versenden könnte, da sie immer noch 32,5mb und zu groß für Mail ist. Muss ich mal schauen oder zur Not teil ich es auf.

                  apollon77 1 Reply Last reply Reply Quote 0
                  • apollon77
                    apollon77 @crunchip last edited by

                    @crunchip Dropbox? Google Drive? und Freigeben?

                    crunchip 1 Reply Last reply Reply Quote 0
                    • AlCalzone
                      AlCalzone Developer last edited by

                      Wir haben ein potentielles Performance-Problem im JS-Controller identifiziert. Das müsste so 1:1 auch die klassische File DB betreffen.

                      crunchip 1 Reply Last reply Reply Quote 0
                      • crunchip
                        crunchip Forum Testing Most Active @apollon77 last edited by

                        @apollon77 hat sich schon geklärt

                        1 Reply Last reply Reply Quote 0
                        • crunchip
                          crunchip Forum Testing Most Active @AlCalzone last edited by

                          @alcalzone ahja, also schon gleich was gefunden? deshalb auch die cpu des js-controllers so hoch?

                          apollon77 1 Reply Last reply Reply Quote 0
                          • apollon77
                            apollon77 @crunchip last edited by

                            @crunchip Jain ... das file hat ein thema gezeigt wo viel Performance drauf geht was man optimieren kann ... aber wie @AlCalzone gesagt hat sollte das identisch die normale File DB betreffen. Also warum es "mit jsonl db plötzlich höher ist" im CPU verbrauch war nichts offensichtliches zu sehen

                            1 Reply Last reply Reply Quote 0
                            • crunchip
                              crunchip Forum Testing Most Active last edited by

                              wegen js-controller neustarts hab ich nun getestet, Problem lag dann wirklich nur an dem "node --prof" Befehl

                              Gesamt iobroker cpu bei über 200% kurz nach dem Neustart, pendelt sich so gerade bei 155% ein

                              [{"command":"iobroker.js-controller","pid":"2181","cpu":82.3,"mem":9.1,"vmem":1095432,"rss":508712,"start":"14:47","time":"6:06"},{"command":"io.javascript.0","pid":"3647","cpu":32.7,"mem":6,"vmem":1165212,"rss":339588,"start":"14:49","time":"1:52"},{"command":"io.admin.0","pid":"2378","cpu":5.1,"mem":3,"vmem":874488,"rss":172184,"start":"14:47","time":"0:22"},{"command":"io.iogo.0","pid":"3212","cpu":10.1,"mem":2.1,"vmem":1933128,"rss":119652,"start":"14:49","time":"0:36"},{"command":"io.simple-api.0","pid":"4952","cpu":2.7,"mem":1.7,"vmem":682268,"rss":96152,"start":"14:50","time":"0:08"},{"command":"io.backitup.0","pid":"2408","cpu":0.7,"mem":1.6,"vmem":663108,"rss":93352,"start":"14:48","time":"0:03"},{"command":"io.influxdb.0","pid":"2969","cpu":8,"mem":1.6,"vmem":663992,"rss":91604,"start":"14:48","time":"0:30"},{"command":"io.iot.0","pid":"3621","cpu":1.3,"mem":1.6,"vmem":794744,"rss":90332,"start":"14:49","time":"0:04"},{"command":"io.socketio.0","pid":"5007","cpu":0.8,"mem":1.5,"vmem":713808,"rss":88456,"start":"14:50","time":"0:02"},{"command":"io.influxdb.2","pid":"2999","cpu":7.5,"mem":1.5,"vmem":655672,"rss":84036,"start":"14:48","time":"0:27"},{"command":"io.influxdb.1","pid":"2984","cpu":2.3,"mem":1.3,"vmem":652268,"rss":78040,"start":"14:48","time":"0:08"},{"command":"io.shelly.0","pid":"4031","cpu":2.1,"mem":1.3,"vmem":648952,"rss":76452,"start":"14:49","time":"0:06"},{"command":"io.shuttercontrol.0","pid":"4060","cpu":1.3,"mem":1.3,"vmem":650464,"rss":74600,"start":"14:50","time":"0:03"},{"command":"io.virtualpowermeter.0","pid":"5521","cpu":3.2,"mem":1.3,"vmem":647368,"rss":73356,"start":"14:50","time":"0:08"},{"command":"io.zigbee.0","pid":"5898","cpu":2.2,"mem":1.3,"vmem":711332,"rss":73116,"start":"14:51","time":"0:04"},{"command":"io.sonoff.0","pid":"5026","cpu":6.7,"mem":1.2,"vmem":642520,"rss":70156,"start":"14:50","time":"0:19"},{"command":"io.linux-control.0","pid":"3662","cpu":4.7,"mem":1.2,"vmem":904212,"rss":69780,"start":"14:49","time":"0:16"},{"command":"io.tr-064.0","pid":"5298","cpu":1.3,"mem":1.2,"vmem":639808,"rss":69224,"start":"14:50","time":"0:03"},{"command":"io.web.0","pid":"5618","cpu":1.5,"mem":1.2,"vmem":644320,"rss":68676,"start":"14:51","time":"0:03"},{"command":"io.unifi.0","pid":"5332","cpu":4.2,"mem":1.1,"vmem":637712,"rss":66624,"start":"14:50","time":"0:10"},{"command":"io.telegram.0","pid":"5074","cpu":2.1,"mem":1.1,"vmem":773524,"rss":66572,"start":"14:50","time":"0:05"},{"command":"io.radar2.0","pid":"3951","cpu":1.3,"mem":1.1,"vmem":902612,"rss":65816,"start":"14:49","time":"0:04"},{"command":"io.telegram.1","pid":"5238","cpu":2,"mem":1.1,"vmem":837916,"rss":65676,"start":"14:50","time":"0:05"},{"command":"io.history.0","pid":"2923","cpu":2,"mem":1.1,"vmem":704220,"rss":63940,"start":"14:48","time":"0:08"},{"command":"io.smartcontrol.0","pid":"4979","cpu":1.2,"mem":1.1,"vmem":637000,"rss":63272,"start":"14:50","time":"0:03"},{"command":"io.mihome.0","pid":"3694","cpu":0.5,"mem":1.1,"vmem":612384,"rss":63212,"start":"14:49","time":"0:01"},{"command":"io.sourceanalytix.0","pid":"5041","cpu":4.3,"mem":1.1,"vmem":628040,"rss":63044,"start":"14:50","time":"0:12"},{"command":"io.fully-tablet-control.0","pid":"2729","cpu":1,"mem":1.1,"vmem":635484,"rss":62720,"start":"14:48","time":"0:04"},{"command":"io.alexa2.0","pid":"2393","cpu":1.1,"mem":1.1,"vmem":883308,"rss":62212,"start":"14:47","time":"0:04"},{"command":"io.pollenflug.0","pid":"3922","cpu":1,"mem":1.1,"vmem":702068,"rss":61896,"start":"14:49","time":"0:03"},{"command":"io.info.0","pid":"3189","cpu":0.7,"mem":1,"vmem":701368,"rss":59348,"start":"14:49","time":"0:02"},{"command":"io.wled.0","pid":"5653","cpu":3.4,"mem":1,"vmem":616556,"rss":59180,"start":"14:51","time":"0:07"},{"command":"io.tankerkoenig.0","pid":"5056","cpu":0.9,"mem":1,"vmem":699740,"rss":58624,"start":"14:50","time":"0:02"},{"command":"io.logparser.0","pid":"3678","cpu":0.9,"mem":1,"vmem":614992,"rss":58512,"start":"14:49","time":"0:03"},{"command":"io.trashschedule.0","pid":"5315","cpu":0.7,"mem":1,"vmem":632632,"rss":57456,"start":"14:50","time":"0:01"},{"command":"io.wiffi-wz.0","pid":"5635","cpu":0.8,"mem":1,"vmem":631548,"rss":57312,"start":"14:51","time":"0:01"},{"command":"io.milight-smart-light.0","pid":"3888","cpu":0.6,"mem":1,"vmem":631256,"rss":56780,"start":"14:49","time":"0:02"},{"command":"io.ble.0","pid":"2430","cpu":0.6,"mem":0.9,"vmem":612420,"rss":55780,"start":"14:48","time":"0:02"},{"command":"io.chromecast.0","pid":"2647","cpu":0.4,"mem":0.9,"vmem":1662116,"rss":55600,"start":"14:48","time":"0:01"},{"command":"io.jarvis.0","pid":"3632","cpu":0.4,"mem":0.9,"vmem":629756,"rss":54608,"start":"14:49","time":"0:01"},{"command":"io.ping.0","pid":"3903","cpu":0.9,"mem":0.9,"vmem":612412,"rss":54352,"start":"14:49","time":"0:02"},{"command":"io.sayit.0","pid":"3969","cpu":0.5,"mem":0.9,"vmem":612308,"rss":53352,"start":"14:49","time":"0:01"},{"command":"io.text2command.0","pid":"5283","cpu":0.5,"mem":0.9,"vmem":612764,"rss":53288,"start":"14:50","time":"0:01"},{"command":"io.vis-inventwo.0","pid":"5554","cpu":0.5,"mem":0.9,"vmem":610072,"rss":53124,"start":"14:51","time":"0:01"},{"command":"io.broadlink2.0","pid":"2453","cpu":0.3,"mem":0.9,"vmem":612204,"rss":53000,"start":"14:48","time":"0:01"},{"command":"io.yeelight-2.0","pid":"5827","cpu":0.7,"mem":0.9,"vmem":628392,"rss":52644,"start":"14:51","time":"0:01"},{"command":"io.seq.0","pid":"3999","cpu":0.7,"mem":0.9,"vmem":611844,"rss":52400,"start":"14:49","time":"0:02"},{"command":"io.email.0","pid":"2699","cpu":0.3,"mem":0.9,"vmem":612620,"rss":51616,"start":"14:48","time":"0:01"}]
                              
                              AlCalzone 1 Reply Last reply Reply Quote 0
                              • AlCalzone
                                AlCalzone Developer @crunchip last edited by

                                @crunchip wie @apollon77 schon geschrieben hat, nichts auffälliges was ich direkt mit jsonl in Verbindung bringen würde. Ich werde später auch noch mal nen test starten wo ich sehr viele Schreibzugriffe generiere, vielleicht sieht man da noch was anderes.

                                1 Reply Last reply Reply Quote 0
                                • Dr. Bakterius
                                  Dr. Bakterius Most Active @AlCalzone last edited by

                                  @alcalzone, @apollon77 Also nachdem bis jetzt die objects.jsonl nicht neu geschrieben wurde, habe ich mal den ioBroker beendet und das File vorher und nachher verglichen.

                                  • vorher: ....... 46.209.486 Byte - 21.201 Zeilen
                                  • nachher: .... 15.569.482 Byte - 10.744 Zeilen

                                  Da müsste doch schon lange das File neu geschrieben worden sein, oder?

                                  Und noch etwas ist mir aufgefallen:

                                  user@iobroker:~$ iobroker upgrade self
                                  No connection to databases possible ...
                                  

                                  Besteht da ein Zusammenhang mit der neuen Datenbank?

                                  apollon77 1 Reply Last reply Reply Quote 0
                                  • apollon77
                                    apollon77 @Dr. Bakterius last edited by

                                    @dr-bakterius naja doppelte grösse ... 10744*2 = 21.488 ... 🙂 Vllt wäre es "bald" gegangen :-))

                                    Den Fehler kann ich bei mir nicht nachstellen ... master/slave oder single host?

                                    Dr. Bakterius 2 Replies Last reply Reply Quote 0
                                    • Dr. Bakterius
                                      Dr. Bakterius Most Active @apollon77 last edited by

                                      @apollon77 Hieß es nicht doppelte Größe und 1.000 Zeilen? Es hat die dreifache Größe und über 10.000 Zeilen mehr!

                                      Ich habe nur einen single Host in einem LXC unter Proxmox. Bis zur Umstellung hatte ich diesen Fehler nie...

                                      AlCalzone 1 Reply Last reply Reply Quote 0
                                      • Dr. Bakterius
                                        Dr. Bakterius Most Active @apollon77 last edited by

                                        @apollon77 sagte in EXPERIMENTELL: JsonL Datenbank für js-controller:

                                        Den Fehler kann ich bei mir nicht nachstellen

                                        Auch bei iobroker update kommt diese Fehlermeldung wenn der ioBroker nicht läuft. Läuft er, kann das update durchgeführt werden. 🤷

                                        apollon77 1 Reply Last reply Reply Quote 0
                                        • apollon77
                                          apollon77 @Dr. Bakterius last edited by

                                          @dr-bakterius Also gerade auf allen meinen 3.2.16er testsystemen (file, redis, jsonl) getestet ... tut überall. Hat der host viel zu tun? versuch mal in der iobroker.json den connectTimeout in der objects sektion hochzusetzen. müsste auf 2000 stehen.

                                          Der Fehler kommt wenn quasi innerhalb von 2s der Server nicht startet, was aber an sich im Normalfall passieren sollte

                                          Dr. Bakterius 1 Reply Last reply Reply Quote 0
                                          • Dr. Bakterius
                                            Dr. Bakterius Most Active @apollon77 last edited by Dr. Bakterius

                                            @apollon77 Ich habe mal auf 20 Sekunden gestellt - dauert aber geht. Dann 5 Sekunden - geht auch. Und danach wieder auf 2 Sekunden. Geht jetzt plötzlich auch wieder. Dauert aber länger als gewöhnlich (wenn der Broker läuft geht es sofort). Der Host läuft auf Sparflamme und hat nicht viel zu tun. Was soll ich sagen...

                                            Bleibt noch das Thema mit der nicht komprimierten objects.jsonl.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            897
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

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